2010-07-24 71 views
1

我使用Dumbo来处理一些Hadoop Streaming作业。我有一堆JSON字典,每个字典都包含一篇文章(多行文本)和一些元数据。我知道Hadoop在提供大文件时性能最好,所以我想将所有JSON字典连接成一个文件。Hadoop Streaming多行输入

问题是,我不知道如何让Hadoop将每个字典/文章作为单独的值读取,而不是在换行符上拆分。我如何告诉Hadoop使用自定义记录分隔符?或者,也许我可以将所有的JSON字典放入一个列表数据结构中,让Hadoop读取它?

或者编码字符串(base64?)会删除所有的新行,普通的“读者”将能够处理它?

回答

1

在连接JSON文件时,您可以用每个字典中的spaecs替换所有换行符。除了作为空白字符外,Newline在JSON中没有任何特殊含义。