Amazon s3 搜寻及;在不下载文件的情况下,计算s3存储桶中特定模式的总实例数
我需要计算s3存储桶中具有匹配模式的行数。 我使用的命令是-:Amazon s3 搜寻及;在不下载文件的情况下,计算s3存储桶中特定模式的总实例数,amazon-s3,boto,s3cmd,Amazon S3,Boto,S3cmd,我需要计算s3存储桶中具有匹配模式的行数。 我使用的命令是-: s3cmd ls --recursive s3://mys3.com/bucket1/ | awk '{print $4}' | grep '.lzo' | xargs -I@ s3cmd get @ - | zgrep 'my-pattern-of-interest-1' | zgrep 'my-pattern-of-interest-2'|wc -l 但这仍然是物理下载文件,是否有一个外部实用程序(例如boto),我仍然可以
s3cmd ls --recursive s3://mys3.com/bucket1/ | awk '{print $4}' | grep '.lzo' | xargs -I@ s3cmd get @ - | zgrep 'my-pattern-of-interest-1' | zgrep 'my-pattern-of-interest-2'|wc -l
但这仍然是物理下载文件,是否有一个外部实用程序(例如boto),我仍然可以这样做,但不需要物理下载文件?我需要彻底扫描4-5个月的数据,因此我希望不惜一切代价避免下载。如果不获取对象的内容,就无法分析S3中对象的内容。您可以启动一两个EC2实例并在那里进行处理,这样就不必将数据复制到本地机器上。那肯定会更快。今后,只要有新文件上传到bucket,您就可以使用AWS Lambda进行处理。但我不知道如何让Lambda处理S3中所有现有的对象