我是hadoop的相对新手,希望更好地了解复制在HDFS中的工作原理。
假设我有一个10节点系统(每个节点1 TB),总容量为10 TB。如果我的复制因子为3,那么每个文件有1个原始副本和3个副本。因此,实质上,只有25%的存储空间是原始数据。所以我的10 TB集群实际上只有2.5 TB的原始(未复制)数据。
如果我的思路正确,请告诉我。
答案 0 :(得分:5)
你的想法有点过时了。复制因子为3表示您拥有3个 总 数据副本。更具体地说,文件的每个块将有3个副本,因此如果您的文件由10个块组成,则10个节点中将有30个总块,或者每个节点大约3个块。
您认为10x1TB群集的容量小于10TB(复制因子为3)是正确的,它实际上具有大约3.3TB的功能容量,由于进行任何处理所需的空间而实际容量略低,持有临时文件等。