hdfs
1、缺点
低延迟数据访问
毫秒级访问
低延迟与高吞吐率
小文件存取
占用namenode大量内存
寻道时间远大于读取时间
并发写入随机修改
一个文件只能有一个写者
支持append
2、namenode
所有的读写请求都是指向namenode
保存所有文件的metadata,包括文件的owership和permissions,文件包含哪些块,block保存在哪些datanode上面
metadata会自动加载到内存中,存储在磁盘文件名为fsimage
block的位置信息不会保存到fsimage
edits记录对metadata的操作记录
3、secondnamenode主要是帮助合并edits,帮助namenode做合并。fs.checkpoint.period=3600就是3600秒合并一次。根据fs.checkpoint.size=64mb就是edits的log大小。
namenode挂掉后,secodenamenode有之前copy过来的editslog,会丢失部分合并期间产生的数据。
4、datanode没有心跳namenode就会copy它上面的block到其他的datanode。副本放置策略,上传是找一台cpu不太忙的磁盘不太满的,第二个副本放在不同机架上,第三个副本与第二个副本相同机架。
5、写操作,namenode负责文件存储的datanode分配和切块,datanode之间自己做复制
6、安全模式下不能对文件做操作,只能看目录。