关系型数据库:
关系型数据库是指采用
关系模型
来组织数据信息的数据库。其实就是二维表,它是多个二维数组的集合,我们将数据存储在表格中,通过建立表格与表格之间的关系来维护数据间的关系。
优点:
1.容易理解:相对于其他模型(网状、层次)更容易理解,因为二维数组的逻辑更符合逻辑世界的概念。
2.使用方便:统一通过SQL语言,操作数据库方便。
3.易于维护:都是表结构,格式统一。
缺点:
1.为了维护一致性,读写性能差,主要体现在高并发和海量数据的读写。
2.扩展性差,表结构固定。
常见关系型数据库:Mysql、
Oracle、PostgreSQL、SQL Server、Access、Sybase
非关系型数据库:
非关系型数据库是指采用键值对的模型来存储数据。
严格上来说,非关系型数据库不是一种数据库,它只完成数据的记录,不会记录数据与数据之间的关系。NoSQL(Not only SQL)数据库来指代非关系型数据库。
优点:
1.格式灵活:存储格式可以是key-value、文档等格式。
2.性能优越:非关系型数据库可以使用硬盘或者随机存储器作为载体,而关系型数据库只能使用硬盘。
3.成本低:基本都是开源,部署成本快。
缺点:
1.不支持sql,学习和运用成本较高。
2.无事务处理机制,无法回滚。
3.数据结构导致复杂查询不易实现。
常见非关系型数据库:
适用于高并发:Redis、MemcacheDB
适用于海里数据访问:MongoDB、CouchDB
总结:
关系型数据库和非关系型数据库的区别:
1.数据存储方式:非关系型数据库的存储方式是KEY-VALUE的形式、文档等形式,而关系型数据库只支持单一的存储方式。
2.查询效率:关系型数据库存储于磁盘,非关系型数据库存储于缓存,效率比关系型数据库更高。
3.事务:关系型数据库支持事务处理,可进行事务回滚。
4.成本:非关系型数据库基本是开源的,不需要像oracle花费大量的成本购买
仅个人观点,欢迎评论区交流