位置: 编程技术 - 正文

利用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能安装么)

  • 免抵税额计入什么科目
  • 安徽增值税发票勾选认证流程
  • 管道燃气工程设计方案
  • 进口消费税为什么一定要组价
  • 红字发票需要认证吗之前的发票还有用吗
  • 材料成本差异借贷方向
  • 房地产公司支付工程款账务处理
  • 营改增计算举例
  • 软件开发过程的一般步骤
  • 暂估入库商品用什么科目
  • 已认证抵扣的进项发票,次月开具红字发票信息表,凭证
  • 联通租赁官网
  • 企业无形资产摊销表述不正确
  • 什么发票可以抵税
  • 处理固定资产需要交企业所得税吗
  • 广告公司广告费会计分录
  • 3%征收率的应税服务
  • 企业支付宝税务局能查吗怎么查
  • 银行抵押贷款结清后需要解押吗
  • windows10.0
  • Mac系统怎么设置ftp
  • 应收账款贷方余额怎么在资产负债表中填列
  • 税盘没反应
  • 实收资本不到位后果
  • 存货计划成本法好处
  • 软件远程调用失败是什么意思
  • system进程有什么用
  • thinkphp表单提交
  • php怎么做网页
  • 建筑业总产值和营业收入相等吗?
  • 铁杆茉莉的养殖方法
  • 社保退休金计算方法
  • PHP:pg_connect()的用法_PostgreSQL函数
  • 股份有限公司向股东借款
  • 资产减值损失的借贷方向
  • 工程项目科目如何设置
  • 增值税发票超额后税率
  • 视同销售的行为
  • 小微企业免教育附加
  • vue项目更新后还是老代码
  • php环境搭建apache
  • java对象内存大小计算
  • dedecms安装步骤
  • 多交增值税可以抵扣吗
  • 工程施工二级设哪些明细
  • sql中的row_number
  • sql默认路径在哪里
  • 充电口有烧焦味怎么简单解决
  • 存单丢失了,去哪里挂失
  • 高工资的工资
  • 进口关税免征
  • 分配现金股利如何做会计分录长投
  • 基建结束后该做哪些工作
  • 企业进项构成比例
  • 余利宝收益如何算
  • 单位食堂收费制度
  • 汇算清缴弥补以前年度亏损多少年
  • 纳税人办理逾期申报流程
  • 收到银行利息记什么会计科目
  • 现金日记账需要日清月结吗
  • 记账凭证先写借方还是贷方
  • 物流运输公司的运营盈利模式
  • navicat连接教程
  • 所有符合条件x+5的绝对值加x- 2的绝对值等于七的数x
  • 深入理解mysql主从原理32讲
  • 搜索框打开
  • win8 vmware
  • windows iis配置
  • WindowsPE与WindowsRE有什么区别
  • linux常用命令grep
  • Android自定义对话框
  • 不得不佩服自己的搞笑说说
  • 读取fasta文件
  • unity 角色控制器设置isTrigger问题
  • android中的webview
  • python第九套答案
  • vue中怎么引入css
  • 从零基础开始学
  • ubuntu创建虚拟网卡
  • unity怎么写接口
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设