关系型和非关系型数据库
关系型(relation model)
定义
–用二维表的形式表示实体和实体间相联系的一种数据模型。
–关系是一个行与列交叉的二维表,每一列都有唯一的列名,表中的每一行代表一条记录,表中的任意两行记录不能完全相同。
优缺点
关系数据库优点:
-
保持数据的一致性(事务处理,最大优势)
-
由于以标准化为前提,数据更新的开销很小(相同的字段基本上都只有一处)
-
可以进行多表Join等复杂查询
关系数据库不足:
-
不擅长处理大量数据的写入处理(2000条上限)
-
不擅长为有数据更新的表做索引或表结构(schema)变更
-
不擅长处理字段不固定时应用(随用随加或者预留字段)
-
不擅长对简单查询需要快速返回结果的处理(其实也效率挺好)
主流的关系型数据库:
Oracle、DB2、SQL Server、Access、MySQL
优缺点
优点:
-
高可扩展性
-
分布式计算
-
-
架构的灵活性,半结构化数据
-
没有复杂的关系
缺点:
-
没有标准化
-
有限的查询功能(到目前为止)
-
最终一致是不直观的程序
NoSQL的分类:
-
键值*(Key--Value*)存储数据库 比如:** Redis
-
列存储数据库 比如:HBase
-
文档型数据库 比如: MongoDb
-
图形(Graph)数据库 比如:Infinite Graph