CN101051929A - 一种数据网络终端间的数据同步方法 - Google Patents
一种数据网络终端间的数据同步方法 Download PDFInfo
- Publication number
- CN101051929A CN101051929A CN 200610066731 CN200610066731A CN101051929A CN 101051929 A CN101051929 A CN 101051929A CN 200610066731 CN200610066731 CN 200610066731 CN 200610066731 A CN200610066731 A CN 200610066731A CN 101051929 A CN101051929 A CN 101051929A
- Authority
- CN
- China
- Prior art keywords
- data
- local
- buffer
- synchrodata
- far
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据网络终端间的数据同步方法,包括:(1)在本地数据网络终端中为本地数据库创建一个本地输出缓存,在远端数据网络终端中为远端数据库创建一个远端输入缓存;(2)数据同步时,将本地数据库中的待同步数据读取至所述本地输出缓存;(3)从本地输出缓存读取出待同步数据,并经由网络传输至所述远端输入缓存中,并可以进一步删除本地输出缓存中的待同步数据;(4)从远端输入缓存中读取出所述待同步数据,并写入所述远端数据库中,并可以进一步删除远端输入缓存中的待同步数据。使用本发明后,有效的防止了原始表被锁定而影响表的可用性,加快了同步的速度。
Description
技术领域
本发明涉及一种数据同步方法,特别涉及一种数据通信网络终端间的数据同步方法。
背景技术
在通信设备的网络管理中,由于网管终端常常不是一个,地理分布也不在一个地方,所以存在网管配置数据和历史数据的同步问题,目前这个问题一般是通过DCN(Data Communication Network,数据通信网)进行数据传输来达到数据同步的目的。由于网管数据通常记录在数据库中,所以目前的方法是直接使用SQL的“Select”语句从远端数据库中查询希望得到的数据,经过网络传输到达本地,然后使用SQL的“Insert”语句插入到本地数据库中。图1是数据在数据库之间直接同步的示意图,这种方法如图所示,数据库A1中的表A11通过DCN网络直接与数据库B2中的表B22进行同步。
通过网络直接从远端数据库中读写数据的操作比较慢,尤其是在对大数据量数据表操作时速度慢表现更为突出。例如如果有两个需要同步的两个数据库,需要被同步的表如果大小约4G,每次同步2M的数据,网络采用2M的专线,那么一次同步花费的时间将在6个小时以上。同时,更为严重的是,在数据同步的过程中,由于被同步的双方数据库表都被数据库锁锁住,其他所有终端对被同步的双方表的操作将被拒绝,因此严重影响了网管系统的可用性。
发明内容
本发明所解决的技术问题在于提供了一种数据网络终端间的数据同步方法,以达到克服现有技术中,在数据库表数据通过网络同步时,造成表锁定时间长,从而影响网管系统的可用性的问题。
为解决上述技术问题,本发明提供了一种数据网络终端间的数据同步方法,用于实现远端数据库与本地数据库之间的数据同步,本方法包括如下步骤:
(1)在本地数据网络终端中为本地数据库创建一个本地输出缓存,在远端数据网络终端中为远端数据库创建一个远端输入缓存;
(2)数据同步时,将本地数据库中的待同步数据读取至所述本地输出缓存;
(3)从本地输出缓存读取出待同步数据,并经由网络传输至所述远端输入缓存中,并可以进一步删除本地输出缓存中的待同步数据;
(4)从远端输入缓存中读取出所述待同步数据,并写入所述远端数据库中,并可以进一步删除远端输入缓存中的待同步数据。
所述步骤(1)可以进一步包括:在本地数据网络终端中为本地数据库创建一个本地输入缓存,在远端数据网络终端中为远端数据库创建一个远端输出缓存;
所述步骤(2)可以进一步包括:将远端数据库中的待同步数据读取至所述远端输出缓存;
所述步骤(3)可以进一步包括:从远端输出缓存读取出待同步数据,并经由网络传输至所述本地输入缓存中,并可以进一步删除远端输出缓存中的待同步数据;
所述步骤(4)可以进一步包括:从本地输入缓存中读取出所述待同步数据,并写入所述本地数据库中,并可以进一步删除本地输入缓存中的待同步数据。
使用本发明后,由于被同步的数据所在的原始表的操作,全部是本地数据库的操作,不经过网络传输,所以耗时很短,有效的防止了原始表被锁定而影响表的可用性;同时缓存中的数据仅仅是被同步数据,数据量很小,有效的避免了大数据量表间的数据直接同步,从而加快了同步的速度。
附图说明
图1是数据在数据库之间直接同步的示意图;
图2是本发明实施例中所述数据库间同步数据布局示意图;
图3是本发明实施例中所述数据库间同步数据传输时序流程示意图;
图4是本发明实施例中所述网管系统网络结构示意图;
图5是本发明实施例中所述采用数据库表辅助数据同步的数据布局示意图;
图6是本发明实施例中所述采用数据库表辅助数据同步的数据同步实施流程示意图。
具体实施方式
通过网络直接从远端数据库中读写数据的操作比较慢,尤其是在对大数据量数据表操作时速度慢表现更为突出。例如如果有两个需要同步的两个数据库,需要被同步的表数据如果大小约4G,每次同步2M的数据,网络采用2M的专线,那么一次同步花费的时间将在6个小时以上。但是使用2M的专线来传输2M的数据则一般仅仅需要8秒钟左右,因此我们判断同步的瓶颈在终端的数据库数据的读取上。于是本发明实施例提出了一种添加同步缓存来辅助数据同步传输的方法来提高网管系统的可用性。
实施例中,图2是本发明实施例中所述数据库间同步数据布局示意图;首先为数据库A1的待同步表A11增加了输出缓存A110与输入缓存A111,为数据库B2的待同步表B22增加了输出缓存B220与输入缓存A221,各部分之间的连接关系如图所示,图中箭头方向表示数据流向。
缓存可以是数据库表、内存、交换文件等。
图3是本发明实施例中所述数据库间同步数据传输时序流程示意图,如图所示。实施例中添加同步缓存来辅助同步的方法,从表A11到表B22的数据同步流程如下:
步骤301:从数据表A11中读取待同步数据写入输出缓存A110中;
步骤302:从输出缓存A110中读取全部数据后,经过网络传输,再写入输入缓存B221中;
步骤303:从输入缓存B221中读取全部数据后,写入数据表B22中;同时删除输出缓存A110中全部数据;
步骤304:删除输入缓存B221中全部数据;
从表B22到表A11的数据同步过程与上述步骤除方向相反外其余相同。
图4是本发明实施例的网管系统网络结构示意图,如图所示,网络中包括:服务器401及其操作终端403、服务器402及其操作终端404、网管系统控制机405。
图5是本发明实施例中所述采用数据库表辅助数据同步的数据布局示意图,如图所示,数据库A和数据库B分别位于图4中DCN两端的服务器401和服务器402上,设需同步传输的表A和表B是网管的配置数据或历史数据。当网管网络使用主副站备份系统,主站和副站间要求历史15分钟数据同步时,配置如下:
数据库系统:Microsoft SQL Server 2000;
数据表容量:3个月,约4G字节;
同步网络:2M专线;
同步要求:每小时双向同步一次,每次数据大约2M。
当使用如图1所示的原始的数据表间直接数据同步的方法时,发现随着表中数据的大小而逐渐减慢,到后期每次同步需要6个小时,按1个小时同步一次的需求不可能完成。同时同步过程中表被锁定,网管界面上无法查询历史15分钟性能。
图2是本发明实施例中所述数据库间同步数据布局示意图,首先按图2所示,对数据布局为:
数据库A1的待同步表A11增加了输出缓存A110与输入缓存A111,数据库B2的待同步表B22增加了输出缓存B220与输入缓存A221,各部分之间的连接关系如图所示,图中箭头方向表示数据流向。缓存可以是数据库表,内存,交换文件等。
图5是本发明实施例中采用数据库表辅助数据同步的数据布局示意图,图5中,我们在网管系统中采用数据库表这一实施方式来说明,用以表现辅助同步数据的实施。我们使用4个辅助表A0、A1、B0、B1分别代替图2缓存中的A110、A111、B220、B221,各部分之间的连接关系如图5所示,图中箭头方向表示数据流向。辅助表是使用同表A或表B相同结构创建的空表。而同步数据传输的流程同图3实施例所示。
图6是本发明实施例中所述采用数据库表辅助数据同步的数据同步实施流程示意图,本实施例是在采用图5所示的使用数据库表作为缓存的基础上的同步传输数据的。如图所示,实施例实施流程为:
步骤601:从数据表A中读取待同步数据写入辅助表A0中;
步骤602:从辅助表A0中读取全部数据后,经过网络传输,再写入辅助表B1中;
步骤603:从辅助表B1中读取全部数据后,写入数据表B中,删除辅助表A0中全部数据;
步骤604:删除辅助表B1中全部数据。
从数据表B到表A的数据同步过程与上述步骤除方向相反外其余相同。
实施例中我们应用定时执行任务来确保4个阶段的顺利进行,即分配阶段1、阶段2、阶段3、阶段4,它们的时间分别是:1分钟、10分钟、1分钟、1分钟;从中我们可以看出,1个小时内只有13分钟用于同步。而且阶段2的时间大约1分钟即可完成,总耗时有进一步缩短的空间。这样网管不再会出现无法查询历史15分钟性能现象了。
本发明实施例中,由于被同步的数据所在的原始表A和表B的操作全部是本地数据库的操作,不经过网络传输,所以耗时很短,有效的防止了原始表被锁定而影响表的可用性;同时缓存中的数据仅仅是被同步数据,数据量很小,有效的避免了大数据量表间的数据直接同步,从而加快了同步的速度。
Claims (8)
1、一种数据网络终端间的数据同步方法,用于实现远端数据库与本地数据库之间的数据同步,其特征在于,包括如下步骤:
(1)在本地数据网络终端中为本地数据库创建一个本地输出缓存,在远端数据网络终端中为远端数据库创建一个远端输入缓存;
(2)数据同步时,将本地数据库中的待同步数据读取至所述本地输出缓存;
(3)从本地输出缓存读取出待同步数据,并经由网络传输至所述远端输入缓存中;
(4)从远端输入缓存中读取出所述待同步数据,并写入所述远端数据库中。
2、如权利要求1所述的方法,其特征在于,所述步骤(3)中,在将待同步数据传输至远端输入缓存后,进一步包括:删除本地输出缓存中的待同步数据。
3、如权利要求1所述的方法,其特征在于,所述步骤(4)中,在将待同步数据写入远端数据库后,进一步包括:删除远端输入缓存中的待同步数据。
4、如权利要求1所述的方法,其特征在于,所述本地输出缓存、远端输入缓存,由数据终端的数据库表、数据终端内存或交换文件来实现。
5、如权利要求1所述的方法,其特征在于,所述步骤(1)进一步包括:在本地数据网络终端中为本地数据库创建一个本地输入缓存,在远端数据网络终端中为远端数据库创建一个远端输出缓存;
所述步骤(2)进一步包括:将远端数据库中的待同步数据读取至所述远端输出缓存;
所述步骤(3)进一步包括:从远端输出缓存读取出待同步数据,并经由网络传输至所述本地输入缓存中;
所述步骤(4)进一步包括:从本地输入缓存中读取出所述待同步数据,并写入所述本地数据库中。
6、如权利要求5所述的方法,其特征在于,所述步骤(3)中,在将待同步数据传输至本地输入缓存后,进一步包括:删除远端输出缓存中的待同步数据。
7、如权利要求5所述的方法,其特征在于,所述步骤(4)中,在将待同步数据写入本地数据库后,进一步包括:删除本地输入缓存中的待同步数据。
8、如权利要求5所述的方法,其特征在于,所述本地输入缓存、远端输出缓存,由数据终端的数据库表、数据终端内存或交换文件来实现。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200610066731 CN101051929A (zh) | 2006-04-05 | 2006-04-05 | 一种数据网络终端间的数据同步方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200610066731 CN101051929A (zh) | 2006-04-05 | 2006-04-05 | 一种数据网络终端间的数据同步方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101051929A true CN101051929A (zh) | 2007-10-10 |
Family
ID=38783140
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200610066731 Pending CN101051929A (zh) | 2006-04-05 | 2006-04-05 | 一种数据网络终端间的数据同步方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101051929A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101895568A (zh) * | 2010-06-25 | 2010-11-24 | 中兴通讯股份有限公司 | 一种同步数据清理的方法和系统 |
CN102609333A (zh) * | 2011-11-25 | 2012-07-25 | 无锡华御信息技术有限公司 | 一种加密环境中保证文件备份完整性的系统及方法 |
CN101414327B (zh) * | 2007-10-15 | 2012-09-12 | 北京瑞星信息技术有限公司 | 文件保护的方法 |
CN102694688A (zh) * | 2012-06-07 | 2012-09-26 | 浪潮电子信息产业股份有限公司 | 一种集群存储系统内部的管理日志双向同步方法 |
CN104320438A (zh) * | 2014-10-08 | 2015-01-28 | 成都交大许继电气有限责任公司 | 牵引供电运营管理系统高可靠性数据传输系统及传输方法 |
CN104750869A (zh) * | 2015-04-20 | 2015-07-01 | 安一恒通(北京)科技有限公司 | 文件管理方法和装置 |
CN106445467A (zh) * | 2016-09-28 | 2017-02-22 | 广东芬尼克兹节能设备有限公司 | 一种操作变量同步方法及系统 |
-
2006
- 2006-04-05 CN CN 200610066731 patent/CN101051929A/zh active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101414327B (zh) * | 2007-10-15 | 2012-09-12 | 北京瑞星信息技术有限公司 | 文件保护的方法 |
CN101895568A (zh) * | 2010-06-25 | 2010-11-24 | 中兴通讯股份有限公司 | 一种同步数据清理的方法和系统 |
CN101895568B (zh) * | 2010-06-25 | 2014-03-12 | 中兴通讯股份有限公司 | 一种同步数据清理的方法和系统 |
CN102609333A (zh) * | 2011-11-25 | 2012-07-25 | 无锡华御信息技术有限公司 | 一种加密环境中保证文件备份完整性的系统及方法 |
CN102694688A (zh) * | 2012-06-07 | 2012-09-26 | 浪潮电子信息产业股份有限公司 | 一种集群存储系统内部的管理日志双向同步方法 |
CN104320438A (zh) * | 2014-10-08 | 2015-01-28 | 成都交大许继电气有限责任公司 | 牵引供电运营管理系统高可靠性数据传输系统及传输方法 |
CN104320438B (zh) * | 2014-10-08 | 2018-11-13 | 成都交大许继电气有限责任公司 | 牵引供电运营管理系统的高可靠性数据传输系统 |
CN104750869A (zh) * | 2015-04-20 | 2015-07-01 | 安一恒通(北京)科技有限公司 | 文件管理方法和装置 |
CN106445467A (zh) * | 2016-09-28 | 2017-02-22 | 广东芬尼克兹节能设备有限公司 | 一种操作变量同步方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101051929A (zh) | 一种数据网络终端间的数据同步方法 | |
CN1292370C (zh) | 从源系统复制信息到目标系统的方法 | |
US10055224B2 (en) | Reconfigurable hardware structures for functional pipelining of on-chip special purpose functions | |
US7058783B2 (en) | Method and mechanism for on-line data compression and in-place updates | |
US7640354B2 (en) | Scalable differential compression of network data | |
US6928526B1 (en) | Efficient data storage system | |
CN101656751A (zh) | 加速上传与下载文件的方法及其系统 | |
CN1276361C (zh) | 一种嵌入式系统内存管理的方法 | |
US20060206669A1 (en) | Efficient data storage system | |
US20110295820A1 (en) | Block-based differencing algorithm | |
CN1489052A (zh) | 多节点文件同步系统及方法 | |
WO2022105585A1 (zh) | 数据存储方法、装置、设备及存储介质 | |
US8392366B2 (en) | Changing number of machines running distributed hyperlink database | |
CN1613060A (zh) | 具有共享存储器的改进结构 | |
WO2004036432A1 (ja) | データベースのアクセラレーター | |
Guo et al. | Distributed join algorithms on multi-CPU clusters with GPUDirect RDMA | |
CN101201769B (zh) | 多设备文件同步系统和方法 | |
CN101420667B (zh) | 一种短信网关处理等待回执消息的方法 | |
CN1682215A (zh) | 数据库同步 | |
CN102360382A (zh) | 一种高速对象并行存储系统目录复制方法 | |
CN1469309A (zh) | 用于管理ic卡之间通讯使用的连接信息的连接信息管理系统 | |
CN1257623C (zh) | 一种数据同步方法 | |
CN1874231A (zh) | 一种文件传送方法 | |
CN101060679A (zh) | 事件插入方法 | |
CN116016554A (zh) | 可配置化的云边实时数据库传输系统和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Open date: 20071010 |