阿里巴巴飞天大数据架构体系与Hadoop生态系统( 五 )

Client:用户与HDFS的桥梁。主要用于切分用户提交的文件,与NameNode交互,获得文件位置信息。然后直接与DataNode交互,读取和写入数据。

HDFS写入流程(参考的现有文档):

1、用户向Client(客户机)提出请求。例如,需要写入200MB的数据。

2、Client制定计划:将数据按照64MB为块,进行切割;所有的块都保存三份。

3、Client将大文件切分成块(block)。

4、针对第一个块,Client告诉NameNode(主控节点),请帮助我,将64MB的块复制三份。

5、NameNode告诉Client三个DataNode(数据节点)的地址,并且将它们根据到Client的距离,进行了排序。

6、Client把数据和清单发给第一个DataNode。

7、第一个DataNode将数据复制给第二个DataNode。

8、第二个DataNode将数据复制给第三个DataNode。

推荐阅读