位置: 编程技术 - 正文

利用MongoDB中oplog机制实现准实时数据的操作监控(mongodb $lookup)

编辑:rootadmin

推荐整理分享利用MongoDB中oplog机制实现准实时数据的操作监控(mongodb $lookup),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mongodb $lookup,mongodb logrotate,mongodb $lookup,mongodb olap,mongodb orm,mongodb ops,mongodb orm,mongodb oplog,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

最近有一个需求是要实时获取到新插入到MongoDB的数据,而插入程序本身已经有一套处理逻辑,所以不方便直接在插入程序里写相关程序,传统的数据库大多自带这种触发器机制,但是Mongo没有相关的函数可以用(也可能我了解的太少了,求纠正),当然还有一点是需要python实现,于是收集整理了一个相应的实现方法。

一、引子

首先可以想到,这种需求其实很像数据库的主从备份机制,从数据库之所以能够同步主库是因为存在某些指标来做控制,我们知道MongoDB虽然没有现成触发器,但是它能够实现主从备份,所以我们就从它的主从备份机制入手。

二、OPLOG

首先,需要以master模式来打开mongod守护,命令行使用?master,或者配置文件增加master键为true。

此时,我们可以在Mongo的系统库local里见到新增的collection——oplog,此时oplog.$main里就会存储进oplog信息,如果此时还有充当从数据库的Mongo存在,就会还有一些slaves的信息,由于我们这里并不是主从同步,所以不存在这些集合。

利用MongoDB中oplog机制实现准实时数据的操作监控(mongodb $lookup)

再来看看oplog结构:

这里需要知道op的几种属性:

从上面的信息可以看出,我们只要不断读取到ts来做对比,然后根据op即可判断当前出现的是什么操作,相当于使用程序实现了一个从数据库的接收端。

三、CODE

在Github上找到了别人的实现方式,不过它的函数库太老旧,所以在他的基础上进行修改。

Github地址: ,实现一个时间的比对并进行相应字段的处理:

循环这个start函数,在all_with_noop这里就可以编写相应的监控处理逻辑。

这样就可以实现一个简易的准实时Mongo数据库操作监控器,下一步就可以配合其他操作来对新入库的程序进行相应处理。

总结

标签: mongodb $lookup

本文链接地址:https://www.jiuchutong.com/biancheng/312638.html 转载请保留说明!

上一篇:MongoDB学习之Text Search文本搜索功能(mongodb document)

下一篇:windows下安装mongodb以及node.js连接mongodb实例(mongodbwin7能安装么)

  • 办理税务登记需要法人身份证原件吗
  • 开票地址一定要写全吗
  • 机票附加的保险有必要买吗
  • 银行存款缴纳所得税费用会计分录
  • 增值税进项税转出所得税调整吗
  • 个人互换住房土地增值税
  • 无发票材料可以入材料账吗
  • 所得税退税未办理可以注销吗?
  • 长期借款产生的利息计入哪个科目
  • 合同中的税费需要交税吗
  • 土地增值税清算利息扣除规定
  • 所得税季度报表营业外收入填哪
  • 税务局拍卖资产
  • 差额征税发票的图片
  • 年底员工聚餐
  • 发生的费用发票会计分录
  • 计提工资是计提当月的还是上个月的
  • 医用酒精出口 需要什么条件
  • 劳务外包收入公式是什么
  • 坏账收回的会计处理方法
  • acer笔记本电脑怎么恢复出厂设置
  • Win10系统cpu性能如何调高 Win10把cpu性能调到极佳的方法
  • 商业承兑汇票如何查询
  • ping命令出现unreachable
  • mac上锁
  • 企业支出的辞退补偿金
  • 残疾人保障金是强制性的吗
  • window102020年最新版本
  • 跨省经营建筑企业税收政策
  • oss对象储存的副本储存原则
  • h5能不能自动播放
  • php获取ipv6地址
  • 又拍云使用教程
  • yolov7训练自己的模型用 flask封装
  • 落日时光
  • 企业预缴所得税怎么算
  • Cookie和Session的区别,各自的使用方法及常用操作
  • c++怎么创建文件夹
  • python连接网络
  • 资产负债表里长期股权投资是什么意思
  • 为什么企业一定要上政企通
  • mysql报错1227
  • 研发人员具备的条件
  • 公司旅游费会计分录
  • 临时工工资由谁发
  • 税务机关如何对个人股东股权财务报表审核
  • 开发成本属于哪一类科目
  • 高速过路费发票图片
  • 去年未分配利润 负数 结转今年
  • 融资方式股权融资
  • 美元转到中国银行入账是人民币吗
  • 员工宿舍的物业费可以抵扣进项税吗
  • 资产减值损失审计程序是什么
  • 批量更新数据库最多多少条
  • Vista和Server08 SP2 RTM-Escrow发放给测试者
  • 事件查看器中"TermService" 服务的性能库问题处理
  • win10系统怎么设置开机密码
  • win7的开始菜单在哪里
  • 怎么给文件夹设置密码保护
  • win7电脑网络慢怎么提升
  • linux系统查看系统信息
  • linux批量杀进程 awk
  • window10玩dnf怎么设置流畅
  • 错误日志项数
  • 创建一个css文件
  • cocos2d-x教程
  • 拥有一个属于自己的空间高中作文
  • jquery删除所有class
  • node.js中的http.request方法使用说明
  • angular创建service
  • 手游云测试工具有哪些
  • python爬取电视剧
  • android的控件有哪些
  • android_sqlite开发入门
  • 税务人员廉洁自律承诺书
  • 国税局定额发票查询
  • 财税公司销售工作好做么
  • 云南省国家税务局网上办税服务厅
  • ca证书免费申请
  • 总公司与分公司签订承包协议
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设