HDFS与MapResource笔记

客户端向NN请求上传文件

NN回应可以上传

请求上传块,返回DN

所以后面就比较慢

找最近的服务器进行

64K发到1节点,1节点立刻发给2节点,同时1节点自动开始落盘,这里,3个节点是同时落盘的. 因为缓存是在内存中,而持久化是将数据存到磁盘上.

副本节点选择:

1.安全:放不同机架

2.速率:放同一机架

结合后,机架1放1台 机架2放2台

确保当只需要2台时,有一台在机架2上

客户端是并行读取,但是落盘是顺序落盘的(注意这里是没有隐藏序列号的)

NN 内存和磁盘都有,

一个新文件来保存元数据的变更记录

放入内存中

fsimage元数据

edit 记录

不明白!!!

100W条数据,或者1小时到达,2NN要合并了,Edits会不会停止?

方式: 产生一个最新的空的日志,让2NN把旧的拿走

流程:

1.NN启动 : 加载元数据和日志到内存

2.客户端请求操作

  1. NN更新操作日志

注意元数据是不修改的 修改的只是日志

但是,元数据和修改日志,是一对一的

  1. NN进行操作

  2. 到达条件 滚动

  3. 2NN拿走回滚文件, 更新元数据,加载到内存,

  4. 2NN将新的元数据发送给NN,NN更新元数据

数据块 一个数据块带一个meta文件,meta文件就是数据块的描述信息(数据长度 校验和 时间戳)

注意 当NN启动并且加载到内存后,还不能开,必须先将DN向NN注册,同时上报,以后每6小时都上报所有块信息.

这些操作都是在内存中完成的

这时候内存中: fsi edits 元数据目录 这才是整体NN

NN会监控DN,每三秒连接一次.

三秒未连接会触发超时处理,10分钟+30秒未连接,节点G

MapReduce(已经被淘汰了)

优点:

  • 易编程
  • 高扩展性:直接 加机器
  • 高容错:机器挂了,可以转移到另一个节点 默认可以重试4次
  • 适合PB级以上数据的离线处理: 不方便处理流式数据

分与合

分:按照128M分

合: 按照需求分区

ReduceTask数量取决于分区数量

都是KV的格式

相关推荐
麻雀无能为力几秒前
python自学笔记2 数据类型
开发语言·笔记·python
饕餮争锋8 分钟前
WebMvcConfigurer介绍-笔记
java·笔记·servlet
houliabc24 分钟前
【2025年软考中级】第一章1.5 输入输出技术(外设)
笔记·学习·证书·软考·计算机系统
请你喝好果汁6411 小时前
学习笔记:Conda 环境共享
笔记·学习·conda
代码小将2 小时前
Leetcode76覆盖最小子串
笔记·学习·算法
z35026037062 小时前
dockers笔记
笔记
田梓燊3 小时前
数学复习笔记 15
笔记·线性代数·机器学习
flying robot3 小时前
小结:网页性能优化
笔记
tcoding3 小时前
《Elasticsearch 源码解析与优化实战》笔记
笔记
TJ-周月年4 小时前
2025第三届盘古初赛(计算机部分)
笔记