我们在建设网站,APP,软件系统时需要选择合适的数据库来存储数据,以便后期使用、访问、搜索和管理数据内容。MongoDB和MySQL是目前比较流行的开源数据库管理系统,那么它们的主要区别是什么?该如何选择?下面一起来了解下。
mangoDB与MYSQL都是开源的数据库,但是mysql是传统的关系型数据库,mangdb则是非关系型数据库,是一种NoSQL的数据库,两种数据库类型各自都有各自的优缺点。
非关系型数据库强调的是数据最终一致性
数据存储方式不同
扩展方式不同
对事务性的支持不同
关系数据库优点:
易于维护:都是使用表结构,格式一致;
使用方便:SQL语言通用,可用于复杂查询;
复杂操作:支持SQL,可用于一个表以及多个表之间非常复杂的查询。
关系数据库缺点:
读写性能比较差,尤其是海量数据的高效率读写;
固定的表结构,灵活度稍欠;
高并发读写需求,传统关系型数据库来说,硬盘I/O是一个很大的瓶颈。
非关系型数据库优点:
格式灵活:存储数据的格式可以是key,value形式、文档形式、图片形式等等,文档形式、图片形式等等,使用灵活,应用场景广泛,而关系型数据库则只支持基础类型。
速度快:nosql可以使用硬盘或者随机存储器作为载体,而关系型数据库只能使用硬盘;
高扩展性;
成本低:nosql数据库部署简单,基本都是开源软件。
非关系型缺点:
不提供sql支持,学习和使用成本较高;
无事务处理;
数据结构相对复杂,复杂查询方面稍欠。
我把MongoDb和Mysql的区别整理成了表格方便大家了解和学习