一、关系型数据库(SQL型)
关系型数据库最典型的存储数据结构是表,由二维表及其之间的譬如主键联系所组成的一个数据组织。
优点:
1、易于维护:都是使用表结构,格式一致;
2、使用方便:SQL语言通用,易于理解,可用于复杂查询;
3、业务深度:支持SQL,可用于一个表以及多个表之间非常复杂的查询。
4、事务支持:支持事务,数据操作可回滚。
5、其他方面:支持存储过程,支持视图,易于组织待查数据等等。
关系型数据库常用于企业业务数据持久化存储。
SQL: 结构化查询语言(Structured Query Language简称SQL),是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。
缺点:
1、读写性能比较差,尤其是海量数据的高效率读写;
2、固定的表结构,灵活度稍欠;
3、高并发读写需求,传统关系型数据库来说,硬盘I/O是一个很大的瓶颈。
二、非关系型数据库(NO-SQL型)
非关系型数据库严格上不是一种数据库,应该是一种数据结构化存储方法的集合,可以是“文档”或者“键值对”等。
优点:
1、格式灵活:存储数据的格式可以是key,value形式、文档形式、图片形式等等,文档形式、图片形式等等,使用灵活,应用场景广泛,而关系型数据库则只支持基础类型。
2、速度快:非关系型数据库目的之一是数据缓存,所以一般使用大容量内存作为主要载体,也可以把数据持久化落地到硬盘存储。
3、高扩展性:当前的各组件,一般支持集群的搭建。
4、成本低:非关系型数据库部署简单,基本都是开源软件。
缺点:
1、非关系型数据库也可以被称为NO-SQL数据库,也就是不提供以SQL的方式查询。
2、各非关系型数据库的使用方式各自独立,没有统一标准,学习和使用成本较高;
3、数据结构相对复杂,在支持业务分析场景等方面比较欠缺。
非关系型数据库的分类和比较:文档型、key-value型、列式数据库、图形数据库。
根据最新的数据库排名,我们发现主流的数据库还是关系型数据库,非关系型数据库中MongoDB和Redis比较受欢迎 。
总结下来,我们了解了关系型数据库(SQL)和非关系型数据库(NO-SQL)的差异。我们也了解到了,目前,Mysql在开源关系数据库软件中依然保持领头羊地位,而非关系型数据库MongoDB和Reddis依然是对象存储和Key-Value缓存数据的最佳选择。
参考资料:
https://db-engines.com/en/ranking
https://blog.csdn.net/aaronthon/article/details/81714528
请关注微信公众号“运维沙龙”,
或者加QQ群216589280
欢迎大家参与技术讨论。
“运维沙龙”现征集技术文章,
因为会以您的名义发布,所以请您署上您的名字。
(当然您也可以选择匿名)。
也可以带上您的照片和简历,只为更方便分享技术经验。
来稿请邮件发送到:emailtoyou@qq.com,
或者加QQ好友:77810419
谢谢您的支持!技术世界有您真好!
长按二维码、扫码关注微信公众号“运维沙龙”
文章来源于网友投稿、网络转载、自写自撰等,
如果有争议请联系。