关系模型由关系数据结构、关系操作集合、关系完整性约束三部分组成。
实体关系模型:实体关系模型(Entity-Relationship Model),简称E-R Model,是陈品山(Peter P.S Chen)博士于1976年提出的一套数据库的设计工具,他运用真实世界中事物与关系的观念,来解释数据库中的抽象的数据架构。实体关系模型利用图形的方式(实体-关系图(Entity-Relationship Diagram))来表示数据库的概念设计,有助于设计过程中的构思及沟通讨论。
关系操作:
1)数据查询:
A.选择
B.投影
C.连接
D.并
E.交
F.差
G.除
2)数据操作:
A.增加
B.删除
C.修改
E.查询
完整性约束包括:
1)实体完整性
2)参照完整性
3)用户定义完整性
1)关系型数据库的最大特点就是事物的一致性,为了维护一致性所付出的巨大代价就是读写性能比较差
2)具有固定的表结构,扩展性差
3)数据的持久化需要关系型数据库
非关系型数据库:NoSQL,有时也称作Not Only SQL的缩写,NoSQL不使用SQL作为查询语言。其数据存储可以不需要固定的表格模式,也经常会避免使用SQL的JOIN操作,一般有水平可扩展性的特征。NoSQL的实现具有二个特征:使用硬盘,或者把随机存储器作存储载体。
主要分为一下几类:
1)面向高性能并发读写的Key-Value数据库:Key-Value数据库的主要特点就是具有极高的并发读写性能,Redis,Tokyo Cabinet,Flare就是这类的代表。
2)面向海量数据访问的面向文档数据库:这类数据库的特点是,可以在海量的数据中快速的查询数据。典型代表为MongoDB以及CouchDB。
3)面向可扩展性的分布式数据库:这类数据库想解决的问题就是传统数据库在可扩展性上的缺陷,这类数据库可以适应数据量的增加以及数据结构的变化,Google Appengine的Big Table就是这类的典型代表,并且,BigTable特别适用于Map Reduce处理。
参考:
http://zh.wikipedia.org/wiki/NoSQL
http://zh.wikipedia.org/wiki/%E9%97%9C%E8%81%AF%E5%BC%8F%E8%B3%87%E6%96%99%E5%BA%AB
http://www.sigma.me/2011/06/11/intro-to-nosql.html
版权声明:本文为博主原创文章,未经博主允许不得转载。