为啥使用 Hadoop 处理后数据大小会发生变化?

Posted

技术标签:

【中文标题】为啥使用 Hadoop 处理后数据大小会发生变化?【英文标题】:Why the data size change after a process with Hadoop?为什么使用 Hadoop 处理后数据大小会发生变化? 【发布时间】:2016-10-06 20:25:02 【问题描述】:

例如,当我运行字数统计时,输入大小与输出大小不同。这仅仅是因为计数器还是其他原因?

有什么方法可以预测输出的大小,具体取决于我使用的代码。 任何人都可以向我解释或建议我阅读任何有用的东西..

【问题讨论】:

【参考方案1】:

我相信这一切都取决于你在 reducer 中所做的转换。

让我们以字数统计为例,如果您有一个 1GB 大小的更大文件,当您进行字数统计时,reducer 输出将是文件中的不同单词及其出现。

在这种情况下,很明显,您的输出文件大小会缩小。

如果你再举一个例子,你只是把它写回输出文件而不做任何转换,在这种情况下,你的 reducer 输出大小应该与你的 mapper 输入大小匹配。

我希望它是有意义的,这完全取决于你在减速器中的逻辑。

【讨论】:

以上是关于为啥使用 Hadoop 处理后数据大小会发生变化?的主要内容,如果未能解决你的问题,请参考以下文章