CN112163038A - 跨集群数据同步方法、装置、设备及存储介质 - Google Patents

跨集群数据同步方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN112163038A
CN112163038A CN202010986063.4A CN202010986063A CN112163038A CN 112163038 A CN112163038 A CN 112163038A CN 202010986063 A CN202010986063 A CN 202010986063A CN 112163038 A CN112163038 A CN 112163038A
Authority
CN
China
Prior art keywords
data
synchronization
synchronized
target
node
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
Application number
CN202010986063.4A
Other languages
English (en)
Inventor
张龙璨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Construction Bank Corp
Original Assignee
China Construction Bank Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Construction Bank Corp filed Critical China Construction Bank Corp
Priority to CN202010986063.4A priority Critical patent/CN112163038A/zh
Publication of CN112163038A publication Critical patent/CN112163038A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9035Filtering based on additional data, e.g. user or group profiles

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Computing Systems (AREA)
  • Hardware Redundancy (AREA)

Abstract

本申请实施例公开了一种跨集群数据同步方法、装置、设备及存储介质。该方法包括:通过数据同步从节点同步第一主节点中的待同步数据;根据第二主节点的同步请求数据,对所述待同步数据进行过滤,得到目标同步数据;将所述目标同步数据发送至所述第二主节点,以实现数据同步。上述方案能够快速地实现集群节点之间的数据同步,并且通过数据过滤,解决了节点中的数据标识冲突的问题,并且可以通过使用数据库自带的同步机制进行处理,不需要对现有代码进行较大改动,降低了数据同步的复杂度,提高了数据同步的效率和实时性。

Description

跨集群数据同步方法、装置、设备及存储介质
技术领域
本申请实施例涉及跨集群数据同步领域,尤其涉及一种跨集群数据同步方法、装置、设备及存储介质。
背景技术
随着业务规模不断扩大,传统的基于单集群的MySQL数据库在运行时往往难以满足需求,因此,目前产生了分数据库的多集群解决方案。按照一定的规则对现有业务库进行分库处理以后,运行压力明显减小。但对多个集群的数据库进行汇总加工时,如何在最小程度改造现有业务功能的情况下,保证数据同步传输的准确性和时效性,是亟待解决的问题。
对于数据全量加载的情况,需要定时清理目标集群中的表,此时需要中断业务操作。而对于增量数据加载的情况,需要改造原集群所在业务库的数据加工逻辑,将针对该表所有的DML操作都记录变更的时间戳以满足定时增量同步的需求,代码改动量大,且无法满足时效性。
发明内容
本申请实施例提供一种跨集群数据同步方法、装置、设备及存储介质,以无需对代码进行较大改动的情况下,实现数据的实时同步。
在一个实施例中,本申请实施例提供了一种跨集群数据同步方法,该方法包括:
通过数据同步从节点同步第一主节点中的待同步数据;
根据第二主节点的同步请求数据,对所述待同步数据进行过滤,得到目标同步数据;
将所述目标同步数据发送至所述第二主节点,以实现数据同步。
在另一个实施例中,本申请实施例还提供了一种跨集群数据同步装置,该装置包括:
待同步数据获取模块,用于通过数据同步从节点同步第一主节点中的待同步数据;
目标同步数据确定模块,用于根据第二主节点的同步请求数据,对所述待同步数据进行过滤,得到目标同步数据;
目标同步数据发送模块,用于将所述目标同步数据发送至所述第二主节点,以实现数据同步。
在又一个实施例中,本申请实施例还提供了一种跨集群数据同步设备,包括:一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本申请实施例任一项所述的跨集群数据同步方法。
在再一个实施例中,本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请实施例中任一项所述的跨集群数据同步方法。
本申请实施例中,通过数据同步从节点同步第一主节点中的待同步数据,从而不需要进行代码改动,只需要通过设置的数据同步从节点,基于底层代码的主从同步机制就可以实现待同步数据的获取,以保证数据的实时同步。根据第二主节点的同步请求数据,对所述待同步数据进行过滤,得到目标同步数据;将所述目标同步数据发送至所述第二主节点,以实现数据同步,从而避免了第一主节点和第二主节点中数据冲突的问题,保证了数据的纯净。
附图说明
图1为本申请一种实施例提供的跨集群数据同步方法的流程图;
图2为本申请一种实施例提供的集群结构图;
图3为本申请另一实施例提供的跨集群数据同步方法的流程图;
图4为本申请一种实施例提供的跨集群数据同步装置的结构示意图;
图5为本申请一种实施例提供的跨集群数据同步设备的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部结构。
图1为本申请一种实施例提供的跨集群数据同步方法的流程图。本实施例提供的跨集群数据同步方法可适用于对跨集群的节点之间进行数据同步的情况。该方法具体可以由跨集群数据同步装置执行,该装置可以由软件和/或硬件的方式实现,该装置可以集成在跨集群数据同步设备中。参见图1,本申请实施例的方法具体包括:
S110、通过数据同步从节点同步第一主节点中的待同步数据。
本申请实施例可适用于跨集群的节点之间的数据单向同步。第一主节点位于第一集群,第二主节点位于第二集群。在第一集群中包括第一主节点、从节点和数据同步从节点。第一主节点可以向从节点和数据同步从节点中同步数据。待同步数据可以为第一主节点中的全量数据,也可以为第一主节点中的增量数据。
示例性的,在第一主节点向从节点同步待同步数据的同时,也会向数据同步从节点同步待同步数据。因此,通过数据同步从节点能够实时获取第一主节点进行同步的数据。如图2所示,图2中只示出了一个第一从节点,两个第二从节点,但是并不是对第一从节点和第二从节点的数量限制,实际上第一从节点和第二从节点都可以设置一个,也可以设置多个。当第一主节点中存在待同步数据时,会向第一从节点中同步,同时,数据同步从节点与第一从节点有相同的权限,第一主节点将数据同步从节点视为第一从节点,也将待同步数据同步至数据同步从节点中。同理,第二主节点也可以向第二从节点中同步数据。
上述方案的有益效果在于,通过数据同步从节点实时获取第一主节点向第一从节点中同步的待同步数据,从而不需要改动其他功能结构和代码,只需要通过底层代码的主从同步机制即可以实现待同步数据的获取,从而降低数据同步的复杂度。并且在数据同步从节点获取待同步数据的同时,无需中断其他业务操作,提高了数据同步效率。
S120、根据第二主节点的同步请求数据,对所述待同步数据进行过滤,得到目标同步数据。
示例性的,所述待同步数据和目标同步数据以二进制日志的形式进行传输。第二主节点可能不需要同步第一主节点中的所有数据,或者第二主节点中的本地数据可能存在与第一主节点中待同步数据相冲突的数据,因此,可以根据第二主节点生成的同步请求数据,对待同步数据进行过滤,从而得到第二主节点需要的目标同步数据。
在本申请实施例中,根据第二主节点的同步请求数据,对所述待同步数据进行过滤,得到目标同步数据之前,所述方法还包括:设置至少一个过滤器,用于对所述待同步数据进行过滤。
如图2所示,设置过滤器,接收数据同步从节点从第一主节点中同步的待同步数据,并对待同步数据进行过滤。过滤器也可以设置多个,当需要向多个第二主节点同步第一主节点的数据时,则可以设置多个过滤器,分别确定针对各第二主节点的过滤规则,进而对待同步数据进行过滤得到各第二主节点对应的目标同步数据。
上述方案的有益效果在于,通过过滤器对待同步数据进行过滤,从而得到第二主节点需要的目标同步数据,避免了两集群主节点之间数据同步时出现数据标识冲突的问题,保证了数据的准确性和纯净性。
S130、将所述目标同步数据发送至所述第二主节点,以实现数据同步。
示例性的,在对待同步数据进行过滤后得到目标同步数据,进而将目标同步数据发送至第二主节点,实现了第一主节点和第二主节点之间的数据同步。第二主节点可以将目标同步数据发送至第二从节点中,实现主从同步。
本申请实施例中,通过数据同步从节点同步第一主节点中的待同步数据,从而不需要进行代码改动,只需要通过设置的数据同步从节点,基于底层代码的主从同步机制就可以实现待同步数据的获取,以保证数据的实时同步。根据第二主节点的同步请求数据,对所述待同步数据进行过滤,得到目标同步数据;将所述目标同步数据发送至所述第二主节点,以实现数据同步,从而避免了第一主节点和第二主节点中数据冲突的问题,保证了数据的纯净。
图3为本申请另一实施例提供的跨集群数据同步方法的流程图。本申请实施例为对上述实施例基础上对上述实施例进行优化,未在本实施例中详细描述的细节详见上述实施例。参见图3,本实施例提供的跨集群数据同步方法可以包括:
S210、针对所述第一主节点,基于集群数据库主从同步规则,创建数据同步从节点。
示例性的,针对第一主节点,基于主从同步规则,创建数据同步从节点。由于数据同步从节点是基于主从同步规则创建的,因此,在第一主节点向第一从节点同步待同步数据时,同样可以基于集群数据库底层使用的主从同步机制,将待同步数据同步至数据同步从节点中,从而不需要改变其他功能结构,既能实现对待同步数据的同步。
上述方案的有益效果在于,由于创建的数据同步从节点与第一从节点具有相同的地位,因此在第一主节点向第一从节点同步待同步数据的同时,与主从同步机制,将待同步数据同步至数据同步从节点,使数据同步从节点实现对第一主节点中数据的同步,不需要改动其他功能结构和代码,降低了操作的复杂度,提高了数据同步的效率。
S220、若第一主节点向第一从节点同步所述待同步数据,则通过数据同步从节点同步第一主节点中的待同步数据。
具体的,在第一主节点向第一主节点同步待同步数据时,即完成数据同步从节点对第一主节点中待同步数据的同步过程。此时,第一主节点将数据同步从节点视为一个从节点,因此可以基于底层使用的数据库自带的主从数据同步机制,将待同步数据同步至数据同步从节点,从而实现快速高效的数据同步。
S230、根据所述同步请求数据,确定目标同步数据的标识。
其中,所述同步请求数据由第二主节点根据所需同步数据的标识或本地数据标识生成的。示例性的,第二主节点可以确定自身需求同步的数据,根据自身需求的数据,生成同步请求数据。也可以为第二主节点确定自身本地的数据标识,将与本地数据标识不相同的数据标识,作为目标同步数据的标识,从而针对地从第一主节点同步目标同步数据。
S240、根据目标同步数据的标识,对所述待同步数据进行过滤,得到目标同步数据。
示例性的,在待同步数据中,只保留具有目标同步数据的标识的数据作为目标同步数据,而对于其他标识的数据过滤掉,不向第二主节点发送,从而针对性地确定第二主节点需求同步的数据,并可以避免了数据标识的冲突和重复,导致数据同步时产生数据污染的问题,提高了数据的纯净性。
S250、将所述目标同步数据发送至所述第二主节点,以实现数据同步。
本申请实施例的技术方案,通过创建数据同步从节点,并基于数据库自身本地的主从同步机制实现对第一主节点中待同步数据的同步,从而在不改动其他功能结构和代码的情况下,实现对待同步数据的同步,降低了处理的复杂度,提高了数据同步的效率。另外通过确定目标同步数据的标识,并根据目标数据的标识对待同步数据进行过滤,从而避免了数据标识的冲突和重复,导致数据同步时产生数据污染的问题,提高了数据的纯净性。
在本申请实施例中,根据第二主节点的同步请求数据,对所述待同步数据进行过滤,得到目标同步数据之前,所述方法还包括:确定所述第一主节点待同步数据标识的第一偏移量和第一自增步长。根据第二主节点的同步请求数据,对所述待同步数据进行过滤,得到目标同步数据,包括:根据所述第一主节点待同步数据标识的第一偏移量和第一自增步长,以及所述同步请求数据,确定目标同步数据的目标偏移量和目标自增步长。
示例性的,假设第一主节点待同步数据标识的第一偏移量为X1,第一自增步长为L1,根据同步请求数据确定第二主节点需要同步的数据的标识中包括第一偏移量为X1,第一自增步长为L1的数据标识,因此,确定目标同步数据的目标偏移量为X1,目标同步数据的目标自增步长为L1。如果根据同步请求数据确定需要同步的数据标识包含于第一偏移量为X1,第一自增步长为L1的数据标识中,并且第一偏移量为X1,第一自增步长为L1的数据标识中还包括同步请求数据确定的需要同步的数据标识以外的标识,则根据同步请求数据确定需要同步的数据标识的目标偏移量和目标自增步长。通过上述方案,能够准确地确定需要过滤的筛选出的目标同步数据的目标偏移量和目标自增步长,从而使过滤过程更加快速高效,具有针对性,提高过滤的效率和精确性。
在本申请实施例中,根据第二主节点的同步请求数据,对所述待同步数据进行过滤,得到目标同步数据,包括:若第二主节点本地数据标识为第二偏移量和第二自增步长,则确定目标数据的目标偏移量和目标自增步长为所述第一偏移量和所述第一自增步长;根据所述第一偏移量和所述第一自增步长,对所述待同步数据进行过滤,得到目标同步数据。
例如,第一主节点中待同步数据标识的第一偏移量为1,第一自增步长为10,而第二主节点中本地数据标识的为第二偏移量2,第二自增步长10,第二主节点中不包含标识为第一偏移量为1,第一自增步长为10的数据,而需要过滤掉标识为第二偏移量2,第二自增步长10的数据,因此,将第一偏移量1和第一自增步长10作为目标同步数据的目标偏移量和目标自增步长,从而根据目标偏移量和目标自增步长对待同步数据进行过滤,只保留待同步数据标识尾号为1的数据,滤除掉标识尾号为2的数据,避免与第二主节点中的数据产生冲突。另外,在第一主节点进行数据加载的过程中,可能会误加载除第一偏移量和第一自增步长的标识以外的数据,因此,将第一偏移量和第一自增步长作为目标同步数据的目标偏移量和目标自增步长,对待同步数据进行过滤,能够过滤掉上述杂乱数据,从而保证同步至第二主节点的数据为纯净的数据,并且不会和第二主节点本地的数据产生标识的冲突。
在本申请实施例中,根据第二主节点的同步请求数据,对所述待同步数据进行过滤,得到目标同步数据之前,所述方法还包括:将所述第一主节点生成的待同步数据的标识按照第一偏移量和第一自增步长设置;将所述第一主节点生成的待同步数据的标识按照第二偏移量和第二自增步长设置。
例如,将第一主节点中加载的待同步数据时,待同步数据的标识按照第一偏移量为1,第一自增步长为10设置。第二主节点中加载数据时,加载数据的标识按照第二偏移量为2,第二自增步长为10设置,从而在加载数据时对第一主节点中数据标识与第二主节点中数据标识进行区分,避免第一主节点中的数据同步至第二主节点时,数据标识产生冲突,导致数据污染。
图4为本申请一种实施例提供的跨集群数据同步装置的结构示意图。该装置可适用于对跨集群的节点之间进行数据同步的情况。该装置可以由软件和/或硬件的方式实现,该装置可以集成在跨集群数据同步设备中。参见图4,该装置具体包括:
待同步数据获取模块310,用于通过数据同步从节点同步第一主节点中的待同步数据;
目标同步数据确定模块320,用于根据第二主节点的同步请求数据,对所述待同步数据进行过滤,得到目标同步数据;
目标同步数据发送模块330,用于将所述目标同步数据发送至所述第二主节点,以实现数据同步。
在本申请实施例中,所述装置还包括:
创建模块,用于针对所述第一主节点,基于集群数据库主从同步规则,创建数据同步从节点。
在本申请实施例中,所述待同步数据获取模块310,包括:
同步单元,用于若第一主节点向第一从节点同步所述待同步数据,则通过数据同步从节点同步第一主节点中的待同步数据。
在本申请实施例中,所述装置还包括:
过滤器设置模块,用于设置至少一个过滤器,用于对所述待同步数据进行过滤。
在本申请实施例中,所述同步请求数据由第二主节点根据所需同步数据的标识或本地数据标识生成的。
在本申请实施例中,目标同步数据确定模块320,包括:
标识确定单元,用于根据所述同步请求数据,确定目标同步数据的标识;
过滤单元,用于根据目标同步数据的标识,对所述待同步数据进行过滤,得到目标同步数据。
在本申请实施例中,所述装置还包括:
标识信息确定模块,用于确定所述第一主节点待同步数据标识的第一偏移量和第一自增步长。
在本申请实施例中,目标同步数据确定模块320,包括:
目标标识信息确定单元,用于根据所述第一主节点待同步数据标识的第一偏移量和第一自增步长,以及所述同步请求数据,确定目标同步数据的目标偏移量和目标自增步长。
在本申请实施例中,目标同步数据确定模块320,包括:
信息替换单元,用于若第二主节点本地数据标识为第二偏移量和第二自增步长,则确定目标数据的目标偏移量和目标自增步长为所述第一偏移量和所述第一自增步长;
过滤处理单元,用于根据所述第一偏移量和所述第一自增步长,对所述待同步数据进行过滤,得到目标同步数据。
在本申请实施例中,所述装置还包括:
第一设置模块,用于将所述第一主节点生成的待同步数据的标识按照第一偏移量和第一自增步长设置;
第二设置模块,用于将所述第一主节点生成的待同步数据的标识按照第二偏移量和第二自增步长设置。
在本申请实施例中,所述第一主节点位于第一集群,所述第二主节点位于第二集群。
在本申请实施例中,所述待同步数据和目标同步数据以二进制日志的形式进行传输。
本申请实施例所提供的跨集群数据同步装置可执行本申请任意实施例所提供的跨集群数据同步方法,具备执行方法相应的功能模块和有益效果。
图5为本申请一种实施例提供的跨集群数据同步设备的结构示意图。图5示出了适于用来实现本申请实施例的示例性跨集群数据同步设备412的框图。图5显示的跨集群数据同步设备412仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图5所示,跨集群数据同步设备412可以包括:一个或多个处理器416;存储器428,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器416执行,使得所述一个或多个处理器416实现本申请实施例所提供的跨集群数据同步方法,包括:
通过数据同步从节点同步第一主节点中的待同步数据;
根据第二主节点的同步请求数据,对所述待同步数据进行过滤,得到目标同步数据;
将所述目标同步数据发送至所述第二主节点,以实现数据同步。
跨集群数据同步设备412的组件可以包括但不限于:一个或者多个处理器或者处理器416,存储器428,连接不同设备组件(包括存储器428和处理器416)的总线418。
总线418表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,***总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及***组件互连(PCI)总线。
跨集群数据同步设备412典型地包括多种计算机设备可读存储介质。这些存储介质可以是任何能够被跨集群数据同步设备412访问的可用存储介质,包括易失性和非易失性存储介质,可移动的和不可移动的存储介质。
存储器428可以包括易失性存储器形式的计算机设备可读存储介质,例如随机存取存储器(RAM)430和/或高速缓存存储器432。跨集群数据同步设备412可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机设备存储介质。仅作为举例,存储***434可以用于读写不可移动的、非易失性磁存储介质(图5未显示,通常称为“硬盘驱动器”)。尽管图5中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光存储介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据存储介质接口与总线418相连。存储器428可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请各实施例的功能。
具有一组(至少一个)程序模块442的程序/实用工具440,可以存储在例如存储器428中,这样的程序模块442包括但不限于操作设备、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块442通常执行本申请所描述的实施例中的功能和/或方法。
跨集群数据同步设备412也可以与一个或多个外部设备414(例如键盘、指向设备、显示器424等)通信,还可与一个或者多个使得用户能与该跨集群数据同步设备412交互的设备通信,和/或与使得该跨集群数据同步设备412能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口422进行。并且,跨集群数据同步设备412还可以通过网络适配器420与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图5所示,网络适配器420通过总线418与跨集群数据同步设备412的其它模块通信。应当明白,尽管图5中未示出,可以结合跨集群数据同步设备412使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID设备、磁带驱动器以及数据备份存储设备等。
处理器416通过运行存储在存储器428中的多个程序中其他程序的至少一个,从而执行各种功能应用以及数据处理,例如实现本申请实施例所提供的一种跨集群数据同步方法。
本申请一种实施例提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行跨集群数据同步方法,包括:
通过数据同步从节点同步第一主节点中的待同步数据;
根据第二主节点的同步请求数据,对所述待同步数据进行过滤,得到目标同步数据;
将所述目标同步数据发送至所述第二主节点,以实现数据同步。
本申请实施例的计算机存储介质,可以采用一个或多个计算机可读的存储介质的任意组合。计算机可读存储介质可以是计算机可读信号存储介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的设备、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请实施例中,计算机可读存储介质可以是任何包含或存储程序的有形存储介质,该程序可以被指令执行设备、装置或者器件使用或者与其结合使用。
计算机可读的信号存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号存储介质还可以是计算机可读存储介质以外的任何计算机可读存储介质,该计算机可读存储介质可以发送、传播或者传输用于由指令执行设备、装置或者器件使用或者与其结合使用的程序。
计算机可读存储介质上包含的程序代码可以用任何适当的存储介质传输,包括——但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或设备上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本申请的较佳实施例及所运用技术原理。本领域技术人员会理解,本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,而本申请的范围由所附的权利要求范围决定。

Claims (15)

1.一种跨集群数据同步方法,其特征在于,所述方法包括:
通过数据同步从节点同步第一主节点中的待同步数据;
根据第二主节点的同步请求数据,对所述待同步数据进行过滤,得到目标同步数据;
将所述目标同步数据发送至所述第二主节点,以实现数据同步。
2.根据权利要求1所述的方法,其特征在于,通过数据同步从节点同步第一主节点中的待同步数据之前,所述方法还包括:
针对所述第一主节点,基于集群数据库主从同步规则,创建数据同步从节点。
3.根据权利要求1所述的方法,其特征在于,通过数据同步从节点同步第一主节点中的待同步数据,包括:
若第一主节点向第一从节点同步所述待同步数据,则通过数据同步从节点同步第一主节点中的待同步数据。
4.根据权利要求1所述的方法,其特征在于,根据第二主节点的同步请求数据,对所述待同步数据进行过滤,得到目标同步数据之前,所述方法还包括:
设置至少一个过滤器,用于对所述待同步数据进行过滤。
5.根据权利要求1所述的方法,其特征在于,所述同步请求数据由第二主节点根据所需同步数据的标识或本地数据标识生成的。
6.根据权利要求5所述的方法,其特征在于,根据第二主节点的同步请求数据,对所述待同步数据进行过滤,得到目标同步数据,包括:
根据所述同步请求数据,确定目标同步数据的标识;
根据目标同步数据的标识,对所述待同步数据进行过滤,得到目标同步数据。
7.根据权利要求1-3任一项所述的方法,其特征在于,根据第二主节点的同步请求数据,对所述待同步数据进行过滤,得到目标同步数据之前,所述方法还包括:
确定所述第一主节点待同步数据标识的第一偏移量和第一自增步长。
8.根据权利要求7所述的方法,其特征在于,根据第二主节点的同步请求数据,对所述待同步数据进行过滤,得到目标同步数据,包括:
根据所述第一主节点待同步数据标识的第一偏移量和第一自增步长,以及所述同步请求数据,确定目标同步数据的目标偏移量和目标自增步长。
9.根据权利要求7所述的方法,其特征在于,根据第二主节点的同步请求数据,对所述待同步数据进行过滤,得到目标同步数据,包括:
若第二主节点本地数据标识为第二偏移量和第二自增步长,则确定目标数据的目标偏移量和目标自增步长为所述第一偏移量和所述第一自增步长;
根据所述第一偏移量和所述第一自增步长,对所述待同步数据进行过滤,得到目标同步数据。
10.根据权利要求7所述的方法,其特征在于,根据第二主节点的同步请求数据,对所述待同步数据进行过滤,得到目标同步数据之前,所述方法还包括:
将所述第一主节点生成的待同步数据的标识按照第一偏移量和第一自增步长设置;
将所述第一主节点生成的待同步数据的标识按照第二偏移量和第二自增步长设置。
11.根据权利要求1所述的方法,其特征在于,所述第一主节点位于第一集群,所述第二主节点位于第二集群。
12.根据权利要求1所述的方法,其特征在于,所述待同步数据和目标同步数据以二进制日志的形式进行传输。
13.一种跨集群数据同步装置,其特征在于,所述装置包括:
待同步数据获取模块,用于通过数据同步从节点同步第一主节点中的待同步数据;
目标同步数据确定模块,用于根据第二主节点的同步请求数据,对所述待同步数据进行过滤,得到目标同步数据;
目标同步数据发送模块,用于将所述目标同步数据发送至所述第二主节点,以实现数据同步。
14.一种跨集群数据同步设备,其特征在于,所述跨集群数据同步设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-12中任一项所述的跨集群数据同步方法。
15.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-12中任一项所述的跨集群数据同步方法。
CN202010986063.4A 2020-09-18 2020-09-18 跨集群数据同步方法、装置、设备及存储介质 Pending CN112163038A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010986063.4A CN112163038A (zh) 2020-09-18 2020-09-18 跨集群数据同步方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010986063.4A CN112163038A (zh) 2020-09-18 2020-09-18 跨集群数据同步方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN112163038A true CN112163038A (zh) 2021-01-01

Family

ID=73858251

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010986063.4A Pending CN112163038A (zh) 2020-09-18 2020-09-18 跨集群数据同步方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN112163038A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113064766A (zh) * 2021-05-07 2021-07-02 数字广东网络建设有限公司 数据备份方法、装置、设备及存储介质
CN113190620A (zh) * 2021-04-30 2021-07-30 康键信息技术(深圳)有限公司 Redis集群之间数据的同步方法、装置、设备及存储介质
CN114567646A (zh) * 2022-03-08 2022-05-31 京东科技信息技术有限公司 数据处理方法、数据处理***、电子设备及存储介质
CN114579671A (zh) * 2022-05-09 2022-06-03 高伟达软件股份有限公司 集群间数据同步方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8805978B1 (en) * 2012-02-28 2014-08-12 Symantec Corporation Distributed cluster reconfiguration
CN106372221A (zh) * 2016-09-07 2017-02-01 华为技术有限公司 一种文件同步的方法、设备及***

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8805978B1 (en) * 2012-02-28 2014-08-12 Symantec Corporation Distributed cluster reconfiguration
CN106372221A (zh) * 2016-09-07 2017-02-01 华为技术有限公司 一种文件同步的方法、设备及***

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113190620A (zh) * 2021-04-30 2021-07-30 康键信息技术(深圳)有限公司 Redis集群之间数据的同步方法、装置、设备及存储介质
CN113190620B (zh) * 2021-04-30 2023-10-20 康键信息技术(深圳)有限公司 Redis集群之间数据的同步方法、装置、设备及存储介质
CN113064766A (zh) * 2021-05-07 2021-07-02 数字广东网络建设有限公司 数据备份方法、装置、设备及存储介质
CN114567646A (zh) * 2022-03-08 2022-05-31 京东科技信息技术有限公司 数据处理方法、数据处理***、电子设备及存储介质
CN114579671A (zh) * 2022-05-09 2022-06-03 高伟达软件股份有限公司 集群间数据同步方法及装置

Similar Documents

Publication Publication Date Title
CN112163038A (zh) 跨集群数据同步方法、装置、设备及存储介质
CN107391628B (zh) 数据同步方法及装置
CN110442560B (zh) 一种日志重演方法、装置、服务器和存储介质
CN110647579A (zh) 数据同步方法及装置、计算机设备与可读介质
CN106874281B (zh) 实现数据库读写分离的方法和装置
US9026493B1 (en) Multi-master RDBMS improvements for distributed computing environment
CN115408391A (zh) 一种数据库表变更方法、装置、设备和存储介质
CN113076304A (zh) 一种分布式版本管理方法、装置和***
CN111061740A (zh) 一种数据同步方法、设备和存储介质
CN112241437A (zh) 数据库多主同步的回环控制方法、装置、设备及存储介质
CN113806301A (zh) 数据同步方法、装置、服务器及存储介质
US20130318059A1 (en) Transfer of data from transactional data sources to partitioned databases in restartable environment
CN109347899B (zh) 在分布式存储***中写入日志数据的方法
CN112015591A (zh) 一种日志管理方法、服务器和数据库***
CN115470235A (zh) 一种数据处理方法、装置以及设备
CN112948494A (zh) 数据同步方法、装置、电子设备和计算机可读介质
CN113761052A (zh) 数据库同步方法和装置
CN111459882A (zh) 分布式文件***的命名空间事务处理方法和装置
CN114564458B (zh) 集群间数据同步的方法、装置、设备和存储介质
CN113609091B (zh) 日志管理方法、装置、设备及存储介质
CN115080666A (zh) 数据同步方法、***、电子设备及存储介质
CN113760950B (zh) 指标数据查询方法、装置、电子设备以及存储介质
WO2022077916A1 (zh) 一种数据处理***、基于区块链的数据处理方法及设备
CN114297196A (zh) 元数据存储方法、装置、电子设备及存储介质
EP4170519A1 (en) Data synchronization method and device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination