标签:ted 可靠性 改变 大数 读写 分块 管理系 缺点 增删查改
解决海量数据的存储问题
需要一种系统来管理多台机器上的文件,这就是分布式文件管理系统。HDFS 只是分布式文件管理系统中的一种。
HDFS(Hadoop Distributed File System),它是一个文件系统,用于存储文件,通过目录树来定位文件;其次,它是分布式的,由很多服务器联合起来实现其功能,集群中的服务器有各自的角色。
HDFS 的使用场景:适合一次写入,多次读出的场景。 一个文件经过创建、写入和关闭之后就不需要改变。
1.高容错性
2.适合处理大数据
3.可以构建在廉价机器上,通过多副本机制,提高可靠性
1.不适合低延时数据访问,比如毫米级的存储数据
2.无法高效的对大量小文件进行存储,适用于快速寻找
寻址时间为传输时间的1%时,为最佳状态
3.不支持并发写入、文件随机修改
NameNode(nn)是Master,管理者。
NameNode下达命令,DataNode执行实际的操作。
并非NameNode的热备。当NameNode挂掉的时候,它并不能马上替换NameNode并提供服务
Client就是客户端
HDFS中的文件在物理上是分块存储(Block),块的大小可以通过配置参数dfs.blocksize
来设置,默认大小在Hadoop2.x/3.x版本中是128M。
128M是上限,如果10K的文件存进去,剩下的空间还可以给其他文件使用。
默认值128M的原因,如果磁盘的传输速率更大,块的大小可以设置的更大
问题:为什么块的大小不能设置太小,也不能设置太大
如果块设置太小,会增加寻址时间。
如果块设置太大,从磁盘传输数据的时间会明显大于定位这个块开始位置所需时间。从磁盘传输数据的时间过长。
总结:HDFS块的大小设置主要取决于磁盘传输速率。
标签:ted 可靠性 改变 大数 读写 分块 管理系 缺点 增删查改
原文地址:https://www.cnblogs.com/rananie/p/14947722.html