马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
什么是 Chang Stream
Change Stream指数据的厘革事故流,MongoDB从3.6 版本开始提供订阅数据变动的 功能。
Change Stream 是 MongoDB 用于实现变动追踪的办理方案,雷同于关系 数据库的触发器,但原理不完全雷同:
Change Stream 的实现原理
Change Stream 是基于 oplog 实现的,提供推送及时增量的推送 功能。它在 oplog 上开启一个 tailable cursor 来追踪全部复制集上的变动操纵,终极调用应用中界说的回调函数。
被追踪的变动事故重要包罗:
- insert/update/delete:插入、更新、删除;
- drop:聚集被删除;
- rename:聚集被重定名;
- dropDatabase:数据库被删除;
- invalidate:drop/rename/dropDatabase 将导致 invalidate 被触发, 并关闭 change stream;
假如只对某些范例的变动事故感爱好,可以使用使用聚合管道的过滤步调过滤事故:
- var cs = db.user.watch([{
- $match:{operationType:{$in:["insert","delete"]}}
- }])
复制代码Change Stream会接纳 "readConcern:ma
|