一次写入多次读取:
即:一个写入者。
缺陷:
1)不能修改,只能追加。(数据已经分块存储,不知道在哪个块)
2)不建议存储小文件(hdfs将大文件分块,默认128M。小文件独占一块。)
hdfs将大文件分块,采用分块存储,使用本地校验,保证数据无损坏。
数据存储:
虚拟磁盘(1)------->(n)元化数据
元化数据(1)------->(1)本地化磁盘映像fsiamge
hdfs结构
client 访问 NameNode ---->DataNodes
SecondaryNameNode是Name的冷备份(帮助合并映像文件和日志信息,不能在NN宕机后自动替换使用,但可以帮助恢复)
HDFS是主从结构
namenode:master节点,管理数据块映射,处理客户端读写请求,配置副本策略,管理目录树(HDFS的名称空间)
secondaryNameNode:分担NN的工作量,合并fsimage和fsedits并发送给NN
dataNode:存储数据,冗余备份,读写操作
fsimage:元数据镜像文件(文件系统的目录树)
fsedits:元数据的操作日志
NameNode(内存存储) = fsimage + fsedits
secondaryNameNode:负责默认定时一小时从namenode上获取fsimage + fsedits来合并,再发送给namenode,减少NN工作量