MapReduce二次排序中遇到的问题,及解决方法
来源:互联网 发布:电脑垃圾清理软件排名 编辑:程序博客网 时间:2024/05/17 06:25
遇到的问题
-mapreduce_shuffle does not exist
-EOF Exception
解决方法
mapreduce_shuffle does not exist
Container launch failed for container_1446452318872_0002_01_000002 : org.apache.hadoop.yarn.exceptions.InvalidAuxServiceException: The auxService:mapreduce_shuffle does not exist at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:526) at org.apache.hadoop.yarn.api.records.impl.pb.SerializedExceptionPBImpl.instantiateException(SerializedExceptionPBImpl.java:152) at org.apache.hadoop.yarn.api.records.impl.pb.SerializedExceptionPBImpl.deSerialize(SerializedExceptionPBImpl.java:106) at org.apache.hadoop.mapreduce.v2.app.launcher.ContainerLauncherImpl$Container.launch(ContainerLauncherImpl.java:155) at org.apache.hadoop.mapreduce.v2.app.launcher.ContainerLauncherImpl$EventProcessor.run(ContainerLauncherImpl.java:369) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745)
在yarn-site.xml配置文件中添加如下配置:
<configuration><!-- Site specific YARN configuration properties --> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.nodemanager.aux-services.mapreduce_shuffle.class</name> <value>org.apache.hadoop.mapred.ShuffleHandler</value> </property></configuration>
EOF Exception
Error: java.lang.RuntimeException: java.io.EOFException at org.apache.hadoop.io.WritableComparator.compare(WritableComparator.java:135) at org.apache.hadoop.mapred.MapTask$MapOutputBuffer.compare(MapTask.java:1245) at org.apache.hadoop.util.QuickSort.fix(QuickSort.java:35) at org.apache.hadoop.util.QuickSort.sortInternal(QuickSort.java:87) at org.apache.hadoop.util.QuickSort.sort(QuickSort.java:63) at org.apache.hadoop.mapred.MapTask$MapOutputBuffer.sortAndSpill(MapTask.java:1575) at org.apache.hadoop.mapred.MapTask$MapOutputBuffer.flush(MapTask.java:1462) at org.apache.hadoop.mapred.MapTask$NewOutputCollector.close(MapTask.java:700) at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:770) at org.apache.hadoop.mapred.MapTask.run(MapTask.java:340) at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:167) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:415) at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1556) at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:162)Caused by: java.io.EOFException at java.io.DataInputStream.readInt(DataInputStream.java:392) at com.wowSpark.secondarySort.NewKey.readFields(NewKey.java:29) at org.apache.hadoop.io.WritableComparator.compare(WritableComparator.java:129) ... 14 more
问题原因:
public class NewKey implements WritableComparable<NewKey> { ... @Override public void readFields(DataInput in) throws IOException { first = in.readInt(); second = in.readInt(); } @Override public void write(DataOutput out) throws IOException { /**原来是这样写的 out.write(first); out.write(second); 因为上面的readFields方法中用的是 in.readInt() 读取四个输入字节并返回一个 int 值。简单的说它要读取4个字节的数据。 如果这里使用 out.write() 将指定字节(参数 b 的八个低位)写入基础输出流。它只写1个字节的数据,因此会导致上面异常 */ out.writeInt(first); out.writeInt(second); }
- 遇到的问题
- 解决方法
- mapreduce_shuffle does not exist
- EOF Exception
0 0
- MapReduce二次排序中遇到的问题,及解决方法
- MapReduce中二次排序
- Mapreduce中value集合的二次排序
- mapreduce的二次排序
- MapReduce的二次排序
- MapReduce 的二次排序
- HorizontalScrollView中遇到的问题及解决方法
- Spring中遇到的问题及解决方法
- mapreduce的二次排序 SecondarySort
- mapreduce的二次排序 SecondarySort
- mapreduce的二次排序 SecondarySort
- mapreduce的二次排序 SecondarySort
- MapReduce的二次排序 SecondarySort
- mapreduce的二次排序 SecondarySort
- mapreduce的二次排序 SecondarySort
- mapreduce的二次排序 SecondarySort
- 基于MapReduce的二次排序
- mapreduce 二次排序后reduce输出中key的变化
- iOS加载图片imageNamed方法还是imageWithContentsOfFile
- 最值得程序猿学习的几个iOS 开源项目
- 12306简单设计
- linux(centos)搭建SVN服务器
- Unbuntu server15.04 Nginx1.8 + tomcat7集群+redis3 Session共享管理配置
- MapReduce二次排序中遇到的问题,及解决方法
- 深入刨析线程池实现原理
- java格式化数字DecimalFormat
- WinAPI: FindWindow、FindWindowEx - 查找窗口
- NetBeans 开发服务器C/C++
- hdu 1874 畅通工程续(最短路spfa邻接表)
- Master选举
- IBM专家集成系统之PureFlex
- 架构师知识体系(2)--什么是架构师