这是用户在 2024-9-11 8:13 为 https://rkk4tk9ldn.feishu.cn/docx/ASPgd2WTKomTj1xF4FqcLCxSnId 保存的双语快照页面,由 沉浸式翻译 提供双语支持。了解如何保存?
输入“/”快速插入

大数据开发面试笔记V6.0

📍
需要1V1简历指导和模拟面试的同学,微信联系我,补差价即可
版本号
变更内容
变更时间
V6.0.1
新增大数据核心源码
2024/03/01
V6.0.2
新增大量面试题图解
2024/03/08
V6.0.3
新增算法刷题篇
2024/03/15
V6.0.4
新增N道Flink高频面试题
2024/03/22
V6.0.5
新增linux面试题以及Python面试题
2024/03/29
V6.0.7
新增计存调优万能吹牛模板
2024/04/03
V6.0.8
全文结构调整和过期题目删减
2024/04/04
一、大数据篇
框架原理
HDFS
1. HDFS的架构 *
HDFS主要包括三个部分,namenode,datanode以及secondary namenode。这里主要讲一下他们的作用:namenode主要负责存储数据的元数据信息,不存储实际的数据块,而datanode就是存储实际的数据块,secondary namenode主要是定期合并FsImage和edits文件(这里可以进行扩展,讲一下为什么有他们的存在?首先namenode存储的元数据信息是会放在内存中,因为会经常进行读写操作,放在磁盘的话效率就太低了,那么这时候就会有一个问题,如果断电了,元数据信息不就丢失了吗?所以也需要将元数据信息存在磁盘上,因此就有了用来备份元数据信息的FsImage文件,那么是不是每次更新元数据信息,都需要操作FsImage文件呢?当然不是,这样效率不就又低了吗,所以我们就引入了edits文件,用来存储对元数据的所有更新操作,并且是顺序写的方式,效率也不会太低,这样,一旦重启namenode,那么首先就会进行FsImage文件和edits文件的合并,形成最新的元数据信息。这里还会有一个问题,但是如果一直向edits文件进行写入数据,这个文件就会变得很大,那么重启的时候恢复元数据就会很卡,所以这里就有了secondary namenode在namenode启动的时候定期来进行fsimage和edits文件的合并,这样在重启的时候就会很快完成元数据的合并)
2. HDFS的读写流程 *
写流程:hadoop fs -put a.txt /user/sl/
首先客户端会向namenode进行请求,然后namenode会检查该文件是否已经存在,如果不存在,就会允许客户端上传文件;
客户端再次向namenode请求第一个block上传到哪几个datanode节点上,假设namenode返回了三个datanode节点;
评论(0)
跳转至首条评论
0