hdfs-note

类似于现有的分布式系统
区别:高容错,低硬件配置
文件系统的流访问


检测错误,自动回复 核心架构目标


适合于批处理而不是用户交互, 大数据集


提供接口来将程序移动到离数据比较近的地方


文件被分为块split block,数据结点执行创建,删除,复制


hdfs 不支持用户直接访问,不支持软硬链接。


复制策略:
Rack Awareness 基于rack
1.简单: 复制品放在唯一的rack。 缺点:需要将数据块传到多个rack上
。。。


一致性(文件系统):
namenode: 利用EditLog来保存文件元数据的变化
           FsImage保存了一个文件blocks的映射对应到文件及其属性
EditLog==>FsImage 截短old EditLog(checkpoint)
Datanode: Blockreport.


健壮性
平衡的方式,当一个数据结点上的磁盘空间低于某个阈值,会自动将数据传送到其他结点
数据真实性,通过一个隐藏checksum来验证数据块的正确性
元数据磁盘错误,FsImage 和 editlog 可能发生错误,通过保存多分拷贝


创建文件时,会将创建的文件缓存在本地磁盘上,当本地磁盘上的缓存到达了一个block size的大小,这是HDFS client才会通知namenode


Replication Pipelining: client flushes the datablock to the first data node |pipe| second node |pipe| third node







你可能感兴趣的:(hdfs-note)