我有一个字典文件,这是非常类似于一个实际的字典。也就是说,它存储单词和每个单词的索引。字数相当多,比如说200万字。我有另一个文件,其中存储了一堆文件的顶部单词。也就是说,第二个文件中的每一行都有一个引用文档(文档名)的键,后跟10个值,这些值是该文档中单词的索引。我想有效地合并这两个文件,以便使用hadoop为每个文档获取最重要的单词。
一个简单的解决方案是将单词的索引作为键输出到Map器中,值可以是文档名或实际单词。但因为有很多词,减速机的数量将是巨大的,解决方案可能无法扩展。
另一种解决方案是在mapper中缓冲字典文件,并在mapper中执行join,但它需要在mapper端使用大量内存。有没有更好的解决方案(不用担心内存问题?)
暂无答案!
目前还没有任何答案,快来回答吧!