CN105872056B - 一种快速同步计算机集群数据的方法和*** - Google Patents
一种快速同步计算机集群数据的方法和*** Download PDFInfo
- Publication number
- CN105872056B CN105872056B CN201610198149.4A CN201610198149A CN105872056B CN 105872056 B CN105872056 B CN 105872056B CN 201610198149 A CN201610198149 A CN 201610198149A CN 105872056 B CN105872056 B CN 105872056B
- Authority
- CN
- China
- Prior art keywords
- node
- data
- file
- transmission blocks
- data transmission
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 22
- 230000005540 biological transmission Effects 0.000 claims description 65
- 238000002360 preparation method Methods 0.000 claims description 34
- 230000001360 synchronised effect Effects 0.000 claims description 26
- 230000000977 initiatory effect Effects 0.000 claims description 15
- 241001269238 Data Species 0.000 claims description 7
- 230000000694 effects Effects 0.000 claims description 7
- 238000012795 verification Methods 0.000 claims description 3
- 230000003993 interaction Effects 0.000 abstract 1
- MKXZASYAUGDDCJ-NJAFHUGGSA-N dextromethorphan Chemical compound C([C@@H]12)CCC[C@]11CCN(C)[C@H]2CC2=CC=C(OC)C=C21 MKXZASYAUGDDCJ-NJAFHUGGSA-N 0.000 description 6
- 238000010586 diagram Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1044—Group management mechanisms
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开一种快速同步计算机集群数据的方法和***,属于计算机集群管理技术领域;本发明利用集群***中每个节点上都设有数据发送模块和数据接收模块,通过数据发送模块和数据接收模块的相互作用,可以自适应节点间数据同步,通过集群内部的数据读取和调节,保证集群***的数据同步,可广泛的用于计算机集群中。
Description
技术领域
本发明公开一种快速同步计算机集群数据的方法和***,属于计算机集群管理技术领域。
背景技术
随着国内高性能计算的发展,目前在许多大学、研究所、超算中心、企业都部署了小型、中型、甚至是大型的超级计算机。这些超级计算机少则拥有数十个计算节点,多则拥有上万个计算节点。在集群使用过程中,众多的节点之间的数据传输常常出现需要同步的情况,而当前的数据同步方式,比如cp,scp,rsync都是使用主从的模式,即一个数据的提供方和一个数据的接收方的方式。数据的接收方接收并直接覆盖相应的文件,比如cp和scp;或者和发送方数据进行比较,如果发送方的文件时间戳更新,则覆盖接收方的对应文件,否则保留接收方的文件,比如rsync。但是这种模式,从单一源的同步在节点数增多时,时间会线性增加,对于成千上万个节点的集群,其同步的时间开销将难以接受。即如果单纯的把一个节点作为输出方,其他多个节点作为接收方,并行的数据同步并不能加快同步的效率。而本发明提供一种快速同步计算机集群数据的方法和***,可以自适应节点间数据同步,通过集群内部的数据读取和调节,保证集群***的数据同步,可广泛的用于计算机集群中。
发明内容
本发明针对现有技术中的问题,提供一种快速同步计算机集群数据的方法和***,有效的使并行的数据同步,提高大集群的数据传输效率。
本发明提出的具体方案是:
一种快速同步计算机集群数据的方法:
集群***中每个节点上都设有数据发送模块和数据接收模块,
某一节点的数据发送模块向预备同步数据的所有节点的数据接收模块请求文件信息,
预备同步数据的所有节点的数据接收模块向发起请求节点的数据发送模块反馈相关文件信息,并设置自身节点的文件同步状态信息,
发起请求节点的数据发送模块,请求预备同步数据的所有节点的文件同步状态信息,根据节点的文件同步状态信息,传送数据,
接收了数据的节点的数据接收模块,把数据发送模块发送的全部相关数据写入到磁盘中,进行一致性校验,并启动自身数据发送模块,重复第一个发起请求节点的数据发送模块根据节点的文件同步状态信息传送数据的操作,直至所有预备同步数据的节点数据同步完成。
发起请求节点的数据发送模块,根据节点的文件同步状态信息,判断是否向该节点传输数据,若需要传输,则向该节点传送数据,否则跳过该节点,查询下一节点文件同步状态信息。
发起请求节点的数据发送模块,根据节点的文件同步状态信息,判断是否向该节点传输预备同步的文件列表和各个文件的效验码,若需要传输,则向该节点传送数据,否则跳过该节点,查询下一节点文件同步状态信息。
集群***节点的数据接收模块将文件同步状态信息设置为未同步、同步中、同步结束。
发起请求节点的数据发送模块,根据节点的文件同步状态信息,判断是未同步,则向该节点传送数据,否则跳过该节点,查询下一节点文件同步状态信息。
一种快速同步计算机集群数据的***,包括集群***中每个节点上的数据发送模块和数据接收模块,
其中某一节点的数据发送模块向预备同步数据的所有节点的数据接收模块请求文件信息,
预备同步数据的所有节点的数据接收模块向发起请求节点的数据发送模块反馈相关文件信息,并设置自身节点的文件同步状态信息,
发起请求节点的数据发送模块,请求预备同步数据的所有节点的文件同步状态信息,根据节点的文件同步状态信息,传送数据,
接收了数据的节点的数据接收模块,把数据发送模块发送的全部相关数据写入到磁盘中,进行一致性校验,并启动自身数据发送模块重复第一个发起请求节点的数据发送模块的操作,直至所有预备同步数据的节点数据同步完成。
一种数据发送模块,应用于快速同步计算机集群数据,
所述的数据发送模块向其他节点请求文件信息;
把预备同步的文件信息发送给其他节点;
把预备同步的节点信息发送给其他节点;
读取本节点文件的数据,并发送给其他节点。
一种数据接收模块,应用于快速同步计算机集群数据,
所述的数据接收模块接收其他节点的请求,并反馈文件相关信息;
接收其他节点发送的预备同步的文件信息;
把接收到的文件写入到对应的位置;
校验写入文件和源文件的一致性;
设置自身节点的文件同步状态信息;
启动自身节点的数据发送模块。
所述的数据接收模块,设置自身节点的文件同步状态信息为未同步、同步中、同步结束。
本发明的有益之处是:
本发明方法利用集群***中每个节点上都设有数据发送模块和数据接收模块,某一节点的数据发送模块向预备同步数据的所有节点的数据接收模块请求文件信息,预备同步数据的所有节点的数据接收模块向发起请求节点的数据发送模块反馈相关文件信息,并设置自身节点的文件同步状态信息,发起请求节点的数据发送模块,请求预备同步数据的所有节点的文件同步状态信息,根据节点的文件同步状态信息,传送数据,接收了数据的节点的数据接收模块,把数据发送模块发送的全部相关数据写入到磁盘中,进行一致性校验,并启动自身数据发送模块重复第一个发起请求节点的数据发送模块的操作,直至所有预备同步数据的节点数据同步完成;本发明可以自适应节点间数据同步,通过集群内部的数据读取和调节,并且数据接收模块可以启动自身数据发送模块重复第一个发起请求节点的数据发送模块的操作,形成数据同步循环,保证集群***的数据同步,可广泛的用于计算机集群中。
附图说明
图1本发明方法的流程示意图。
具体实施方式
一种快速同步计算机集群数据的方法:
集群***中每个节点上都设有数据发送模块和数据接收模块,
某一节点的数据发送模块向预备同步数据的所有节点的数据接收模块请求文件信息,
预备同步数据的所有节点的数据接收模块向发起请求节点的数据发送模块反馈相关文件信息,并设置自身节点的文件同步状态信息,
发起请求节点的数据发送模块,请求预备同步数据的所有节点的文件同步状态信息,根据节点的文件同步状态信息,传送数据,
接收了数据的节点的数据接收模块,把数据发送模块发送的全部相关数据写入到磁盘中,进行一致性校验,并启动自身数据发送模块,重复第一个发起请求节点的数据发送模块根据节点的文件同步状态信息传送数据的操作,直至所有预备同步数据的节点数据同步完成。
根据上述方法及发明内容,结合附图对本发明做进一步说明。
本发明还提供一种数据发送模块和一种数据接收模块,应用于快速同步计算机集群数据,
其中所述的数据发送模块向其他节点请求文件信息;把预备同步的文件信息发送给其他节点;把预备同步的节点信息发送给其他节点;读取本节点文件的数据,并发送给其他节点。
而所述的数据接收模块接收其他节点的请求,并反馈文件相关信息;接收其他节点发送的预备同步的文件信息;把接收到的文件写入到对应的位置;校验写入文件和源文件的一致性;设置自身节点的文件同步状态信息;启动自身节点的数据发送模块。
启动集群***中所有节点的数据接收模块,利用本发明方法,启动某一节点nodeX的数据发送模块,并向预备同步数据的所有节点,node1、node2、node3…nodeN的数据接收模块请求某文件的信息,比如文件夹存在性,状态,文件列表,以及是否可读性等信息;
预备同步数据的所有节点,node1、node2、node3…nodeN的数据接收模块向节点nodeX的数据发送模块反馈相关信息,并把自身节点的文件同步状态信息设置为未同步;
节点nodeX中的数据发送模块可以依次请求预备同步数据的节点列表中的节点数据接收模块的文件同步状态信息,如果是未同步,则开始向该节点传输预备同步的文件列表和各个文件的效验码;并开始向该节点传送数据;如果状态信息为同步中或者同步结束,则跳过该节点,向下一个节点请求信息;
数据接收模块在接收了节点nodeX发送的预备同步的文件列表和各个文件的效验码之后,把文件同步状态信息设置为同步中,并开始接收节点nodeX发送的文件数据,并把相关数据写入到磁盘中,并进行一致性校验;
根据预备同步数据的节点列表中的顺序,节点列表第一个节点node1的数据接收模块在接收了所有数据之后,把文件同步状态信息设置为同步结束,并启动自身数据发送模块;执行节点nodeX的数据发送模块根据预备同步数据的节点列表的中节点的文件同步状态信息,传送数据,比如节点node1的数据发送模块请求的列表中某一节点的文件同步状态信息,如果仍是未同步,则进行该节点传输预备同步的文件列表和各个文件的效验码的操作;如果状态信息为同步中或者同步结束,则跳过该节点,向下一个节点请求信息;
而接收数据节点的数据接收模块进行相应的操作,直至所有预备同步数据的节点数据同步完成。
Claims (9)
1.一种快速同步计算机集群数据的方法,其特征是
集群***中每个节点上设有数据发送模块和数据接收模块,
某一节点的数据发送模块向预备同步数据的所有节点的数据接收模块请求文件信息,
预备同步数据的所有节点的数据接收模块向发起请求节点的数据发送模块反馈相关文件信息,并设置自身节点的文件同步状态信息,
发起请求节点的数据发送模块,请求预备同步数据的所有节点的文件同步状态信息,根据节点的文件同步状态信息,传送数据,
接收了数据的节点的数据接收模块,把数据发送模块发送的全部相关数据写入到磁盘中,进行一致性校验,并启动自身数据发送模块,重复第一个发起请求节点的数据发送模块根据节点的文件同步状态信息传送数据的操作,直至所有预备同步数据的节点数据同步完成。
2.根据权利要求1所述的方法,其特征是发起请求节点的数据发送模块,根据节点的文件同步状态信息,判断是否向该节点传输数据,若需要传输,则向该节点传送数据,否则跳过该节点,查询下一节点文件同步状态信息。
3.根据权利要求2所述的方法,其特征是发起请求节点的数据发送模块,根据节点的文件同步状态信息,判断是否向该节点传输预备同步的文件列表和各个文件的效验码,若需要传输,则向该节点传送预备同步的文件列表和各个文件的效验码,否则跳过该节点,查询下一节点文件同步状态信息。
4.根据权利要求2或3所述的方法,其特征是集群***节点的数据接收模块将文件同步状态信息设置为未同步、同步中、同步结束。
5.根据权利要求4所述的方法,其特征是发起请求节点的数据发送模块,根据节点的文件同步状态信息,判断是未同步,则向该节点传送数据,否则跳过该节点,查询下一节点文件同步状态信息。
6.一种快速同步计算机集群数据的***,其特征是包括集群***中每个节点上的数据发送模块和数据接收模块,
其中某一节点的数据发送模块向预备同步数据的所有节点的数据接收模块请求文件信息,
预备同步数据的所有节点的数据接收模块向发起请求节点的数据发送模块反馈相关文件信息,并设置自身节点的文件同步状态信息,
发起请求节点的数据发送模块,请求预备同步数据的所有节点的文件同步状态信息,根据节点的文件同步状态信息,传送数据,
接收了数据的节点的数据接收模块,把数据发送模块发送的全部相关数据写入到磁盘中,进行一致性校验,并启动自身数据发送模块重复第一个发起请求节点的数据发送模块的操作,直至所有预备同步数据的节点数据同步完成。
7.一种数据发送模块,其特征是应用于权利要求1-5任一所述的快速同步计算机集群数据方法中,包括:
向其他节点请求文件信息的单元,
把预备同步的文件列表发送给其他节点的单元,
把预备同步的各个文件的效验码发送给其他节点的单元,
读取本节点文件的数据,并发送给其他节点的单元。
8.一种数据接收模块,其特征是应用于权利要求1-5任一所述的快速同步计算机集群数据方法中,包括:
接收其他节点的请求,并反馈文件相关信息的单元,
接收其他节点发送的预备同步的文件列表的单元,
把接收到的文件写入到对应的位置的单元,
校验写入文件和源文件的一致性的单元,
设置自身节点的文件同步状态信息的单元,
启动自身节点的数据发送模块的单元。
9.根据权利要求8所述的数据接收模块,其特征是设置自身节点的文件同步状态信息的单元,设置的自身节点的文件同步状态信息分别为未同步、同步中、同步结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610198149.4A CN105872056B (zh) | 2016-04-01 | 2016-04-01 | 一种快速同步计算机集群数据的方法和*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610198149.4A CN105872056B (zh) | 2016-04-01 | 2016-04-01 | 一种快速同步计算机集群数据的方法和*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105872056A CN105872056A (zh) | 2016-08-17 |
CN105872056B true CN105872056B (zh) | 2019-03-08 |
Family
ID=56626755
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610198149.4A Active CN105872056B (zh) | 2016-04-01 | 2016-04-01 | 一种快速同步计算机集群数据的方法和*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105872056B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106972980A (zh) * | 2017-02-24 | 2017-07-21 | 山东中创软件商用中间件股份有限公司 | 一种应用服务器集群的一致性验证方法及装置 |
CN107239505B (zh) * | 2017-05-10 | 2020-09-15 | 广州杰赛科技股份有限公司 | 集群镜像同步方法和*** |
CN107995194A (zh) * | 2017-12-04 | 2018-05-04 | 上海鑫苑信息科技有限公司 | 一种多媒体播控***及其文件分发方法 |
CN108647256A (zh) * | 2018-04-23 | 2018-10-12 | 平安科技(深圳)有限公司 | 文件同步方法、装置、计算机装置及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050015436A1 (en) * | 2003-05-09 | 2005-01-20 | Singh Ram P. | Architecture for partition computation and propagation of changes in data replication |
CN102025756A (zh) * | 2009-09-09 | 2011-04-20 | 中兴通讯股份有限公司 | 分布式***及其数据同步方法 |
CN104348884A (zh) * | 2013-08-08 | 2015-02-11 | 中国科学院计算机网络信息中心 | 一种云存储自动同步方法 |
-
2016
- 2016-04-01 CN CN201610198149.4A patent/CN105872056B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050015436A1 (en) * | 2003-05-09 | 2005-01-20 | Singh Ram P. | Architecture for partition computation and propagation of changes in data replication |
CN102025756A (zh) * | 2009-09-09 | 2011-04-20 | 中兴通讯股份有限公司 | 分布式***及其数据同步方法 |
CN104348884A (zh) * | 2013-08-08 | 2015-02-11 | 中国科学院计算机网络信息中心 | 一种云存储自动同步方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105872056A (zh) | 2016-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105872056B (zh) | 一种快速同步计算机集群数据的方法和*** | |
CN106372221B (zh) | 一种文件同步的方法、设备及*** | |
CN101483576B (zh) | 一种分布式***中的版本管理实现方法 | |
EP3660664B1 (en) | File folder transmission on network | |
EP3063925B1 (en) | Synchronizing event history for multiple clients | |
WO2017219557A1 (zh) | 数据传输方法及数据传输装置 | |
CN101150410B (zh) | 一种在网络电视直播室中共享资源的方法及*** | |
RU2011131451A (ru) | Система и способ передачи файла от нескольких источников при мгновенном обмене сообщениями | |
JP2020523700A (ja) | 分散型検索及びインデックスの更新方法、システム、サーバー並びにコンピューター機器 | |
CN102025515A (zh) | 基于文件目录的文件传输方法及其装置和*** | |
EP2852093A1 (en) | Method, system, and device for sharing documents | |
CN103916479A (zh) | 一种基于工作组文件的云同步局域网加速*** | |
CN102882900A (zh) | 大规模服务器集群应用部署方法和大规模服务器集群 | |
CN102201907A (zh) | 一种分布式仿真同步的实现方法 | |
WO2009103212A1 (zh) | 一种数据同步的方法、***和装置 | |
TW201245963A (en) | Distributed printing controlling method and system and distributed printing method | |
CN104869253A (zh) | 一种移动终端连接智能试衣镜的方法及*** | |
CN103368969B (zh) | 传输管理eml-nml间全量配置同步的方法及*** | |
JP2000222268A (ja) | 複数のコンピュータ間におけるファイルの同期方法 | |
JP5961471B2 (ja) | 複数の情報システムおける出力比較方法 | |
JP6922241B2 (ja) | 情報処理装置、情報処理方法、プログラム、情報処理システム | |
CN102611758A (zh) | 一种利用负载均衡器同步集群数据的方法 | |
CN110018875A (zh) | 一种基于idv的桌面同步实现方法 | |
CN113596115A (zh) | 一种应用基于pbft优化实现多节点高性能协议的网络 | |
CN102611743A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |