想学习大数据方面的知识就避不开hadoop,终于下决心补充一下知识的盲区,听了厦门大学林子雨老师的大数据原理与应用课程(确实是好课,感谢老师!),记录一下自己学习到了HDFS相关知识。
HDFS是hadoop的核心设计之一,解决的是海量数据的存储问题。全程Hadoop Distribute File System,是一个分布式文件系统。
分布式文件呢,就是把文件分布存储到多个计算机节点上,成千上万的计算机节点构成计算机集群。
总体上,HDFS要实现以下的目标:
兼容廉价的硬件设备:目前分布式文件系统所采用的计算机集群,都是有普通硬件构成的,这就大大降低了硬件上的开销
流数据读写:HDFS读取数据都是批量的,一次性读取全部或者说大部分的数据。
大数据集。
简单的文件模式:HDFS存储的文件都是简单模式的,一次写入多次读取,也就是说,不允许用户继续写入、修改文件。
强大的跨平台兼容性。
HDFS特殊的设计,在实现上述优良特征的同时也使自身有一些应用的局限性,主要是:
不适合低延迟数据访问:正如前面讲到的流数据读写,HDFS不满足实时性,不适合随机读取。
无法高效存储大量小文件:后面会讲到HDFS的块,文件以块的形式存储,小文件的存储比较浪费资源
不支持多用户写入及任意修改文件
下面将按以下目录介绍HDFS: