解释:MongoDB可应对 --三高需求

  • High performance-对数据库高并发读写的需求
  • Huge Storage -对海量数据的高效率存储和访问的需求
  • High Scalability &&High Availability --对数据库的高扩展性和高可用性的需求

具体的应用场景:

  • 社交场景:使用mongoDB存储用户信息,以及用户发表的朋友圈信息,通过地理位置索引实现附近的人,地点功能
  • 游戏场景:使用mongoDB存储游戏用户信息,用户的装备,积分登直接内嵌文档形式的存储,方便查询,高效存储和访问
  • 物流场景:使用mongoDB存储订单信息,订单状态在运送过程中会不断更新,以MongoDB 内嵌数组的形式来存储,一次查询就将订单所有的变更读取出来
  • 物联网场景:使用mongoDB存储所有接入的智能设置信息,以及设备汇报的日志信息,并对这些信息进行维度的分析。
  • 视频直播,使用MongoDB存储用户信息,点赞互动信息等。

这些应用场景的共同点:

1:数据量大

2:读写入操作频繁

3:价值较低的数据,对事务性要求不高

什么时候选择mongoDB?

应用不需要事务以及join查询
新应用,需求会变,数据模型无法确定,想快速迭代开发
应用需要2000-3000以上的QPS
应用需要TB或者PB级别的存储
应用发展迅速,需要快速水平扩展
应用需要99.99%高可用
应用需要大量的地理位置查询,文本查询

相对于mysql呢?

mysql上面的需求都可以实现,但是用mongoDB可以成本更低(包括学习,开发,运维的成本)

MongoDB_01的更多相关文章

  1. 自动启动docker container

    当系统启动的时候要启动docker container, 可以利用systemctl来实现 比如拿mongodb为例 创建 /usr/lib/systemd/system/docker_mongodb ...

  2. Mongodb 副本集+分片

    mongodb的分片功能是建立在副本集之上的,所以首先我们尝试着配置副本集. docker启动3个已经安装好mongo的镜像 # docker run -idt --name mongodb_01 m ...

  3. 【Mongodb】数据库备份与还原

    Mongodb 备份与还原 Mongodb 备份与还原 文件快照 快照备份 快照直接还原 从压缩文件还原 复制文件 备份文件 从文件还原 mongodump mongodump备份 mongodump ...

随机推荐

  1. 安卓手机的屏幕规格很多。app开发者在设计User Interface的时候,要怎么处理,才能适应不同屏幕大小?

    在app store下载应用时经常看到:此App已针对iPhone 5 进行优化.可是Android手机屏幕规格这么多,相差这么远.难道要针对每个尺寸都进行一次优化吗?(题主非专业人士,看到2014年 ...

  2. 「NOI2005」维护数列

    「NOI2005」维护数列 传送门 维护过程有点像线段树. 但我们知道线段树的节点并不是实际节点,而平衡树的节点是实际节点. 所以在向上合并信息时要加入根节点信息. 然后节点再删除后编号要回退(栈), ...

  3. Django学习 之后端视图与ajax

    一.Ajax简介 在此之前你一定需要先学习下JavaScript JSON 可见: 前端学习 之 JavaScript 之 JSON 1.简单介绍 我们以前知道的前端向后端发送数据的方式有: GET: ...

  4. Centos7 nginx的目录结构与nginx主配置文件解析

    一.nginx的目录结构 [root@node nginx_116]# ls client_body_temp  conf  fastcgi_temp  html  logs  proxy_temp ...

  5. 设计模式课程 设计模式精讲 7-3 建造者模式源码解析(jdk+guava+spring+mybaties)

    1 源码解析 1.1 jdk解析 1.2 guava解析 1.3 spring解析 1.4 mybaties解析 1 源码解析 1.1 jdk解析 String public StringBuilde ...

  6. 107、Java中String类之判断开头或结尾

    01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...

  7. php中$_REQUEST、$_POST、$_GET的区别和联系小结

    php中$_REQUEST.$_POST.$_GET的区别和联系小结 作者: 字体:[增加 减小] 类型:转载   php中有$_request与$_post.$_get用于接受表单数据,当时他们有何 ...

  8. Groovy轻松入门——通过与Java的比较,迅速掌握Groovy

    转自 :Groovy轻松入门——通过与Java的比较,迅速掌握Groovy (更新于2008.10.18) 在前几篇文章中,我已经向大家介绍了Groovy是什么,学习Groovy的重要性等内容,还不了 ...

  9. 分析一次double强转float的翻车原因(转载)

    https://www.cnblogs.com/CoderAyu/p/11489577.html float只能保证7位有效数字. double d = 8345933; float f = (flo ...

  10. ORACLE 用32進制表示月中的一天

    WHEN 'YMD' THEN             v_year := to_char(SYSDATE, 'Y');             v_month := FN_CONVERT_DECIM ...