Dream------Hadoop--HDFS的设计
2015-08-25 19:35
302 查看
HDFS是为以流式数据访问模式存储超大文件而设计的文件系统。
流式数据访问
HDFS建立在这样一个思想上:一次写入、多次读取模式是最高效的。一个数据集通常由数据源生成或复制,
接着在此基础上进行各种各样的分析。每个分析至少都会涉及数据集中的大部分数据(设置全部),因此读取整个
数据集的时间比读取第一条记录的延迟更为重要。
商用硬件
Hadoop不需要运行在昂贵并且高可靠性的硬件上。它被设计运行在商用硬件(在各种零售店都能买到的普通硬件)
的集群上,因此至少对于大的集群来说,节点故障的几率还是比较高的。HDFS在面对这种故障时,被设计为能够
继续运行而让用户察觉不到明显的中断。
同时,那些并不适合HDFS的应用也是值得研究的。在目前,HDFS还不太适合用于某些领域,不过日后可能会有所改进。
低延迟数据访问
需要低延迟访问数据在毫秒级范围内的应用并不适合HDFS。HDFS是为达到高数据吞吐量而优化的,这有可能会以延迟为代价。目前,对于低延迟访问,HBase是更好的选择
大量的小文件
namenode节点存储着文件系统的元数据,因此文件数量的限制也由namenode节点的内存量决定。根据经验,每个文件,索引目录以及块占大约150个字节。因此,举例来说,如果有一百万个文件,每个文件占一个块,就至少需要300MB的内存。虽然存储上百万的文件是可行的,十亿或更多的文件就超出目前硬件的能力了。
多用户写入,任意修改文件
HDFS中的文件只有一个写入者,而且写操作总是在文件的末尾。它不支持多个写入者,或是在文件的任意位置修改。
(可能在以后这些会被支持,但他们也相对不那么高效)
相关文章推荐
- Dream------Hadoop--FSDataInputStream和FSDataOutputStream
- hadoop-CDH版环境搭建(一)
- HDFS源码分析(五)-----节点注册与心跳机制
- Hadoop2 namenode HA + 联邦 + Resource Manager HA 实验
- Hadoop2 namenode 联邦 实验
- Hadoop数据迁移 distcp 工具
- Hadoop2 namenode HA 实验
- flume.hadoop.hdfs.频繁滚动小文件问题
- flumeng收集日志并存储到HDFS
- hdfs常用文件命令
- HDFS中的checkpoint( 检查点 )的问题
- Hive over HBase和Hive over HDFS性能比较分析
- Hive over HBase和Hive over HDFS性能比较分析
- idea运行workcount拒绝连接hdfs
- zookeeper-3.4.6格式化问题 hdfs zkfc -formatZk报错
- hdfs中将文件夹下所有.bz2文件进行解压并且合并,然后传到本地
- 部署HDFS
- 回顾从hdfs数据读过程看RPC
- HDFS源码分析(四)-----节点Decommission机制
- HDFS文件系统的优缺点