mysql与mongoDB的特点和优劣

首先分析下mysql与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.cnblogs.com/Alan-Jones/p/6781151.html