首页 > 代码库 > 主流存储系统的数据模型

主流存储系统的数据模型

主流存储系统的数据模型是这三类:文件模型、关系模型、键值模型。

文件模型

文件模型很常见,基本每个操作系统的的文件子系统都是文件模型。Linux根目录为/,下面挂/home、/usr等目录,目录下面有子目录或文件。Windows是每个分区一个文件系统,下面也是目录树结构。

目前云服务提供商提供的存储服务如Amazon Simple Storeage Service(S3)、Aliyun Open Storage Service(OSS)是对象模型,对象模型是文件模型的一个变种,简化了文件模型的特性,特别是目录层次结构。微软、360、华为好似都有云存储,但本人没用过。

关系模型

关系模型简单理解就是关系数据实现的模式,理论基础是集合论(关系代数),经过几十年的发展已经非常成熟,SQL都是标准化过的。典型特征就是有模式(schema)约束、表关联、索引、事务等。Aliyun有关系型数据库服务(Relational Database Service,简称RDS),Amazon也有这个服务。

表格模型在事务、索引、表关联方面对关系模型的有一定的弱化,同时也弱化了模式,用起来更灵活,更容易存储海量半结构化数据。各种特性介于关系模型和键值模型之间。如Google BigTable、Aliyun开放结构化数据服务(Open Table Service, OTS)。

键值模型

键值模型的每行记录有key和value组成,典型的如Memcached、Redis,一般用于缓存给应用加速,也有激进的直接用Redis做第一级存储。


主流存储系统的数据模型