我正在使用Hadoop + Cassandra。我使用setInputSplitSize(1000)来不重载映射器(并接收堆内存之外的内容),因为默认情况下它是64K。总而言之,我只有两百万行要处理。实际上,每个拆分应该有大约1000行。
问题是一些映射器仍然接收64K行,我不知道为什么。通常有2-3个映射器,其状态为4000% - 64000%,而不是只有100%。当我检查日志时,我发现处理了40K-64K行。它不是崩溃或内存不足,而是这些2-3个任务在处理过程中开始,并在所有其他进程完成后持续2-3个小时。
这是正常的行为吗?我能做些什么来使split size实体?
提前谢谢你!
发布于 2011-08-12 05:32:38
您使用的是什么版本的Cassandra?如果不是0.7.8或0.8.4,请先尝试升级。
如果您仍然看到此行为,请在https://issues.apache.org/jira/browse/CASSANDRA上创建错误报告。
https://stackoverflow.com/questions/7022860
复制相似问题