国产成人AV无码一二三区,少女1到100集,国产精品久久久久精品综合紧,巜公妇之诱感肉欲HD在线播放

文章 > MongoDB > mongodb用来做什么

mongodb用来做什么

头像

silencement

2020-01-04 14:16:543269浏览 · 0收藏 · 0评论

一年多一直在使用mongodb,基本上从对mongodb不懂的小白,到现在操作mongodb无任何压力,最近的一个项目在做mongodb副本集的管理,三组机器做一个副本集,大概要管几十台上百台副本集,主要用来自动化发布,构建副本集(我们的mongo副本集部署在docker中),所以在写各种mongo shell的代码实现,说白了就是调用mongo的commands。看到这个问题特来回答一下。

mongodb众所周知不支持事务,所以需要强事务的业务根本不能考虑mongodb。

mongodb的优势就是文档存储:

1. 业务经常变动,需要不时的添加字段,那么mongodb比较适合,关系型数据库添加字段的复杂度也还好

2. 嵌套文档,业务数据比较复杂,适合嵌套文档式存储,那么mongodb非常合适,这个关系型数据库比较难搞,虽然MySQL和pg也有文档存储,但MySQL的不成熟,pg毕竟现在生产中使用还是偏少,个人也不了解,这里不谈。但这不仅仅这一点优势,具体下面会细说。

3. upsert支持,查询速度也不慢

4. 高可用的副本集支持

5. 查询语法非常丰富,嵌套文档查询功能非常强大,不是重度用户可能不能理解

下面说说一个具体的使用事例:

项目的一条数据在10kb左右,如果使用关系型数据库那么需要将这条数据拆分成大概几百条左右,建造多个表,设计较复杂,这种数据大概在一百万条左右,想想拆分后在十几亿的数据量就可怕。打平后的数据什么DB也都可以拿下,只是一百万变十几亿比较恐怖而已。

如果采用MySQL存储,每次查询需要使用外键查询多个表,从这些表中拉取数据,性能肯定要下降很多,比不上只在一个表查询,而且只拉取少两个数量级的数据。查询也还好,业务允许可以对结果做缓存,放到redis里去。

但是重点来了,需求要增量更新部分数据,这时候需要更新多个表,根本没法做到原子性(注意事务不是原子操作),当然也可以使用cas等技术补偿,达到最终一致性。但使用mongodb存储只需要update一条数据,对相应的嵌套文档中内容更新,可以做到原子性,是不是很方便?

具体说说该项目的难点,查询无法使用缓存,可能会很吃惊,但是业务决定了确实做不了,而且增量更新的量达到上万的QPS,如果不能保证原子性想想多么可怕!

所以mongodb在这里帮了大忙,关系型数据库解决不了这个难题。

有人可能要问,mongodb没有事务,上游数据写入也会有问题,你不可能所有数据都存一个表吧?

当然不是的,我们mongodb里的数据是从MySQL中清洗出来存到mongodb中的,mongodb只做单点的业务需求,综合的数据还是在MySQL中。

此项目我们用了上百个副本集,保证系统的高可用,这些副本集配置只要一条shell就搞定,如果用MySQL的主从不知道怎么配(我自己不懂),估计DBA得忙死,而该项目完全不需要也没用到DBA。

说了这么多mongo的优点,也说说他的缺点:

1. 查询优化器和MySQL没法比

2. 不支持reload,只能冷重启,初始化配置的时候比较麻烦

3. 没有事务,不敢存储第一手数据,多用来做备份数据的存储

mongodb可以做很多事情,取决于你脑洞,性能不差,存一些相对不重要的数据,mongodb嵌套文档功能强大,多看看官方文档挖掘挖掘有用信息,每次都能发现惊喜。

希望对你有用!

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

《性爽2》电影| 美女比基尼游泳图片视频| 医生一直揉白带湿漉漉的正常吗| 欧美大片LOGO| 多村野史| 轮流和两个男人一起很容易染病吗 | 黑料| 把腿扒开让我添30分钟| 日日精进久久为功的下一句是| 巨乳童颜| 少女与狗2在线观看免费版高清| 桃色| 免费B站看大片真人电视剧| 国精产品一品二品国精HTC| 妈妈がだけの心に漂う| MACHENIKE| 《火车服务》免费观看| B站夫妻进入高峰期需要多久| 免费看隐藏部位软件| 射手中文网| 免费看片| 两个男人睡一个女人什么心理呢| 女生全身照真实不像网图图片| 美女比基尼游泳图片视频| 把腿扒开让我添30分钟| 免费观看已满十八岁电视剧在线播.... | 扌暴辶鬲的图片GIF| 《父债女偿》在线观看全集| 公交车上萌蒂添的好舒服H漫画| 男生困困进女生困困洞视频| 做完0之后屁股里流了一点血| 家族轮换之共乐的日子最新章节更, | 按摩师把我添高潮了6次| 小扫货几天没弄了这么多| 适合做前看的MV| 一线产区和二线产区的品牌定位| 孤男寡女免费观看高清电视剧狂飙| 妈妈的朋友8| 《出差的日子》叶爱| 男人女人免费观看40集电视剧| 女性真人外生图片大全