首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Hadoop集群工作

Hadoop集群工作
EN

Stack Overflow用户
提问于 2014-10-31 16:59:09
回答 1查看 65关注 0票数 0

我刚刚开始使用Hadoop。我的问题可能对你来说很愚蠢,但它令人困惑。

我的问题是,如果我有10 TB的数据和10个节点,是否将数据复制到所有节点上,每个节点上有1 TB的数据?

如果是这样的话,我会提交一个单词统计程序。MapReduce代码是否可以在每个节点上运行?如果是,那么是否在映射程序完成后在每个节点上启动缩减程序?

提前感谢

EN

回答 1

Stack Overflow用户

发布于 2014-10-31 17:40:27

欢迎使用Hadoop。

数据分布取决于您的复制因子(hdfs-site.xml中的dfs.replication)。如果因子为1,则表示所有数据在集群内只存储一次。2表示两次,依此类推。因此,如果复制系数为3,10TB的数据将占用群集内30TB的空间。复制系数大于1还意味着同一数据块永远不会在同一台服务器中存储两次,但副本驻留在其他服务器上。

通常,假设服务器是相同的,数据在整个集群中相当均匀地分布。如果由于某种原因,它的分布不够均匀,您可以运行Hadoop均衡器进程来平衡集群。

数据节点旨在使用它们拥有的数据运行映射阶段,以避免数据传输。因此,所有节点都应该参与mapreduce。在复制因子高于1的情况下,我不确定工作是如何分配的,因为数据位于多个位置,但我认为它应该相当均匀地分配。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26670765

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档