Hadoop—NN-学习三
来源:互联网 发布:网络教育怎么上课 编辑:程序博客网 时间:2024/05/16 23:01
架构图
写入文件原理:
1、 客户端要存文件,先找namenode,namenode返回信息(查询元数据),如果不存在,就给信息可以存,并分配datanode存block。
2、 客户端收到信息,将数据按照NN的分配分别存入datanode(这里要注意保留副本个数,存副本的方式有两种
第一、客户端写入N个副本全部成功才算成功。
第二、写一份成功就算成功,剩下的两个副本由此datanode1向一个datanode2拷贝,datanode2向datanodeN拷贝,如果其中失败他会向NN汇报,然后NN再指定datanode1或者datanode2向其他datanode拷贝)。
注意:写入副本的时候还要按机架(看架构图)
存储大量的小文件,浪费元数据的空间,效率低。
一个block占150byte,差不多1万条才1条。1千万条才1G。
3、 namenode管理元数据原理
如何解决快速响应?
1、 当一个客户端写入文件时,namenode记录一个log条目(edits log)。
2、 Namenode分配datanode,返回信息。
3、 Client开始向datanode写,当写完一份client向NN发过去信息说我写完了。
4、 NN在内存中写入这次上传抄作的元数据信息。
5、 内存和fsimage是互为镜像的,当editslog满的时候,必须把edits log和fsimage合并。
合并过程:
合并是由SN来操作的。
a、当edits条目达到阈值时,通知SN做checkpoint操作。
b、停止往edits log文件中写数据。
C、SN下载fsimage和edits log。
d、进行合并。
e、上传NN。
f、把新的镜像替换到老的。同时把edits log删掉,并重命名。
默认触发时间(值都可以修改。)
查看文件,
当然这种架构也不是100%,万一checkpiont宕机的时候怎么办?
HA可以解决这个问题。
- Hadoop—NN-学习三
- Pytorch入门学习(三)---- NN包的使用
- DeepLearningToolBox学习——NN(neural network)
- matlab——深度学习NN
- K—NN的学习和实践
- Hadoop NN备份与恢复
- hadoop NN元数据管理机制
- hadoop学习(三)
- k-nn算法学习
- 机器学习:k-NN
- NN学习笔记
- 机器学习-神经网络NN
- 【机器学习】--神经网络(NN)
- PyTorch学习总结(五)——torch.nn
- Hadoop学习(三)——Hive学习1
- TensorFlow学习笔记(三):tf.nn.conv2d是怎样实现卷积的?
- 一步一步学习hadoop(三)
- hadoop学习笔记<三>----HDFS
- 高级PHP应用程序漏洞审核技术
- 双色球、大乐透、3D精选版!祝君好运(Javascript)
- SSH进阶(2)——用Struts拦截器实现登陆限制
- [java04]java大数类
- 加入JavaScript 定时器开发俄罗斯方块模式的2048项目
- Hadoop—NN-学习三
- cl.exe
- STM32F10X USART发送详解,测试无误
- 学习Python语言---If语句
- Ubuntu 程序开机启动设置
- 【吐槽】天赋不够 咖啡来凑
- HDU1087 【DP问题之最大递增子段和问题】
- android 仿QQ空间listview反弹效果
- Your First Apache Shiro Application