emr作业停留在67%,没有任何响应

yxyvkwin  于 2021-05-29  发布在  Hadoop
关注(0)|答案(0)|浏览(241)

我编写了一个简单的脚本来分析公共爬网数据。下面是我的Map程序的片段。

src_code = record.payload.read().replace('\r', '').split('\n\n')[1]
soup = BeautifulSoup(src_code.strip(), "lxml")
[x.extract() for x in soup.findAll(['script', 'style'])]
txt = soup.get_text().encode('utf8')
try:
    isReliable, textBytesFound, details = cld2.detect(txt)
except:
    txt = ''.join(x for x in txt if x in string.printable)  # Handle invalid utf-8 chars
    details = cle.detect_txt_lang(txt)

我必须分析warc.gz文件(因为我还必须获得一些头信息)。我已经在本地集群上用与emr相同的hadoop版本测试了我的mapper。它需要40分钟的5个文件(我有缓慢的互联网)。但是当我在emr上运行这个任务时,它在大约41分钟内停留在67%(最后我不得不终止它)。问题出在哪里?上面的脚本读取内容(需要html代码),然后调用一个方法来查找文本语言(如果可能)。是解析器问题吗?或语言方法问题(此方法是cld2库方法)
再详细一点。我在emr上使用了m1.medium(用于测试)。我只给出了一个输入,即一个warc.gz文件。以下是emr作业的日志

2017-01-14 05:00:21,840 INFO org.apache.hadoop.mapreduce.Job (main): Job job_1484542573756_0001 running in uber mode : false
2017-01-14 05:00:21,843 INFO org.apache.hadoop.mapreduce.Job (main):  map 0% reduce 0%
2017-01-14 05:00:47,163 INFO org.apache.hadoop.mapreduce.Job (main):  map 67% reduce 0%

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题