Hadoop3:客户端向HDFS写数据流的流程讲解(较枯燥)

news/2024/9/23 7:54:25/

一、场景描述

我们登陆HDFSweb端,上传一个大文件。

二、流程图

在这里插入图片描述

三、讲解

流程1(Client与NameNode交互)

1、HDFS client创建DistributedFileSystem,通过dfsNameNode进行2次(一来一回4次)对话(request和response),如图所示。
2、第1次请求,NameNode会进行2.1和2.2的检查工作。
3、第2次请求,上传一个BlockNameNode选定的存储数据的节点(DataNode),返回给client

流程2(Client与DataNode交互)

4、HDFS client创建FSDataOutputStream(一种输出流),通过它和集群中选定的存储数据的DataNode交互
5、首先,和选定的DataNode打通数据流通道。
这里,client只需要和最近的节点直接交互,其他副本节点和该节点交互,无需和client交互。这里涉及到最近节点距离计算。
6、开始传输数据给最近节点,这里传输的时候,DataNode会先存一份在内存,同时,用内存的数据,写入磁盘和传输到其他DataNode节点。就是图中第7步
7、所有节点存储完成后,依次返回ack(了解消息队列的,比如kafka,都知道ack是什么吧),告知存储结果。最终由最近节点,反馈给client存储结果。
8、当一个Block传完之后,客户端会再次请求NameNode,再次上传一个Block。重复步骤3-8,直到,完整的文件传输完毕。


http://www.ppmy.cn/news/1462028.html

相关文章

Leetcode—2244. 完成所有任务需要的最少轮数【中等】

2024每日刷题&#xff08;136&#xff09; Leetcode—2244. 完成所有任务需要的最少轮数 实现代码 class Solution { public:int minimumRounds(vector<int>& tasks) {unordered_map<int, int> map;for(int task: tasks) {map[task];}int ans 0;// freq 1 …

阅读笔记——《代码整洁之道》ch2

引言 clean-code ch2阅读笔记 有意义的命名 名副其实 选择体现本意的名称能让人更容易理解和修改代码。 避免误导 怎么能知道该调用哪个函数呢? getActiveAccount(); getActiveAccounts(); getActiveAccountInfo();moneyAmount与money没区别,customerInfo与customer没区别。…

编译gdb:在x86虚拟机上,加载分析arm程序及崩溃

目标 在X86虚拟机上&#xff0c;加载arm程序及崩溃。 最早我想的是编译一个arm版本的&#xff0c;在虚拟机上显然不能使用。 后来同事跟我说&#xff0c;可以编译一个在虚拟机上&#xff0c;分析arm的gdb&#xff0c;我觉得好神奇。事实证明确实可以。 首先不能使用已编译的…

Android Studio kotlin 转 Java

一. 随笔记录 java代码可以转化成kotlin代码&#xff0c;当然 Kotlin 反过来也可以转java 在Android Studio中 可以很方便的操作 AS 环境&#xff1a;Android Studio Iguana | 2023.2.1 二. 操作步骤 1.步骤 顶部Tools ----->Kotlin ------>Show Kotlin Bytecode 步…

图像中的attention及QKV机制解释

简单记录/推荐两篇博客&#xff0c;后续细化写一下&#xff1a; 图像中的各类 attention https://blog.csdn.net/weixin_44505185/article/details/127013204 Cross-attention的直观理解 首先理解&#xff0c;cross-attention 是两个不同向量间的相关计算&#xff0c;一般Q…

联丰策略股票官网分析A股三大指数集体收跌,超3800只股票下跌

查查配今日A股三大指数集体收跌。沪指低开低走,午后A股上了微博热搜。 联丰策略拥有一支由知名互联网公司和国内证券金融机构的行业专家组成的一流运营团队。凭借他们在互联网产品开发和金融风险管理方面的丰富经验,我们的团队致力于为客户提供专业和个性化的证券交易服务。 截…

齐护K210系列教程(二十七)_语音识别

语音识别 1.烧录固件和模型2.语音识别程序2.1训练并识别2.2使用本地文件语音识别 3.课程资源联系我们 1.烧录固件和模型 注&#xff1a;本应用只适用于有麦克风功能的型号&#xff1a;AIstart_pro、AIstart_掌机、AIstart_Mini, 其它型号不支持&#xff01; 机器码生成以及模…

基于国产LoRa的智慧农业解决方案--ASR6601、SX1278

我国《数字乡村发展战略纲要》明确指出“要推进农业数字化转型”&#xff0c;加快推广云计算、大数据、物联网、人工智能在农业生产经营管理中的运用。 然而&#xff0c;目前我国的农业数字化转型还面临着诸多挑战。我国整体农业机械化程度和自动化控制水平仍然较低。由于农田面…