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

文档序号:1741964 发布日期:2019-11-26 浏览:34次 >En<

阅读说明:本技术 一种MongoDB数据库数据同步系统及实现方法 (A kind of MongoDB database in phase system and implementation method ) 是由 李德刚 曹景亮 李朝铭 于 2019-08-30 设计创作,主要内容包括:本发明特别涉及一种MongoDB数据库数据同步系统及实现方法。该MongoDB数据库数据同步系统,包括MongoDB抽取组件,CMSP消息中间件和MongoDB入库组件;所述MongoDB抽取组件负责从源MongoDB数据库抽取增量数据,将数据放入到CMSP消息中间件中;所述CMSP消息中间件负责数据消息的缓存和传输;所述MongoDB入库组件负责从CMSP消息中间件获取数据,并将数据插入到目的MongoDB数据库中。该MongoDB数据库数据同步系统及实现方法,不仅实现了MongoDB数据库中集合、全量数据、增量数据的采集和入库,而且结合CMSP消息中间件高效传输,大大的提高了数据的传输效率,在对应用CMSP消息中间件和MongoDB数据库同步要求较高的业务场景里有很广泛的应用前景。(The present invention is more particularly directed to a kind of MongoDB database in phase system and implementation methods.The MongoDB database in phase system, including MongoDB extraction assembly, CMSP message-oriented middleware and MongoDB enter library component;The MongoDB extraction assembly is responsible for extracting incremental data from source MongoDB database, places data into CMSP message-oriented middleware;The CMSP message-oriented middleware is responsible for caching and the transmission of data-message;The MongoDB, which enters library component, to be responsible for obtaining data from CMSP message-oriented middleware, and is inserted data into purpose MongoDB database.The MongoDB database in phase system and implementation method, not only realize the acquisition and storage of set, full dose data, incremental data in MongoDB database, and combine CMSP message-oriented middleware high efficiency of transmission, the efficiency of transmission for greatly improving data has very broad application prospect in the business scenario more demanding to application CMSP message-oriented middleware and MongoDB database synchronization.)

一种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消息中间件获取数据,并将数据***到目的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数据库数据同步系统及实现方法,具有以下特点:

1、实现了MongoDB数据库的集合信息同步、全量数据同步以及增量数据的实时同步。

2、提出了两种MongoDB数据同步方式,一是按集合抽取方式,二是按用户抽取方式。

3、只需要在源MongoDB数据库前置机服务器部署MongoDB抽取组件和CMSP消息中间件即可实现数据的采集。

4、只需在目的MongoDB数据库服务器部署MongoDB入库组件和CMSP消息中间件,即可实现采集数据的快速高效入库。

5、借助于CMSP消息中间件进行消息的高效传输,不仅大大的提高了数据的传输效率,还验证了系统的处理效率、处理的准确性等性能指标。

以上所述的实施例,只是本发明具体实施方式的一种,本领域的技术人员在本发明技术方案范围内进行的通常变化和替换都应包含在本发明的保护范围内。

7页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种日志采集系统及其数据传输方法、装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!