对于一个连续转储了太多XML的大文件,Hadoop发行版的理想方法应该是什么?

对于一个连续转储了太多XML的大文件,Hadoop发行版的理想方法应该是什么?,hadoop,mahout,Hadoop,Mahout,如何确保块具有完整的xml而不是共享的BW2块(因为块大小有限制-64MB/128MB等) XMLInputFormat确保将单个xml馈送到映射函数。但是,如果xml是1个块的一半,其余部分在另一个块中,该怎么办?如何解决这个问题?您担心输入还是输出?在输入的情况下,文件是否在不同的块中并不重要。使用hadoop流并提供开始标记和结束标记。因此,当在mapper中读取时,如果没有遇到end标记,RecordReader将读取块。谢谢Venkat。但是名称节点知道下一个数据块在哪里吗?是的,名称

如何确保块具有完整的xml而不是共享的BW2块(因为块大小有限制-64MB/128MB等)


XMLInputFormat确保将单个xml馈送到映射函数。但是,如果xml是1个块的一半,其余部分在另一个块中,该怎么办?如何解决这个问题?

您担心输入还是输出?在输入的情况下,文件是否在不同的块中并不重要。使用hadoop流并提供开始标记和结束标记。因此,当在mapper中读取时,如果没有遇到end标记,RecordReader将读取块。谢谢Venkat。但是名称节点知道下一个数据块在哪里吗?是的,名称节点在内存中存储每个数据块的位置。