大数据
一些笔记
qq_53294028
这个作者很懒,什么都没留下…
展开
-
HDFS读数据流程
文字说明1、使用 HDFS 提供的客户端 Client,向远程的 namenode 发起 RPC 请求;2、namenode 会视情况返回文件的全部 block 列表,对于每个 block,namenode 都会返回有该 block 拷贝的 datanode 地址;3、客户端Client会选取离客户端最近的datanode来读取block;如果客户端本身就是datanode,那么将从本地直接获取数据;4、读取完当前 block 的数据后,关闭当前的 datanode 链接,并为读取下一个 blo..原创 2020-11-25 12:22:23 · 268 阅读 · 0 评论 -
HDFS 写数据流程
步骤文字说明1、使用 HDFS 提供的客户端 Client,向远程的 namenode 发起 RPC 请求2、namenode 会检查要创建的文件是否已经存在,创建者是否有权限进行操作,成功则会为文件创建一个记录,否则会让客户端抛出异常;3、当客户端开始写入文件的时候,客户端会将文件切分成多个 packets,并在内部以数据队列“data queue(数据队列)”的形式管理这些 packets,并向 namenode 申请 datanode列表,获取用来存储 replicas 的合适的 datan..原创 2020-11-25 11:00:24 · 982 阅读 · 0 评论 -
HDFS 副本存放策略 和 负载均衡
副本存放策略将每个文件的数据进行分块存储,每一个数据块又保存有多个副本,这些数据块副本分布在不同的机器节点上。在多数情况下,HDFS 默认的副本系数是 3第一个block副本放在和client所在的node里(如果client不在集群范围内,则这第一个node是随机选取的,系统会尝试不选择那些太满或者太忙的 node)。第二个副本放置在与第一个节点不同的机架中的 node 中(近乎随机选择,系统会尝试不选择那些太满或者太忙的 node)。第三个副本和第二个在同一个机架,随机放在不同的 node 中原创 2020-11-25 10:38:07 · 374 阅读 · 0 评论 -
Shuffle机制原理
Map方法之后,Reduce方法之前的数据处理过程称之为Shuffle。原创 2020-11-25 09:04:02 · 126 阅读 · 0 评论 -
DataNode
1 DataNode工作机制(1)一个数据块在DataNode上以文件形式存储在磁盘上,包括两个文件,一个是数据本身,一个是元数据包括数据块的长度,块数据的校验和,以及时间戳。(2)DataNode启动后向NameNode注册,通过后,周期性(1小时)的向NameNode上报所有的块信息。(3)心跳是每3秒一次,心跳返回结果带有NameNode给该DataNode的命令如复制块数据到另一台机器,或删除某个数据块。如果超过10分钟30秒没有收到某个DataNode的心跳,则认为该节点不可用。(4)集原创 2020-11-21 16:41:55 · 471 阅读 · 1 评论 -
2.NameNode和SecondaryNameNode
1 NN和2NN工作机制思考:NameNode中的元数据是存储在哪里的?首先,我们做个假设,如果存储在NameNode节点的磁盘中,因为经常需要进行随机访问,还有响应客户请求,必然是效率过低。因此,元数据需要存放在内存中。但如果只存在内存中,一旦断电,元数据丢失,整个集群就无法工作了。因此产生在磁盘中备份元数据的FsImage。这样又会带来新的问题,当在内存中的元数据更新时,如果同时更新FsImage,就会导致效率过低,但如果不更新,就会发生一致性问题,一旦NameNode节点断电,就会产生数据丢失。原创 2020-11-21 15:38:16 · 184 阅读 · 0 评论 -
HDFS读写数据流程_尚硅谷
(1)客户端通过Distributed FileSystem向NameNode请求下载文件,NameNode通过查询元数据,找到文件块所在的DataNode地址。(2)挑选一台DataNode(就近原则,然后随机)服务器,请求读取数据。(3)DataNode开始传输数据给客户端(从磁盘里面读取数据输入流,以Packet为单位来做校验)。(4)客户端以Packet为单位接收,先在本地缓存,然后写入目标文件。...原创 2020-11-21 11:31:09 · 109 阅读 · 0 评论