对HDFS概念的理解

HDFS

随着时间的推移,DB的数据量越来越大,当几年之后,历史数据对DB来说是一个庞然大物,如果采用传统的存储是及其耗费空间的,结合实际业务,历史数据的使用除了客诉品需要查跨年的数据其他情况基本不会再用到那些历史数据。此时,我们可以充分利用我们分布式作业系统,将这些历史数据存储在HDFS上。

HDFS,流式数据访问模式(一次写入、多次读取是高效的访问模式。数据集通常由数据源生成或从数据源复制而来,接着长时间在此数据集上进行各类分析。每次分析都会涉及该数据集的大部分数据甚至全部,因此读取整个数据集的时间延迟比读取第一条记录的时间延迟更重要来存储超大文件,运行于商用硬件集群上,是管理网络中跨多台计算机存储的文件系统。

HDFS不适合用在:要求低时间延迟数据访问的应用,存储大量的小文件,多用户写入,任意修改文件。

HDFS 数据块别于普通文件存储的地方:

每个磁盘都有默认的数据块大小,这是磁盘进行数据读/写的最小单位,构建于单个磁盘之上的文件系统通过磁盘块来管理该文件系统中的块,该文件系统块的大小可以是磁盘块的整数倍。HDFS同样也有块的概念,但是大得多,默认为64MB。与单一磁盘上的文件系统相似,HDFS上的文件也被划分为多个分块,作为独立的存储单元。与其他文件系统不同的是,HDFS中小于一个块大小的文件不会占据整个块的空间。

HDFS数据块:HDFS上的文件被划分为块大小的多个分块,作为独立的存储单元,称为数据块,默认大小是64MB。

使用数据块的好处是:

  • 一个文件的大小可以大于网络中任意一个磁盘的容量。(为什么? 这里要注意hdfs中小于一个块的文件是不会占据整个数据块的,,那么把这些数据块进行抽象起来就有了“一个文件的大小可以大于网络中任意一个磁盘的容量”)文件的所有块不需要存储在同一个磁盘上,因此它们可以利用集群上的任意一个磁盘进行存储。(核心)
  • 简化了存储子系统的设计,将存储子系统控制单元设置为块,可简化存储管理,同时元数据就不需要和块一同存储,用一个单独的系统就可以管理这些块的元数据。
  • 数据块适合用于数据备份进而提供数据容错能力和提高可用性。

可参照学习的地址:https://yq.aliyun.com/articles/32300

猜你喜欢

转载自blog.csdn.net/MyySophia/article/details/82316018