Hadoop 处理大文件时pig脚本出错

Hadoop 处理大文件时pig脚本出错,hadoop,mapreduce,apache-pig,Hadoop,Mapreduce,Apache Pig,我正试图根据文件中的一个键列将一个大文件(15GB)拆分为多个小文件 我的代码如下 REGISTER /home/auto/ssachi/piggybank-0.16.0.jar; input_dt = LOAD '/user/ssachi/sywr_sls_ln_ofr_dtl/sywr_sls_ln_ofr_dtl.txt-10' USING PigStorage(','); STORE input_dt into '/user/rahire/sywr_sls_ln_ofr_dtl_spli

我正试图根据文件中的一个键列将一个大文件(15GB)拆分为多个小文件

我的代码如下

REGISTER /home/auto/ssachi/piggybank-0.16.0.jar;
input_dt = LOAD '/user/ssachi/sywr_sls_ln_ofr_dtl/sywr_sls_ln_ofr_dtl.txt-10' USING PigStorage(',');
STORE input_dt into '/user/rahire/sywr_sls_ln_ofr_dtl_split' USING org.apache.pig.piggybank.storage.MultiStorage('/user/rahire/sywr_sls_ln_ofr_dtl_split','4','gz',',');
错误如下所示

ERROR org.apache.pig.tools.grunt.GruntParser - ERROR 6015: During execution, encountered a Hadoop error.
Hadoop版本2.6.0-cdh5.8.2
PIG版本0.12.0-cdh5.8.2

我尝试设置以下参数,假设这是内存问题,但没有帮助

SET mapreduce.map.memory.mb 16000;
SET mapreduce.map.java.opts 14400;
设置了上述参数后,我得到了以下错误

Container exited with a non-zero exit code 1

org.apache.pig.backend.executionengine.ExecException: ERROR 2997: Unable to recreate exception from backed error: AttemptID:attempt_1486048646102_2613_m_000066_3 Info:Exception from container-launch.

你的“关键栏”的基数是多少

如果是1000,那么你会得到错误,因为你的地图绘制者因为OOME而死亡

请务必了解每个映射程序现在维护1000个文件指针和每个文件指针的关联缓冲区,足以占据整个堆

请提供地图绘制人员的日志,以便进一步调查

MapReduce中正在内部调用的多输出。

您使用的是纱线吗?它有多少内存?几天前,我在一个96 GB的文件上运行了Pig是的,我正在使用纱线。warn.app.mapreduce.am.resource.mb 1024好的,看起来不错。我的观点是,您应该打开Thread web UI并检查MapReduce日志我可以在哪里找到Thread web UI的链接?这完全取决于您如何安装Hadoop。您有CDH版本,所以是否使用Cloudera Quickstart VM?