我一直在AWS / EMR中运行流式处理步骤,使用Python编写的映射器和reducer映射Common Crawl中的一些文件以进行情感分析。
我正在从较旧的常见爬网textData格式过渡到较新的warc.gz格式,并且我需要知道如何为EMR输入指定一系列warc.gz文件。
例如:
在较旧的格式中,我可以这样指定textData文件的输入范围:
s3://aws-publicdatasets/common-crawl/parse-output/segment/1341690165636/textData-000[0-9][0-9]
但是新格式如下所示:
第一个文件:
s3://aws-publicdatasets/common-crawl/crawl-data/CC-MAIN-2016-07/segments/1454702039825.90/warc/CC-MAIN-20160205195359-00000-ip-10-236-182-209.ec2.internal.warc.gz
第二个文件:
s3://aws-publicdatasets/common-crawl/crawl-data/CC-MAIN-2016-07/segments/1454702039825.90/warc/CC-MAIN-20160205195359-00001-ip-10-236-182-209.ec2.internal.warc.gz
我将如何指定映射这些warc.gz文件的范围?
最佳答案
我很确定您可以使用以前使用的相同方法。要仅读取两个文件,可以使用:s3://aws-publicdatasets/common-crawl/crawl-data/CC-MAIN-2016-07/segments/1454702039825.90/warc/CC-MAIN-20160205195359-0000[0-1]-ip-10-236-182-209.ec2.internal.warc.gz
同样,由于这些路径比前一个路径更丰富,因此您还有其他方法来指定要处理的数据集。CC-MAIN-2016-07 is CC-MAIN-YYYY-ww
-能够指定一组要处理的年或周。CC-MAIN-20160205195359 is CC-MAIN-YYYYMMDDHHmmss
-您可以选择日期或时间范围。