一种MongoDB数据库数据同步系统及实现方法技术方案

技术编号:22658709 阅读:86 留言:0更新日期:2019-11-28 03:20
本发明专利技术特别涉及一种MongoDB数据库数据同步系统及实现方法。该MongoDB数据库数据同步系统,包括MongoDB抽取组件,CMSP消息中间件和MongoDB入库组件;所述MongoDB抽取组件负责从源MongoDB数据库抽取增量数据,将数据放入到CMSP消息中间件中;所述CMSP消息中间件负责数据消息的缓存和传输;所述MongoDB入库组件负责从CMSP消息中间件获取数据,并将数据插入到目的MongoDB数据库中。该MongoDB数据库数据同步系统及实现方法,不仅实现了MongoDB数据库中集合、全量数据、增量数据的采集和入库,而且结合CMSP消息中间件高效传输,大大的提高了数据的传输效率,在对应用CMSP消息中间件和MongoDB数据库同步要求较高的业务场景里有很广泛的应用前景。

A data synchronization system of mongodb database and its implementation

The invention particularly relates to a mongodb database data synchronization system and an implementation method thereof. The mongodb database data synchronization system includes mongodb extraction component, CMSP message middleware and mongodb storage component; the mongodb extraction component is responsible for extracting incremental data from the source mongodb database and putting the data into the CMSP message middleware; the CMSP message middleware is responsible for the caching and transmission of data messages; the mongodb storage component is responsible for obtaining data from the CMSP message middleware Take the data and insert it into the destination mongodb database. This mongodb database data synchronization system and its implementation method not only realizes the collection, full data, incremental data collection and storage in mongodb database, but also combines with the efficient transmission of the CMSP message middleware, greatly improving the data transmission efficiency, which has a very wide application prospect in the business scenarios where the application of the CMSP Information Middleware and mongodb database synchronization requires high requirements.

【技术实现步骤摘要】
一种MongoDB数据库数据同步系统及实现方法
本专利技术涉及MongoDB数据库
,特别涉及一种MongoDB数据库数据同步系统及实现方法。
技术介绍
随着现代信息技术的快速发展,世界已跨入互联网+大数据时代,人工智能技术的突飞猛进也是近些年来大数据长足发展的结果。信息正深刻改变着人们的思维、生产和生活方式,数据与各行各业的深度融合,必将产生前所未有的社会和商业价值。作为信息时代的重要组成部分,海量数据飞安全与管理也越来越被众多企业和单位重视。同时,企业数据呈现出数量巨大、种类繁多、存放单一等特点,这势必给数据带来了安全隐患。因此,数据的同步与备份显得越来越重要。MongoDB是一种基于分布式文件存储的数据库,是介于关系数据库和非关系数据库之间的产品,具有高性能、易扩展、易部署、易存储、易使用等特点,其主要目标是在键/值存储方式和传统的关系数据库之间架起一座桥梁,集两者优势于一身。MongoDB采用类似json的bson格式存储,可以存储较为复杂的数据类型。此外,由于使用高效的二进制数据存储,MongoDB可以保存任何类型的数据对象,包括如视频、大型文件等。基于以上种种优势,MongoDB表现出了巨大的市场潜力,非常适合网站数据、缓存、商业智能应用等各种场景。MongoDB数据库同步与备份不可或缺。基于上述情况,本专利技术结合CMSP消息中间件传输,基于Oplog方式提出了一种MongoDB数据库数据同步系统及实现方法。CMSP(浪潮云消息服务引擎)是云和大数据时代的一种高性能消息中间件,以云服务和集群方式对外提供高性能和高可靠的消息队列服务,支撑大数据采集、传输、汇聚、交换,大数据实时处理和微服务处理架构。CMSP消息中间件提供了一种高效、可靠、安全、便捷、可弹性扩展的分布式消息服务系统,它的目标是高可靠地在一个云消息服务引擎上可以支持成千上万的应用7*24h不间断并发访问,在廉价PC服务器集群上支持每秒上亿条的消息存取服务,支持随业务量需要动态增加或减少计算资源节点,同时要确保基于云消息服务平台的应用开发和管理简单易使用。
技术实现思路
本专利技术为了弥补现有技术的缺陷,提供了一种简单高效的MongoDB数据库数据同步系统及实现方法。本专利技术是通过如下技术方案实现的:一种MongoDB数据库数据同步系统,其特征在于:包括MongoDB抽取组件,CMSP消息中间件和MongoDB入库组件;所述MongoDB抽取组件负责从源MongoDB数据库抽取增量数据,将数据放入到CMSP消息中间件中;所述CMSP消息中间件负责数据消息的缓存和传输;所述MongoDB入库组件负责从CMSP消息中间件获取数据,并将数据插入到目的MongoDB数据库中。所述MongoDB抽取组件支持两种数据抽取方式同步运行,两种数据抽取方式分别为按集合抽取和按用户抽取。所述按集合抽取是指抽取特定的MongoDB集合,将配置的特定集合从源数据库同步到目的库;所述按用户抽取是指抽取指定用户下所有的集合,将源数据库中该用户下所有的集合数据同步到目的库。该MongoDB数据库数据同步系统的实现方法,基于Oplog方式,利用MongoDB抽取组件抽取源MongoDB数据库的集合信息、全量数据和增量数据;利用CMSP消息中间件将抽取的集合信息、全量数据和增量数据传输到目的MongoDB数据库;利用MongoDB入库组件从CMSP消息中间件获取数据,并将数据插入到目的MongoDB数据库中,即可实现源MongoDB数据库与目的MongoDB数据库数据记录的一致性。所述源MongoDB数据库在副本集或主从模式下工作时,源MongoDB数据库下的Oplog会实时记录操作信息,包括插入、更新和删除信息,因而通过查询Oplog即可获取增量数据。本专利技术MongoDB数据库数据同步系统的实现方法,包括以下步骤:第一步,首先安装MongoDB抽取组件,MongoDB入库组件和CMSP消息中间件;第二步,配置MongoDB抽取组件,配置需要采集的源MongoDB数据库信息,采集的集合信息和配置发送的CMSP消息中间件信息;第三步,配置MongoDB入库组件,配置需要入库的目的MongoDB数据库信息和接收的CMSP消息中间件信息;第四步,配置CMSP消息中间件;第五步,启动CMSP消息中间件,并创建Topic信息;第六步,启动MongoDB入库组件,准备从CMSP消息中间件获取数据,并将数据插入到目的MongoDB数据库中,第七步,最后启动MongoDB抽取组件,抽取源MongoDB数据库的集合信息、全量数据和增量数据,并将抽取的集合信息、全量数据和增量数据经已启动的CMSP消息中间件传输到目的MongoDB数据库,经已启动的MongoDB入库组件将数据插入到目的MongoDB数据库中即可。所述第一步中,在源MongoDB数据库内部署CMSP消息中间件和MongoDB入库组件。所述第一步中,在目的MongoDB数据库内部署MongoDB抽取组件和CMSP消息中间件。本专利技术的有益效果是:该MongoDB数据库数据同步系统及实现方法,不仅实现了MongoDB数据库中集合、全量数据、增量数据的采集和入库,而且结合CMSP消息中间件高效传输,大大的提高了数据的传输效率,在对应用CMSP消息中间件和MongoDB数据库同步要求较高的业务场景里有很广泛的应用前景。附图说明附图1为本专利技术MongoDB数据库数据同步系统及实现方法示意图。具体实施方式为了使本专利技术所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合实施例,对本专利技术进行详细的说明。应当说明的是,此处所描述的具体实施例仅用以解释本专利技术,并不用于限定本专利技术。该MongoDB数据库数据同步系统,包括MongoDB抽取组件,CMSP消息中间件和MongoDB入库组件;所述MongoDB抽取组件负责从源MongoDB数据库抽取增量数据,将数据放入到CMSP消息中间件中;所述CMSP消息中间件负责数据消息的缓存和传输;所述MongoDB入库组件负责从CMSP消息中间件获取数据,并将数据插入到目的MongoDB数据库中。所述MongoDB抽取组件支持两种数据抽取方式同步运行,两种数据抽取方式分别为按集合抽取和按用户抽取。所述按集合抽取是指抽取特定的MongoDB集合,将配置的特定集合从源数据库同步到目的库;所述按用户抽取是指抽取指定用户下所有的集合,将源数据库中该用户下所有的集合数据同步到目的库。该MongoDB数据库数据同步系统的实现方法,基于Oplog方式,利用MongoDB抽取组件抽取源MongoDB数据库的集合信息、全量数据和增量数据;利用CMSP消息中间件将抽取的集合信息、全量数据和增量数据传输到目的MongoDB数据库;利用MongoDB入库组件从CMSP消息中间件获取数据,并将数据插入到目的Mon本文档来自技高网
...

【技术保护点】
1.一种MongoDB数据库数据同步系统,其特征在于:包括MongoDB抽取组件,CMSP消息中间件和MongoDB入库组件;所述MongoDB抽取组件负责从源MongoDB数据库抽取增量数据,将数据放入到CMSP消息中间件中;所述CMSP消息中间件负责数据消息的缓存和传输;所述MongoDB入库组件负责从CMSP消息中间件获取数据,并将数据插入到目的MongoDB数据库中。/n

【技术特征摘要】
1.一种MongoDB数据库数据同步系统,其特征在于:包括MongoDB抽取组件,CMSP消息中间件和MongoDB入库组件;所述MongoDB抽取组件负责从源MongoDB数据库抽取增量数据,将数据放入到CMSP消息中间件中;所述CMSP消息中间件负责数据消息的缓存和传输;所述MongoDB入库组件负责从CMSP消息中间件获取数据,并将数据插入到目的MongoDB数据库中。


2.根据权利要求1所述的MongoDB数据库数据同步系统,其特征在于:所述MongoDB抽取组件支持两种数据抽取方式同步运行,两种数据抽取方式分别为按集合抽取和按用户抽取。


3.根据权利要求2所述的MongoDB数据库数据同步系统,其特征在于:所述按集合抽取是指抽取特定的MongoDB集合,将配置的特定集合从源数据库同步到目的库;所述按用户抽取是指抽取指定用户下所有的集合,将源数据库中该用户下所有的集合数据同步到目的库。


4.一种根据权利要求1~3所述的MongoDB数据库数据同步系统的实现方法,其特征在于:基于Oplog方式,利用MongoDB抽取组件抽取源MongoDB数据库的集合信息、全量数据和增量数据;利用CMSP消息中间件将抽取的集合信息、全量数据和增量数据传输到目的MongoDB数据库;利用MongoDB入库组件从CMSP消息中间件获取数据,并将数据插入到目的MongoDB数据库中,即可实现源MongoDB数据库与目的MongoDB数据库数据记录的一致性。


5.根据权利要求4所述的MongoDB数据库数据同步系统的实现方法,其特征在于:所述源MongoDB数据库在副本集或主从模式下工作...

【专利技术属性】
技术研发人员:李德刚曹景亮李朝铭
申请(专利权)人:浪潮软件集团有限公司
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1