文件系统
文件系统
是操作系统用于组织管理存储设备(磁盘)或分区
上文件信息的方法和数据结构,负责对文件存储设备空间进行组织和分配,并对存入文件进行保护和检索
文件系统是负责管理和存储文件的系统软件,操作系统通过文件系统提供的接口去存取文件,用户通过操作系统访问磁盘上的文件
- 常见的文件系统:FAT16/FAT32、NTFS、HFS、UFS、APFS、XFS、Ext4
一个计算机无法存储海量的文件,通过网络将若干计算机组织起来共同去存储海量的文件,这些组织起来的计算机之间通过网络进行通信
-
文件系统处理能力
: 由一台计算机扩充到多台计算机同时处理 -
文件副本
: 一台计算机挂了还有其他的副本计算机提供数据 -
访问速度
: 每台计算机可以放在不同的地域方便用户就近访问从而提高访问速度
分布式文件系统(Distributed File System)
是若干不同的逻辑磁盘分区或卷标组合在一起而形成的完整的有层次的文件系统
- DFS为分布在网络上任意位置的资源提供一个逻辑上的树形文件系统结构,从而使用户访问分布在网络上的共享文件更加简便
网络文件系统(NFS)
网络文件系统(NFS)是文件系统之上的一个网络抽象,它允许多个用户通过网络共享文件系统,并提供数据集中的优势,来最小化所需的存储空间
- 客户端需要安装映射NFS服务器的驱动器,客户端通过网络访问NFS服务器的硬盘完全透明
NFS文件系统
基于UDP/IP协议
,其实现主要是采用远程过程调用RPC机制,RPC提供了一组与机器、操作系统以及低层传送协议无关的存取远程文件的操作
-
RPC采用了XDR的支持
: XDR是一种与机器无关的数据描述编码协议,以独立于任意机器体系结构的格式对网络传送数据编码和解码,支持在异构系统间的数据传送
分布式文件系统GFS
GoogleFS
运行于廉价的普通硬件上并提供容错功能,用于大型的、分布式的、对大量数据进行访问的应用.可以给大量的用户提供总体性能较高的服务
-
GFS采用主从结构
: 一个GFS集群由一个master和大量的chunkserver组成 - master存储了数据文件的元数据,一个文件被分成了若干块存储在多个chunkserver中
- 用户从master中获取数据元信息,向chunkserver中存储数据
分布式文件系统HDFS
Hadoop Distributed File System
是Hadoop抽象文件系统的一种实现,它是一个高容错性((fault-tolerant))的系统,适合部署在廉价通用的机器上
- 提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序
- HDFS放宽了一部分POSIX约束,这样就可以使用流的形式访问(streaming access)文件系统中的数据
- HDFS的文件分布在集群机器上同时提供副本进行容错及可靠性保证,如客户端写入读取文件的直接操作都是分布在集群各个机器上的,没有单点性能压力
HDFS采用主从结构,一个HDFS集群由一个名称节点和若干数据节点组成
- 名称节点存储数据的元信息,一个完整的数据文件被分成若干块存储在各个数据节点
- 客户端从名称节点获取数据的元信息及数据分块的信息,得到信息后客户端即可从数据块中存储数据
云计算厂家
阿里云对象存储服务OOS(Object Storage Service)是阿里云提供的海量、安全、低成本、高可靠的云存储服务
- 数据设计持久性不低于 99.9999999999%,服务设计可用性即业务连续性不低于99.995%
百度对象存储服务BOS是百度提供的稳定、安全、高效、高可扩展的云存储服务
- 可以将任意数量和形式的非结构化数据存入BOS,并对数据进行管理和处理
- BOS支持标准、低频、冷和归档存储等多种存储类型,满足多场景的存储需求