我有一个关于使用 hadoop 处理小文件的问题。我的文件只有大约 1,000 条左右的记录,但我希望这些记录大致均匀地分布在节点之间。有没有办法做到这一点?我是hadoop的新手,到目前为止,似乎所有的执行都发生在一个节点上,而不是同时发生在多个节点上。让我知道我的问题是否有意义或者我是否需要澄清任何事情。就像我说的,我对 Hadoop 很陌生,但希望能得到一些澄清。谢谢。
问问题
141 次
2 回答
1
使用NLineInputFormat并指定每个映射器要处理的记录数。这样,单个块中的记录将由多个映射器处理。
于 2013-02-12T05:44:18.897 回答
0
另一种选择是将您的一个输入文件拆分为多个输入文件(在一个输入路径目录中)。然后,这些输入文件中的每一个都将能够分布在 hdfs 上,并且映射操作将发生在拥有这些输入拆分的工作机器上。
于 2013-02-15T13:07:37.000 回答