mysql和mongodb的关系区别是什么

mysql和mongodb的关系区别是什么,第1张

1、数据库模型:mysql是关系型数据库,mongodb是非关系型数据库

2、存储方式:mysql不同的存储引擎有不同的存储方式,mongodb为虚拟内存+持久化

3、查询语句:mysql为传统的sql语句,mongodb有独特的自有查询方式

4、架构特点:mysql有常见的单点,m-s、mha、mmm、cluster等架构特点,mongodb可以通过副本集以及分片来实现高可用

5、数据处理方式:mysql不同的引擎有各自的特点,mongodb基于内存,将数据存储在物理内存中,从而达到高速读写

6、成熟度:mysql拥有较为成熟的体系,成熟度较高,mongodb新兴数据库,成熟度较低

数据库模型

mongodb 非关系行 (文档型数据库)提供可扩展的高性能数据存储

mysql 关系行

存储方式

mongodb:虚拟内存 持久化

mysql:不同的引擎不同的存储方式

查询方式

mongodb独特的查询语句

mysql 传统的sql

mongodb与mysql命令对比 传统的关系数据库一般由数据库(database)、表(table)、记录(record)三个层次概念组成,

MongoDB是由数据库(database)、集合(collection)、文档对象(document)三个层次组成。

MongoDB对于关系型数据库里的表,但是集合中没有列、行和关系概念,这体现了模式自由的特点。

a.如果需要将mongodb作为后端db来代替mysql使用,即这里mysql与mongodb

属于平行级别,那么,这样的使用可能有以下几种情况的考量:

(1)mongodb所负责部分以文档形式存储,能够有较好的代码亲和性,json格式的直接写入方便。(如日志之类)

(2)从data

models设计阶段就将原子性考虑于其中,无需事务之类的辅助。开发用如nodejs之类的语言来进行开发,对开发比较方便。

(3)mongodb本身的failover机制,无需使用如MHA之类的方式实现。

这种情况也是不少的,我手上的游戏就是有nodejs+mongodb的,用户总量也是千万级别的,流水什么还不错。

b.将mongodb作为类似redis

,memcache来做缓存db,为mysql提供服务,或是后端日志收集分析。

考虑到mongodb属于nosql型数据库,sql语句与数据结构不如mysql那么亲和

,也会有很多时候将mongodb做为辅助mysql而使用的类redis

memcache

之类的缓存db来使用。

亦或是仅作日志收集分析。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/zaji/6140179.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-16
下一篇2023-03-16

发表评论

登录后才能评论

评论列表(0条)

    保存