MongoDB爱好者
垂直技术交流平台

zydcom的文章

大量的集合为何导致Secondary无法同步?

zydcom评论(0)赞(2)

最近遇到一个user case,因为集合数量太多,导致Secondary节点无法进行initial sync(主备同步的第一步,可理解为从Primary上全量拷贝数据)。 副本集使用wiredtiger存储引擎,一共60,000+集合,平均...

MongoDB World 2016参会全记录

zydcom评论(0)赞(4)

上周和 @叶翔 一起参加了在 纽约举行的MongoDB World 2016,MongoDB作为一个NewSQL数据库越来越受关注,这一点从google趋势、百度指数都可以看出来。 本次会议举办得非常用心,演讲主题丰富,涵盖了MongoDB...

Secondary节点为何阻塞请求近一个小时?

zydcom评论(2)赞(1)

看到Secondary节点上的日志,我的内心的崩溃的,鉴权请求居然耗时2977790ms(约50分钟),经详细统计,这个Secondary节点上,所有16:54之后发起的用户请求,都阻塞到17:54左右才返回,处理时间最长的请求约1个小时。...

MongoDB复制集自适应oplog管理

zydcom评论(1)赞(0)

MongoDB复制集运行过程中,经常可能出现Secondary同步跟不上的情况,主要原因是主备写入速度上有差异,而复制集配置的oplog又太小,这时需要人工介入,向Secondary节点发送resync命令。 上述问题可通过配置更大的opl...

MongoDB writeConcern原理解析

zydcom评论(11)赞(4)

MongoDB支持客户端灵活配置写入策略(writeConcern),以满足不同场景的需求。 db.collection.insert({x: 1}, {writeConcern: {w: 1}}) writeConcern选项 Mongo...

MongoDB Secondary同步慢问题分析(续)

zydcom评论(0)赞(0)

在MongoDB Scondary同步慢问题分析文中介绍了因Primary上写入qps过大,导致Secondary节点的同步无法追上的问题,本文再分享一个case,因oplog的写入被放大,导致同步追不上的问题。 MongoDB用于同步的o...

MongoDB oplog删除策略优化

zydcom评论(0)赞(3)

MongoDB oplog是一个capped collection,创建capped collection时,createCollection可以设置size(最大字节数)和max(最大文档数)的参数,当这个集合的『总大小超过size』或者...

MongoDB Secondary同步慢问题分析

zydcom评论(0)赞(1)

问题背景 最近生产环境出现多次Primary写入QPS太高,导致Seconary的同步无法跟上的问题(Secondary上的最新oplog时间戳比Primary上最旧oplog时间戳小),使得Secondary变成RECOVERING状态,...

MongoDB索引原理

zydcom评论(5)赞(65)

为什么需要索引? 当你抱怨MongoDB集合查询效率低的时候,可能你就需要考虑使用索引了,为了方便后续介绍,先科普下MongoDB里的索引机制(同样适用于其他的数据库比如mysql)。 mongo-9552:PRIMARY> ...

MongoDB Sharded cluster架构原理

zydcom评论(0)赞(3)

为什么需要Sharded cluster? MongoDB目前3大核心优势:『灵活模式』+ 『高可用性』 + 『可扩展性』,通过json文档来实现灵活模式,通过复制集来保证高可用,通过Sharded cluster来保证可扩展性。 当Mon...