关系型数据库,是指采用了关系模型来组织数据的数据库。
关系模型是在1970年由IBM的研究员E.F.Codd博士首先提出的,在之后的几十年中,关系模型的概念得到了充分的发展并逐渐成为主流数据库结构的主流模型。
简单来说,关系模型指的就是二维表格模型,而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。
目前主流的关系型数据库:收费的Oracle、DB2、MSSQL,免费开源的MySql,PostgreSQL等。
优点:
1.支持复杂查询,可以用SQL语句在多个表之间做复杂的数据查询
2.支持事务,保证了ACID
缺点:
1.表中存海量数据查询效率低
2.高并发情况下硬盘IO会出现瓶颈,并发读写性能较差
3.数据库横向扩展困难,无法靠增加硬件和服务节点提高性能和负载能力
4.不适合为有数据变更的表做索引或表结构变更
5.需要花费解析sql的时间
非关系型数据库,MongoDB、Redis、HBase
优点:
1.支持对海量数据的高效存储
2.支持高并发读写
3.数据库有高可用性,高可扩展性
缺点:
1.不能利用SQL做复杂的关联查询
2.不能像关系型数据库一样保证数据一致性