NoSQL存储

NoSQL不仅仅是No SQL,还是Not only SQL,SQL代表传统关系数据库,NoSQL显然是针对传统关系数据库的补充和升级。

NoSQL分类:

(1)Key-value stores键值存储, 保存keys+BLOBs (二进制大对象Binary Large OBjects)
(2)Table-oriented 面向表列, 主要有Google的BigTable和Cassandra.
(3)Document-oriented面向文档, 文本是一种类似XML文档,MongoDB 和 CouchDB
(4)Graph-oriented 面向图论. 如Neo4J

面向文档与面向表列或键值存储的区别:面向列族或键值存储需要定义数据结构(半结构化),面向文档无需结构(非结构化)。

NoSQL与关系数据库的区别:NoSQL绝对不支持Join。noSQL其实否定了关系数据库的第二索引和join。joins导致数据库切分sharding无法实施。见CAP定理。


NoSQL具体产品种类有:
Google: Bigtable Amazon: Dynamo Amazon: SimpleDB Yahoo: HBase Microsoft: Dynomite Facebook: Cassandra LinkedIn: Voldemort

NoSQL内部模式

Distributed Hash Tables (DHT)分布式哈希
Scalable 可伸缩
Partitioned 分区
Fault-tolerant 容错
Decentralized 非集中式
Peer to peer 点对点
Popularized
Node ring 节点环
Consistent Hashing 一致性哈希

猜你喜欢

转载自lysunki.iteye.com/blog/1983163