1)不需要事务及复杂join支持,这是使用mongoDB的前提条件
2)新应用,需求会变,数据模型无法确定 ,想快速迭代开发
3)应用需要2000-3000以上的读写QPS
4)应用需要TB甚至PB级别数据存储
5)应用发展迅速,需要能快速水平扩展
6)应用要求存储的数据不丢失
7)应用需要99.999%高可用
8)应用需要大量的地理位置查询,文本查询
MongoDB已经应用到各个领域,比如游戏、物流、电商、内容管理、社交、物联网、视频直播等
不适用MongoDB的场景:
1)高度事务性系统:例如银行,财务等系统。MongoDB对事物的支持较弱
2)传统的商业智能应用:特定问题的数据分析,多数据实体管理,涉及到复杂的、高度优化的查询方式
3)使用sql方便的时候:数据结构相对固定,使用sql查询统计更加便利的时候