KV 数据库
KV,Key-Value,让人想定Mongo数据库,和JSON数据交换格式。 数据存储,存储的数据主要分两种:结构数据(关系表),非结构数据(大文件,杂数据(模式和内容揉合(HTML))
分布式存储系统
1、分布式文件系统:存储文本,图片,音视频等非结构化数据。如google的GFS/colossus和开源的hdfs。
2、分布式键值系统:存储简单的半结构化数据。NoSql的分布式扩展,只提供基于key的增删改查(CRUD)功能。如Amazon的Dynamo。
3、分布式表格系统:存储复杂的半结构化数据。相较于分布式kv系统,他还支持基于key的范围查找。但相对于关系型数据库,他不支持复杂的操作,如多表关联,嵌套查询。典型的系统如google的bigtable和开源的hbase。
4、分布式数据库:存储结构化数据。分布式的关系型数据库。提供SQL关系查询语言。如:google的spanner和开源的hive。
单机存储引擎
存储系统提供的基本功能包括:增删改查(CRUD==增加(Create)、读取查询(Retrieve)、更新(Update)和删除(Delete))。不同的存储方案根据业务不同侧重点不同,导致存储系统的性能和功能具有一定的差异。
目前主要的单机存储引擎有:
1、哈希存储:hash的CRUD是最快的。但缺点是不支持顺序扫描。bitcask是一个基于hash表结构的存储系