我工作的并行算法,大致具有以下功能:来自内存的对象作为Hadoop/MapReduce的输入?
- 阅读一些文本文档,共10K字。
- 为文本语料库中的每个单词创建一个对象。
- 在所有单词对象(是,O(n))之间创建一个对。并返回最频繁的对。
我想通过创建之间的对并行化3步骤中的第一字1000的对象的拳头机上的其余部分,下一个机器上的第二1000字对象等
我的问题是如何将在第2步中创建的对象传递给Mapper?据我所知,我会需要这个输入文件,因此需要序列化对象(虽然以前没有用过)。有没有直接的方法将对象传递给Mapper?
在此先感谢您的帮助
叶夫根
UPDATE 感谢您阅读之前,我的问题。序列化似乎是解决此问题的最佳方法(请参阅java.io.Serializable)。此外,我发现这个教程很有用,可以将序列化对象中的数据读入hadoop:http://www.cs.brown.edu/~pavlo/hadoop/)。
不以任何方式在这方面的专家,但我不认为有这方面的专家。序列化对象不是很难。 – Nick 2011-02-09 03:35:28