【期末复习】先进数据库技术03&04
NOSQL
1. 诞生背景:网页技术发展,数据处理能力要求大幅上升。
web1.0: read intensive
web2.0: write intensive
解决思路:
·硬件升级
·分布式(关系数据库设计初衷没有考虑cluster)
·sharding
2. NOSQL 特点
·不使用 SQL don’t use SQL
·通常开源 They are generally open-source projects.
·通常被设计运行在 clusters上 Most of them are designed to run on clusters.
·CAP理论 RDBMs used ACID transactions to handle consistency across the whole database. NoSQL resort to other options (CAP theorem).
·存在不是以cluster为导向的 Not all are cluster oriented (Graph DBs)
·不需要schema NoSQL operate without a schema. (schema free)
3. 数据模型
Aggregates(An aggregate is a collection of related objects that we wish to treat as a unit for data manipulation, management and consistency.) Models on NoSQL
·Key-value and Document
·Column-Family Stores
好处:No Distributable Storage
4. 理论基础
CAP:
It is impossible for a web service to provide following three guarantees :
·Consistency: all nodes should see the same data at the same time·Availability: node failures do not prevent survivors from continuing to operate
·Partition-tolerance: the system continues to operate despite arbitrary message loss
A distributed system can satisfy any two of CAP guarantees at the same time but not all three.
BASE