CN107547593A - 一种实现日志同步的方法、装置及分布式系统 - Google Patents
一种实现日志同步的方法、装置及分布式系统 Download PDFInfo
- Publication number
- CN107547593A CN107547593A CN201610481891.6A CN201610481891A CN107547593A CN 107547593 A CN107547593 A CN 107547593A CN 201610481891 A CN201610481891 A CN 201610481891A CN 107547593 A CN107547593 A CN 107547593A
- Authority
- CN
- China
- Prior art keywords
- daily record
- copied
- host node
- node
- moment
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 72
- 230000001360 synchronised effect Effects 0.000 title claims abstract description 25
- 230000004044 response Effects 0.000 claims abstract description 21
- 230000003362 replicative effect Effects 0.000 claims abstract description 19
- 238000012545 processing Methods 0.000 claims description 60
- 230000010076 replication Effects 0.000 claims description 14
- 230000006399 behavior Effects 0.000 claims description 10
- 238000003860 storage Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 13
- 230000008569 process Effects 0.000 description 12
- 230000000694 effects Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 230000033458 reproduction Effects 0.000 description 5
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 239000004744 fabric Substances 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 238000005194 fractionation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004549 pulsed laser deposition Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请公开了一种实现日志同步的方法、装置及分布式系统,涉及计算机存储技术领域,能够提高需要处理大量日志的分布式系统的吞吐量,并减小该系统的负载。该方法包括:在第一时刻确定在第一时间段内采用延迟写方式处理待复制日志;根据延迟写方式,暂停在第一时间段内执行对所有待复制日志的复制流程,并缓存至少一个第一待复制日志和至少一个第二待复制日志,以生成批量日志,第一待复制日志为在第一时刻之前获取到的且未复制的待复制日志,第二待复制日志为在第一时间段内获取到的待复制日志;在第二时刻发送携带批量日志的操作请求消息;接收响应消息,并在确定用于表示确认的响应消息的数量大于或等于第一预设阈值时,发送通知消息。
Description
技术领域
本申请涉及计算机存储技术领域,尤其涉及一种实现日志同步的方法、装置及分布式系统。
背景技术
现有的分布式系统通常采用Raft协议来实现系统中各个节点中数据的一致性。在采用Raft协议的分布式系统中,包括一个主(Leader)节点和至少一个从(Follower)节点。Leader节点主要处理所有与客户端的交互,发起日志复制等操作。Follower节点主要是被动的接受来自Leader节点的操作请求。
在采用Raft协议的分布式系统中,实现数据一致性的方法一般包括如下两个阶段:
1、请求阶段:Leader节点向所有Follower节点发送携带某一日志的操作请求消息,系统中的每个Follower节点接收到操作请求消息后,向Leader节点返回响应消息,该响应消息用于表示该Follower节点同意该操作请求或者不同意该操作请求;
2、复制阶段:若超过一半的Follower节点返回的响应消息均用于表示同意,则Leader节点向所有Follower节点发送通知消息,用以通知各Follower节点复制该日志,即通知各个Follower节点将该日志写入本地磁盘。
采用上述方法,若分布式系统中存在n个Follower节点,对于某一日志而言,系统需要处理至少3×n条消息才能完成该日志的复制。这样,对于需要处理大量日志的分布式系统而言,该分布式系统中需要发送的消息的数量会特别大,该分布式系统的负载较大。此外,分布式系统只能逐条处理上述消息,这样,分布式系统只能逐个对每一日志进行复制处理,极大的限制了该分布式系统的吞吐量。
发明内容
本申请的实施例提供一种实现日志同步的一致性的方法、装置及分布式系统,能够提高需要处理大量日志的分布式系统的吞吐量,并减小该系统的负载。
为达到上述目的,本申请的实施例采用如下技术方案:
第一方面,本申请实施例提供一种实现日志同步的方法,主节点在第一时刻确定其在第一时间段内采用延迟写方式处理待复制日志之后,根据延迟写方式,暂停自身在所述第一时间段内执行对所有待复制日志的复制流程,并缓存至少一个第一待复制日志和至少一个第二待复制日志,以生成批量日志,第一待复制日志为该主节点在第一时刻之前获取到的且未复制的待复制日志,第二待复制日志为该主节点在第一时间段内获取到的且未复制的待复制日志,第一时刻为第一时间段的起始时刻;主节点在第二时刻向至少一个从节点发送携带批量日志的操作请求消息,用于请求至少一个从节点中的每个从节点复制批量日志,相应的,该主节点会接收到至少一个从节点发送的响应消息,进而,在确定用于表示确认的响应消息的数量(即第一数量)大于或等于第一预设阈值时,该主节点向至少一个从节点发送通知消息,用于指示每个从节点复制批量日志。
本申请实施例中的主节点通过缓存该主节点在第一时刻之前获取到的且未复制的待复制日志和该主节点在第一时间段内获取到的且未复制的待复制日志,生成了批量日志,并在第一时间段的终止时刻向至少一个从节点发送携带有批量日志的操作请求消息,这样,主节点不必再逐一对每一个待复制日志进行复制处理,即使分布式系统中需要处理大量的待复制日志,该分布式系统也可较为迅速的完成对待复制日志的处理,有效的提高了处理效率和吞吐量。此外,采用本申请提供的方法,在完成所有日志复制的情况下,主节点与所有从节点之间需要交互的消息的数量明显的减小,有效的降低了分布式系统的负载。
可选的,主节点在第一时刻确定自身在第一时间段内采用延迟写方式处理待复制日志的方法为:首先,主节点在第一时刻获取第一标识,该第一标识用于指示主节点在第一时间段内采用延迟写方式处理待复制日志,然后,主节点根据第一标识,确定在第一时间段内采用延迟写方式处理待复制日志。
可选的,主节点在第一时刻获取第一标识之前,主节点在第一时刻确定第二数量,第二数量为第一待复制日志的数量;若第二数量大于或等于第二预设阈值,则主节点在其内存中设置第一标识。
容易理解的是,本申请实施例中的主节点是根据第二数量确定该主节点在第一时间段内处理待复制日志的方式。若第二数量大于或等于第二预设阈值,则说明该主节点在第一时刻待处理的待复制日志的数量较大,主节点采用延迟写方式可批量处理待复制日志,从而有效的提高了主节点的处理效率,也提高了其吞吐量。
可选的,若第二数量小于第二预设阈值,则主节点在其内存中设置第二标识,该第二标识用于指示主节点在第一时间段内采用默认方式处理待复制日志,这样,该主节点根据第二标识,在第一时间段内对至少一个第一待复制日志和至少一个第二待复制日志依次执行复制流程。
容易理解的是,若第二数量小于第二预设阈值,则说明该主节点在第一时刻待处理的待复制日志的数量较小,主节点在第一时间段内对至少一个第一待复制日志和至少一个第二待复制日志依次进行复制即可,对分布式系统的吞吐量也不会造成很大的影响。
对于至少一个第一待复制日志和至少一个第二待复制日志中的每一待复制日志,主节点缓存该待复制日志的方法包括:主节点获取该待复制日志,该待复制日志包括操作变量;然后,主节点判断已缓存的待复制日志中是否存在第一已缓存待复制日志,第一已缓存待复制日志包括操作变量;若已缓存的待复制日志中存在第一已缓存待复制日志,则主节点将第一已缓存待复制日志更新为该待复制日志;若已缓存的待复制日志中未存在第一已缓存待复制日志,则主节点缓存该待复制日志。
可以看出,本申请实施例中的主节点在缓存待复制日志的过程中,对于同一操作变量而言,该主节点会自动将该操作变量的数值更新为最新数值,这样,每个从节点只需获取该操作变量的最新数值即可,有效的提高了分布式系统处理待复制日志的效率。
第二方面,本申请实施例提供一种主节点,该主节点包括:处理单元、发送单元和接收单元。
具体的,本申请实施例提供的各个单元模块所实现的功能具体如下:
上述处理单元,用于在第一时刻确定主节点在第一时间段内采用延迟写方式处理待复制日志,第一时刻为第一时间段的起始时刻,以及用于根据延迟写方式,暂停在第一时间段内执行对所有待复制日志的复制流程,并缓存至少一个第一待复制日志和至少一个第二待复制日志,以生成批量日志,第一待复制日志为主节点在第一时刻之前获取到的且未复制的待复制日志,第二待复制日志为主节点在第一时间段内获取到的且未复制的待复制日志。
上述发送单元,用于在第二时刻向至少一个从节点发送操作请求消息,操作请求消息携带上述处理单元生成的批量复制日志,操作请求消息用于请求至少一个从节点中的每个从节点复制批量日志,第二时刻为第一时间段的终止时刻。
上述接收单元,用于接收至少一个从节点发送的响应消息。
上述处理单元,还用于判断第一数量是否大于或等于第一预设阈值,第一数量为用于表示确认的响应消息的数量。
上述发送单元,还用于在上述处理单元确定第一数量大于或等于第一预设阈值时,向至少一个从节点发送通知消息,通知消息用于指示每个从节点复制批量日志。
本申请实施例中的主节点通过缓存该主节点在第一时刻之前获取到的且未复制的待复制日志和该主节点在第一时间段内获取到的且未复制的待复制日志,生成了批量日志,并在第一时间段的终止时刻向至少一个从节点发送携带有批量日志的操作请求消息,这样,主节点不必再逐一对每一个待复制日志进行复制处理,即使分布式系统中需要处理大量的待复制日志,该分布式系统也可较为迅速的完成对待复制日志的处理,有效的提高了处理效率和吞吐量。此外,在完成所有日志复制的情况下,主节点与所有从节点之间需要交互的消息的数量明显的减小,有效的降低了分布式系统的负载。
可选的,上述处理单元包括获取模块和确定模块。
可选的,上述获取模块,用于在第一时刻获取第一标识,第一标识用于指示主节点在第一时间段内采用延迟写方式处理待复制日志。
可选的,上述确定模块,用于根据上述获取模块获取到的第一标识,确定在第一时间段内采用延迟写方式处理待复制日志。
可选的,上述确定模块,还用于在上述获取模块在第一时刻获取第一标识之前,在第一时刻确定第二数量,第二数量为第一待复制日志的数量。
可选的,上述处理单元还包括判断模块。
上述判断模块,用于判断第二数量是否大于或等于第二预设阈值。
可选的,上述处理单元还包括设置模块。
上述设置模块,用于若上述判断模块确定第二数量大于或等于第二预设阈值,则在内存中设置第一标识。
可选的,上述设置模块,还用于若上述判断模块确定第二数量小于第二预设阈值,则在内存找那个设置第二标识,第二标识用于指示主节点在第一时间段内采用默认方式处理待复制日志。
可选的,上述处理单元,还用于主节点根据第二标识,在第一时间段内对至少一个第二待复制日志和至少一个第一待复制日志依次执行复制流程。
可选的,对于至少一个第一待复制日志和至少一个第二待复制日志中的每一个待复制日志,上述处理单元还用于:
获取该待复制日志,该待复制日志包括操作变量;
判断已缓存的待复制日志中是否存在第一已缓存待复制日志,第一已缓存待复制日志包括操作变量;
若已缓存的待复制日志中存在第一已缓存待复制日志,则将存在第一已缓存待复制日志更新为该待复制日志;
若已缓存的待复制日志中未存在第一已缓存待复制日志,则缓存该待复制日志。
第三方面,本申请另一实施例提供一种主节点,该主节点包括存储器、处理器、通信接口和系统总线;存储器、处理器和通信接口通过系统总线连接,存储器用于存储计算机指令,处理器用于执行存储器存储的计算机指令,以使主节点执行如上述所述的实现日志同步的方法。
本发明实施例提供的主节点的技术效果可以参见上述任意一方面中主节点执行的实现日志同步的方法中描述的主节点的技术效果,此处不再赘述。
第四方面,本申请另一实施例提供一种计算机可读存储介质,该计算机可读存储介质包括一个或多个程序代码;当主节点的处理器在执行该程序代码时,该主节点执行如上述任一方面及其各种可选实现方式中所述的实现日志同步的方法。
本申请实施例提供的计算机可读存储介质的技术效果可以参见上述任一方面及其各种可选实现方式所述的主节点执行的实现日志同步的方法中描述的主节点的技术效果,此处不再赘述。
第五方面,本申请另一实施例提供一种分布式系统,包括如上述任一方面及其各种可选实现方式所述的主节点以及至少一个从节点,主节点与至少一个从节点中的每个从节点之间通过网络连接。
本申请实施例提供的分布式系统的技术效果可以参见上述任一方面及其各种可选实现方式所述的主节点执行的实现日志同步的方法中描述的主节点的技术效果,此处不再赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例。
图1为现有的实现日志同步的方法的流程示意图;
图2为本申请实施例提供的分布式系统的组成结构示意图;
图3为本申请实施例提供的分布式系统的交互协作示意图;
图4为本申请实施例提供的实现日志同步的方法的流程示意图一;
图5为本申请实施例提供的主节点缓存待复制日志的流程示意图;
图6为本申请实施例提供的实现日志同步的方法的流程示意图二;
图7为本申请实施例提供的主节点的结构示意图一;
图8为本申请实施例提供的主节点的结构示意图二;
图9为本申请实施例提供的主节点的结构示意图三。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行详细地描述。
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、接口、技术之类的具体细节,以便透切理解本申请。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
此外,本申请的说明书和权利要求书及附图中的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请的实施例可被实现为计算机实现的过程(方法)、计算系统、或者诸如计算机程序产品或计算机可读介质等制品。计算机程序产品可以是计算机系统可读并且编码包括用于使计算机或计算系统执行示例过程的指令的计算机程序的计算机存储介质。计算机可读存储介质是非瞬态的计算机可读存储器设备。例如,计算机可读存储介质可经由易失性计算机存储器、非易失性存储器、硬盘驱动器、闪存驱动器、软盘或紧致盘和类似介质中的一个或多个来实现。
其中,本申请实施例中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
此外,本申请的说明书和权利要求书及附图中的术语“第一”和“第二”等是用于区别不同对象,而不是用于限定特定顺序。
图1示出了现有技术中在包括主节点、从节点1、从节点2和从节点3的分布式系统中实现数据一致性的方法。具体的,该方法为:
1、主节点获取某一未复制的日志A。
2、主节点向从节点1、从节点2和从节点3分别发送携带该日志A的操作请求消息。
3、每一从节点向主节点发送与操作请求消息对应的响应消息,该响应消息用于表示该从节点同意执行或不同意执行。
4、若至少两条响应消息均表示同意执行,则主节点向从节点1、从节点2和从节点3分别发送通知消息,用于指示每个从节点复制该日志A,即将该日志A写入本地磁盘。
从图1可以看出,若采用Raft协议的分布式系统中存在n个从节点,对于某一日志而言,系统需要处理至少3×n条消息才能完成该日志的复制。这样,对于需要处理大量日志的分布式系统而言,该分布式系统中需要发送的消息的数量会特别大,该分布式系统的负载较大。此外,分布式系统只能逐条处理上述消息,这样,分布式系统只能逐个对每一日志进行复制,极大的限制了该分布式系统的吞吐量。
针对现有技术的不足,本申请实施例提出了一种实现日志同步的方法、装置及分布式系统,主节点通过缓存该主节点在第一时刻之前获取到的且未复制的待复制日志和该主节点在第一时间段内获取到的且未复制的待复制日志,生成了批量日志,并在第一时间段的终止时刻向至少一个从节点发送携带有批量日志的操作请求消息,这样,主节点不必再逐一对每一个待复制日志进行复制处理,即使分布式系统中需要处理大量的待复制日志,该分布式系统也可较为迅速的完成对待复制日志的处理,有效的提高了处理效率和吞吐量。此外,主节点与所有从节点之间需要交互的消息的数量明显的减小,有效的降低了分布式系统的负载。
本申请实施例提供的实现日志同步的方法应用于分布式系统。图2是本申请实施例提供的分布式系统的结构示意图。如图2所示,该分布式系统包括主节点20和至少一个从节点21,该主节点20与至少一个从节点中的每个从节点21之间通过网络连接,该网络可以是通过有线或无线技术提供的任何网络架构。
可选的,上述主节点20和每个从节点21均可以为具备数据处理、存储以及收发能力的服务器。
结合图2,图3是本发明实施例提供的分布式系统中主节点20与从节点21之间的交互协作示意图。分布式系统中每个从节点21与主节点20的交互过程均相同。为了简洁,图3仅仅示出了其中一个从节点21与主节点20之间的交互。
参见图3,分布式系统中的主节点20包括第一日志列表,该第一日志列表包括至少一个日志。每个日志包括操作变量和该操作变量的值。
优选的,第一日志列表为键值Key-Value表,第一日志列表中的每一日志中的操作变量作为键Key,该操作变量的值作为键值Value。
该主节点20还包括接口电路200、处理器201、存储器202以及定时器203。
接口电路200用于和与该主节点20相连接的从节点21进行通信。存储器202用于存储第一日志列表以及一个或多个软件程序。处理器201用于运行或执行存储在存储器202内的软件程序,以便于实现主节点20的各种功能。
具体的,该分布式系统中的从节点21包括第二日志列表,该第二日志列表也包括至少一个日志,每个日志包括操作变量和该操作变量的值。在主节点20与该从节点21完成数据一致性的处理过程后,该第二日志列表中的内容与第一日志列表中的内容相同。
优选的,第二日志列表的格式与第一日志列表的格式相同,第二日志列表也为键值Key-Value表,第二日志列表中的每一日志中的操作变量作为键Key,该操作变量的值作为键值Value。
从节点21还包括接口电路210、处理器211、存储器212以及定时器213。
接口电路210用于和与该从节点21相连接的主节点20进行通信。存储器212用于存储第二日志列表以及一个或多个软件程序。处理器211用于运行或执行存储在存储器212内的软件程序,以便于实现从节点21的各种功能。
具体的,主节点20中的处理器201在第一时刻确定在第一时间段内采用延迟写方式处理待复制日志后,根据延迟写方式,暂停在第一时间段内执行对所有待复制日志的复制流程,并缓存至少一个第一待复制日志和至少一个第二待复制日志,以生成批量日志,第一待复制日志为主节点在第一时刻之前获取到的且未复制的待复制日志,第二待复制日志为主节点在第一时间段内获取到的且未复制的待复制日志,然后,处理器201在第二时刻通过接口电路200向从节点21发送操作请求消息,该操作请求消息携带有处理器201生成的批量日志。从节点21在接收到操作请求消息后,通过接口电路210向主节点20发送与该操作请求消息对应的响应消息。主节点20中的处理器201在确定用于表示确认的响应消息的数量大于或等于第一预设阈值时,向从节点21发送通知消息,指示该从节点21复制批量日志,这样,该从节点21将批量日志写入第二日志列表中。
图4为本申请实施例提供的一种实现日志同步的方法的流程示意图,该实现日志同步的方法可以应用在图2或图3所示的分布式系统中。
参见图4,该实现日志同步的方法包括:
S401、主节点在第一时刻确定该主节点在第一时间段内采用延迟写方式处理待复制日志。
其中,第一时刻为第一时间段的起始时刻。
S402、主节点根据延迟写方式,暂停在第一时间段内执行对所有待复制日志的复制流程,并缓存至少一个第一待复制日志和至少一个第二待复制日志,以生成批量日志。
其中,第一待复制日志为主节点在第一时刻之前获取到的且未复制的待复制日志,第二待复制日志为主节点在第一时间段内获取到的且未复制的待复制日志。
S403、主节点在第二时刻向每个从节点发送携带批量日志的操作请求消息。
操作请求消息用于请求至少一个从节点中的每个从节点复制批量日志。
S404、每个从节点均向主节点发送与操作请求消息对应的响应消息。
S405、主节点判断第一数量是否大于或等于第一预设阈值,第一数量为用于表示确认的响应消息的数量。
S406、若第一数量大于或等于第一预设阈值,主节点向至少一个从节点发送通知消息。
其中,通知消息用于指示每个从节点复制批量日志。
S407、每个从节点复制批量日志。
本申请实施例中的主节点在每一时间段内采用不同的方式处理待复制日志。对于第一时间段而言,该主节点在处理待复制日志时,首先确定其在第一时间段内处理待复制日志所采用的方式。
可选的,主节点在第一时间段内可以采用延迟写方式处理待复制日志,还可以采用默认方式处理待复制日志,其中,默认方式为主节点依次对其获取到的待复制日志进行复制。
其中,主节点在第一时间段处理待复制日志的方式可以根据该主节点在第一时刻之前获取到的且未复制的待复制日志的数量来确定。具体的确定方法可参考后续描述。
具体的,主节点在第一时间段的起始时刻(即第一时刻)确定该主节点在第一时间段内采用延迟写方式处理待复制日志,即主节点执行S401。
进一步地,在主节点确定出其在第一时间段内采用延迟写方式处理待复制日志之后,主节点根据延迟写方式,暂停该主节点在第一时间段内执行对所有待复制日志的复制流程,并缓存至少一个第一待复制日志和至少一个第二待复制日志,以生成批量日志,即主节点执行S402。
本申请实施例中的每一待复制日志均包括操作变量和该操作变量的值。
优选的,本申请实施例中的每一待复制日志均通过键值Key-Value表来表示。操作变量作为键Key,该操作变量的值作为值Value。
对于至少一个第一待复制日志和至少一个第二待复制日志中的每一个待复制日志而言,若该待复制日志包括操作变量A,在主节点根据延迟写方式缓存该待复制日志的过程中,该主节点需要判断该主节点中已经缓存的待复制日志中是否存在包括操作变量A的第一已缓存待复制日志。
具体的,若已缓存的待复制日志中存在第一已缓存待复制日志,则主节点将第一已缓存待复制日志更新为该待复制日志;若已缓存的待复制日志中未存在第一已缓存待复制日志,则主节点缓存该待复制日志。
其中,若第一已缓存待复制日志包括操作变量A和第一数值,该待复制日志包括操作变量A和第二数值,则上述主节点将第一已缓存待复制日志更新为该待复制日志可以为主节点直接将第一已缓存待复制日志中的操作变量A的值从第一数值替换为第二数值,还可以将第一已缓存待复制日志删除,并缓存该待复制日志。
示例性的,如图5所示,主节点获取到的三个第一待复制日志和两个第二待复制日志分别为:操作变量为X、操作变量X的值为1的第一待复制日志1,操作变量为Y、操作变量Y的值为1的第一待复制日志2,操作变量为B、操作变量B的值为4的第一待复制日志3,操作变量为X、操作变量X的值为23的第二待复制日志1,以及操作变量为B、操作变量B的值为15的第二待复制日志2。主节点根据延迟写方式,先缓存上述三个第一待复制日志,再缓存上述两个第二待复制日志。在缓存操作变量为X、操作变量X的值为23的第二待复制日志1时,主节点确定已缓存的待复制日志中存在包括操作变量X的第一待复制日志1,且该第一待复制日志1中操作变量X的值为1,则该主节点将操作变量为X、操作变量X的值为1的第一待复制日志1删除,并缓存操作变量为X、操作变量X的值为23的第二待复制日志1。同理,主节点将操作变量为B、操作变量B的值为4的第一待复制日志3删除,并缓存操作变量为B、操作变量B的值为15的第二待复制日志2。这样,主节点生成批量日志,该批量日志包括操作变量为Y、操作变量Y的值为1的第一待复制日志2、操作变量为X、操作变量X的值为23的第二待复制日志1以及操作变量为B、操作变量B的值为15的第二待复制日志2。
具体的,主节点在第一时间段的终止时刻向至少一个从节点发送携带批量日志的操作请求消息,也就是说,主节点在第二时刻向至少一个从节点发送携带批量日志的操作请求消息,即主节点执行S403。
其中,本申请实施例中的S404-S407与现有技术相同,此处不再进行详细赘述。
可选的,本申请实施例中的分布式系统包括N(N≥1)个从节点,则S406所涉及到的第一预设阈值可以为N/2,也可以为N/2+2,还可以为其他大于N/2的数值,本申请实施例对此不作具体限定。
进一步地,从上述描述可知,本申请实施例中主节点在第一时间段处理待复制日志的方式可以根据该主节点在第一时刻之前获取到的且未复制的待复制日志的数量来确定。其中,主节点在第一时刻之前获取到的且未复制的待复制日志为第一待复制日志。具体的,主节点在第一时刻确定第一待复制日志的数量,即确定第二数量,若第二数量大于或等于第二预设阈值,则该主节点设置第一标识,第一标识用于指示主节点在第一时间段内采用延迟写方式处理待复制日志。
具体的,结合图4,如图6所示,S401之前,该实现日志同步的方法还包括:
S400a、主节点在第一时刻确定第二数量。
S400b、在第二数量大于或等于第二预设阈值时,主节点设置第一标识。
容易理解的是,本申请实施例中的第一待复制日志为主节点在第一时刻之前获取到的且未复制的待复制日志,因此,第一待复制日志的数量越大,说明该主节点在第一时刻待处理的待复制日志的数量越大,为了有效提高主节点的处理效率和吞吐量,该主节点在其内存中设置第一标识,这样,该主节点根据该第一标识采用延迟写方式处理待复制日志。
可选的,若第二数量小于第二预设阈值,则该主节点设置第二标识,该第二标识用于指示主节点在第一时间段内采用默认方式处理待复制日志,这样,该主节点根据第二标识,依次对至少一个第一待复制日志和至少一个第二待复制日志进行复制。
容易理解的是,若第一待复制日志的数量小于第二预设阈值,则说明该主节点在第一时刻待处理的待复制日志的数量较小,主节点依次对至少一个第一待复制日志和至少一个第二待复制日志进行复制即可,对分布式系统的吞吐量也不会造成很大的影响。其中,主节点依次对至少一个第一待复制日志和至少一个第二待复制日志进行复制的过程可以参考图1,此处不再对戏进行详细赘述。
本申请实施例中的主节点通过缓存该主节点在第一时刻之前获取到的且未复制的待复制日志和该主节点在第一时间段内获取到的且未复制的待复制日志,生成了批量日志,并在第一时间段的终止时刻向至少一个从节点发送携带有批量日志的操作请求消息,这样,主节点不必再逐一对每一个待复制日志进行复制处理,即使分布式系统中需要处理大量的待复制日志,该分布式系统也可较为迅速的完成对待复制日志的处理,有效的提高了处理效率和吞吐量。此外,采用本申请提供的方法,在完成所有日志复制的情况下,主节点与所有从节点之间需要交互的消息的数量明显的减小,有效的降低了分布式系统的负载。
本申请实施例提供一种主节点1,该主节点1用于执行以上一种实现日志同步的方法中的主节点所执行的步骤。所述主节点1可以包括相应步骤所对应的模块。
如图7所示,该主节点1包括处理单元70、发送单元71和接收单元72。
处理单元70,用于在第一时刻确定所述主节点确定在第一时间段内采用延迟写方式处理待复制日志,第一时刻为所述第一时间段的起始时刻,以及用于根据所述延迟写方式,暂停在所述第一时间段内执行对所有待复制日志的复制流程,并缓存至少一个第一待复制日志和至少一个第二待复制日志,以生成批量日志,所述第一待复制日志为所述主节点在第一时刻之前获取到的且未复制的待复制日志,所述第二待复制日志为所述主节点在所述第一时间段内获取到的且未复制的待复制日志。
发送单元71,用于在所述第二时刻向至少一个从节点发送操作请求消息,所述操作请求消息携带所述处理单元70生成的所述批量复制日志,所述操作请求消息用于请求所述至少一个从节点中的每个从节点复制所述批量日志,所述第二时刻为所述第一时间段的终止时刻。
接收单元72,用于接收所述至少一个从节点发送的响应消息。
所述处理单元70,还用于判断第一数量是否大于或等于第一预设阈值,所述第一数量为用于表示确认的响应消息的数量。
所述发送单元71,还用于在所述处理单元70确定所述第一数量大于或等于所述第一预设阈值时,向所述至少一个从节点发送通知消息,所述通知消息用于指示所述每个从节点复制所述批量日志。
进一步地,结合图7,如图8所示,所述处理单元70包括获取模块700和确定模块701。
具体的,所述获取模块700,用于在所述第一时刻获取第一标识,所述第一标识用于指示所述主节点在第一时间段内采用延迟写方式处理待复制日志。
具体的,所述确定模块701,用于根据所述获取模块700获取到的所述第一标识,确定在第一时间段内采用延迟写方式处理待复制日志。
进一步地,所述确定模块701,还用于在所述获取模块700在所述第一时刻获取所述第一标识之前,在所述第一时刻确定第二数量,所述第二数量为所述第一待复制日志的数量。
进一步地,结合图7,如图8所示,所述处理单元70还包括判断模块702。
具体的,所述判断模块702,用于判断所述第二数量是否大于或等于第二预设阈值。
进一步地,结合图7,如图8所示,所述处理单元70还包括设置模块703。
具体的,所述设置模块703,用于若所述判断模块702确定所述第二数量大于或等于所述第二预设阈值,则在所述主节点的内存中设置所述第一标识。
进一步地,所述设置模块703,还用于若所述判断模块702确定所述第二数量小于所述第二预设阈值,则在所述主节点的内存中设置第二标识,所述第二标识用于指示所述主节点在第一时间段内采用默认方式处理待复制日志。
进一步地,所述处理单元70,还用于所述主节点根据所述第二标识,在所述第一时间段内对所述至少一个第二待复制日志和所述至少一个第一待复制日志依次执行复制流程。
进一步地,对于所述至少一个第一待复制日志和所述至少一个第二待复制日志中的每一个待复制日志,所述处理单元70还用于:
获取该待复制日志,该待复制日志包括操作变量;
判断已缓存的待复制日志中是否存在第一已缓存待复制日志,所述第一已缓存待复制日志包括所述操作变量;
若所述已缓存的待复制日志中存在第一已缓存待复制日志,则将所述存在第一已缓存待复制日志更新为该待复制日志;
若所述已缓存的待复制日志中未存在第一已缓存待复制日志,则缓存该待复制日志。
可以理解的是,本申请实施例的主节点1仅为根据该主节点1实现的功能进行的逻辑划分。实际应用中,可以进行上述单元的叠加或拆分。
本申请实施例提供的主节点1所实现的功能与上述实施例提供的一种实现日志同步的方法一一对应,对于该主节点1所实现的更为详细的处理流程,在上述方法实施例中已做详细描述,此处不再详细描述。
本申请另一实施例提供一种主节点,如图9所示,该主节点包括接口电路90、处理器91、存储器92、系统总线93和定时器94。
其中,所述接口电路90、所述处理器91、所述存储器92与所述定时器94之间通过所述系统总线93连接,并完成相互间通信。
图9所示的主节点与图3中的主节点20相同,图3中未示出系统总线93。
本领域技术人员可以理解,图9所示的主节点的结构并不是对主节点的限定,其可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
具体的,当所述主节点运行时,所述主节点执行如图4或图6所示的实施例的实现日志同步的方法。具体的实现日志同步的方法可参见上述如图4或图6所示的实施例中的相关描述,此处不再赘述。
结合上一实施例,本申请实施例中的接口电路90可以为上一实施例中的发送单元71,也可以为上一实施例中的接收单元72。
具体的,接口电路90用于实现该主节点与从节点之间的通信连接。
结合上一实施例,本申请实施例中的存储器92可以为上一实施例中的处理单元70。
具体的,所述存储器92可用于存储软件程序以及应用模块,处理器91通过运行存储在存储器92的软件程序以及应用模块,从而执行主节点的各种功能应用。
存储器92可主要包括存储程序区920和存储数据区921,其中,存储程序区920可存储操作系统、至少一个功能所需的应用程序,比如发送操作请求消息功能等;存储数据区921可存储待复制日志。
其中,所述存储器92可以包括易失性存储器,例如高速随机存取存储器(RAM,Random Access Memory),所述存储器92也可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件,本申请实施例对此不作具体限定。
结合上一实施例,本申请实施例中的处理器91可以为上一实施例中的处理单元70。
具体的,所述处理器91是主节点的控制中心。
所述处理器91利用各种接口和线路连接整个主节点的各个部分,通过运行或执行存储在存储器92内的软件程序和/或应用模块,以及调用存储在存储器92内的数据,执行主节点的各种功能和处理数据,从而对主节点进行整体监控。
可选的,处理器91可以为中央处理器(CPU,Central Processing Unit)。所述处理器91还可以为其他通用处理器、数字信号处理器(DSP,Digital Signal Processing)或者其他可编程逻辑器件或者晶体管逻辑器件、分立硬件组件等,本申请实施例对此不作具体限定。
其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述系统总线93可以包括数据总线、电源总线、控制总线和信号状态总线等。
本申请实施例中为了清楚说明,在图9中将各种总线都示意为系统总线93。
本申请实施例提供一种主节点,主节点通过缓存该主节点在第一时刻之前获取到的且未复制的待复制日志和该主节点在第一时间段内获取到的且未复制的待复制日志,生成了批量日志,并在第一时间段的终止时刻向至少一个从节点发送携带有批量日志的操作请求消息,这样,主节点不必再逐一对每一个待复制日志进行复制处理,即使分布式系统中需要处理大量的待复制日志,该分布式系统也可较为迅速的完成对待复制日志的处理,有效的提高了处理效率和吞吐量。此外,在完成所有日志复制的情况下,主节点与所有从节点之间需要交互的消息的数量明显的减小,有效的降低了分布式系统的负载。
如图4或图6所示的实施例所述实现日志同步的方法如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本领域内的技术人员应明白,本申请的实施例可提供为方法、电子设备、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个包括有程序代码的计算机可读存储介质上实施的计算机程序产品的形式,所述计算机存储介质包括但不限于U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、磁盘存储器、CD-ROM、光学存储器等。
相应的,本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质包括一个或多个程序代码,当主节点中的处理器在执行该程序代码时,该主节点执行如图4或图6所示的实现日志同步的方法。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。
例如,以上所描述的装置实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (11)
1.一种实现日志同步的方法,其特征在于,包括:
主节点在第一时刻确定所述主节点在第一时间段内采用延迟写方式处理待复制日志,所述第一时刻为所述第一时间段的起始时刻;
所述主节点根据所述延迟写方式,暂停在所述第一时间段内执行对所有待复制日志的复制流程,并缓存至少一个第一待复制日志和至少一个第二待复制日志,以生成批量日志,所述第一待复制日志为所述主节点在第一时刻之前获取到的且未复制的待复制日志,所述第二待复制日志为所述主节点在所述第一时间段内获取到的且未复制的待复制日志;
所述主节点在第二时刻向至少一个从节点发送操作请求消息,所述操作请求消息携带所述批量日志,所述操作请求消息用于请求所述至少一个从节点中的每个从节点复制所述批量日志,所述第二时刻为所述第一时间段的终止时刻;
所述主节点接收所述至少一个从节点发送的响应消息;
在确定第一数量大于或等于第一预设阈值时,所述主节点向所述至少一个从节点发送通知消息,所述通知消息用于指示所述每个从节点复制所述批量日志,所述第一数量为用于表示确认的响应消息的数量。
2.根据权利要求1所述的方法,其特征在于,所述主节点在第一时刻确定所述主节点在第一时间段内采用延迟写方式处理待复制日志,包括:
所述主节点在所述第一时刻获取第一标识,所述第一标识用于指示所述主节点在第一时间段内采用延迟写方式处理待复制日志;
所述主节点根据所述第一标识,确定在第一时间段内采用延迟写方式处理待复制日志。
3.根据权利要求2所述的方法,其特征在于,所述主节点在所述第一时刻获取第一标识之前,所述方法还包括:
所述主节点在所述第一时刻确定第二数量,所述第二数量为所述第一待复制日志的数量;
若所述第二数量大于或等于第二预设阈值,则所述主节点在所述主节点的内存中设置所述第一标识。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
若所述第二数量小于所述第二预设阈值,则所述主节点在所述主节点的内存中设置第二标识,所述第二标识用于指示所述主节点在第一时间段内采用默认方式处理待复制日志;
所述主节点根据所述第二标识,在所述第一时间段内对所述至少一个第一待复制日志和所述至少一个第二待复制日志依次执行复制流程。
5.根据权利要求1-3中任意一项所述的方法,其特征在于,对于所述至少一个第一待复制日志和所述至少一个第二待复制日志中的每一个待复制日志,所述主节点缓存该待复制日志的方法包括:
所述主节点获取该待复制日志,该待复制日志包括操作变量;
所述主节点判断已缓存的待复制日志中是否存在第一已缓存待复制日志,所述第一已缓存待复制日志包括所述操作变量;
若所述已缓存的待复制日志中存在第一已缓存待复制日志,则所述主节点将所述第一已缓存待复制日志更新为该待复制日志;
若所述已缓存的待复制日志中未存在第一已缓存待复制日志,则所述主节点缓存该待复制日志。
6.一种主节点,其特征在于,包括:
处理单元,用于在第一时刻确定所述主节点在第一时间段内采用延迟写方式处理待复制日志,第一时刻为所述第一时间段的起始时刻,以及用于根据所述延迟写方式,暂停在所述第一时间段内执行对所有待复制日志的复制流程,并缓存至少一个第一待复制日志和至少一个第二待复制日志,以生成批量日志,所述第一待复制日志为所述主节点在第一时刻之前获取到的且未复制的待复制日志,所述第二待复制日志为所述主节点在所述第一时间段内获取到的且未复制的待复制日志;
发送单元,用于在第二时刻向至少一个从节点发送操作请求消息,所述操作请求消息携带所述处理单元生成的所述批量复制日志,所述操作请求消息用于请求所述至少一个从节点中的每个从节点复制所述批量日志,所述第二时刻为所述第一时间段的终止时刻;
接收单元,用于接收所述至少一个从节点发送的响应消息;
所述处理单元,还用于判断第一数量是否大于或等于第一预设阈值,所述第一数量为用于表示确认的响应消息的数量;
所述发送单元,还用于在所述处理单元确定所述第一数量大于或等于所述第一预设阈值时,向所述至少一个从节点发送通知消息,所述通知消息用于指示所述每个从节点复制所述批量日志。
7.根据权利要求6所述的主节点,其特征在于,所述处理单元包括获取模块和确定模块;
所述获取模块,用于在所述第一时刻获取第一标识,所述第一标识用于指示所述主节点在第一时间段内采用延迟写方式处理待复制日志;
所述确定模块,用于根据所述获取模块获取到的所述第一标识,确定在第一时间段内采用延迟写方式处理待复制日志。
8.根据权利要求7所述的主节点,其特征在于,
所述确定模块,还用于在所述获取模块在所述第一时刻获取所述第一标识之前,在所述第一时刻确定第二数量,所述第二数量为所述第一待复制日志的数量;
所述处理单元还包括判断模块,
所述判断模块,用于判断所述第二数量是否大于或等于第二预设阈值;
所述处理单元还包括设置模块,
所述设置模块,用于若所述判断模块确定所述第二数量大于或等于所述第二预设阈值,则在所述主节点的内存中设置所述第一标识。
9.根据权利要求8所述的主节点,其特征在于,
所述设置模块,还用于若所述判断模块确定所述第二数量小于所述第二预设阈值,则在所述主节点的内存中设置第二标识,所述第二标识用于指示所述主节点在第一时间段内采用默认方式处理待复制日志;
所述处理单元,还用于所述主节点根据所述第二标识,在所述第一时间段内对所述至少一个第二待复制日志和所述至少一个第一待复制日志依次执行复制流程。
10.根据权利要求6-8中任意一项所述的主节点,其特征在于,对于所述至少一个第一待复制日志和所述至少一个第二待复制日志中的每一个待复制日志,所述处理单元还用于:
获取该待复制日志,该待复制日志包括操作变量;
判断已缓存的待复制日志中是否存在第一已缓存待复制日志,所述第一已缓存待复制日志包括所述操作变量;
若所述已缓存的待复制日志中存在第一已缓存待复制日志,则将所述存在第一已缓存待复制日志更新为该待复制日志;
若所述已缓存的待复制日志中未存在第一已缓存待复制日志,则缓存该待复制日志。
11.一种分布式系统,其特征在于,包括如上述权利要求6-10中任意一项所述的主节点以及至少一个从节点,所述主节点与所述至少一个从节点中的每个从节点之间通过网络连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610481891.6A CN107547593B (zh) | 2016-06-27 | 2016-06-27 | 一种实现日志同步的方法、装置及分布式系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610481891.6A CN107547593B (zh) | 2016-06-27 | 2016-06-27 | 一种实现日志同步的方法、装置及分布式系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107547593A true CN107547593A (zh) | 2018-01-05 |
CN107547593B CN107547593B (zh) | 2020-05-08 |
Family
ID=60962098
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610481891.6A Active CN107547593B (zh) | 2016-06-27 | 2016-06-27 | 一种实现日志同步的方法、装置及分布式系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107547593B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110162511A (zh) * | 2018-02-08 | 2019-08-23 | 华为技术有限公司 | 一种日志传输方法及相关设备 |
CN111611128A (zh) * | 2020-05-11 | 2020-09-01 | 网宿科技股份有限公司 | 一种日志处理方法及装置 |
CN117909418A (zh) * | 2024-03-20 | 2024-04-19 | 广东琴智科技研究院有限公司 | 深度学习模型存储一致性方法、计算子系统以及计算平台 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101256526A (zh) * | 2008-03-10 | 2008-09-03 | 清华大学 | 检查点容错技术中文件状态一致性维护的实现方法 |
CN101741911A (zh) * | 2009-12-18 | 2010-06-16 | 中兴通讯股份有限公司 | 基于多副本协同的写操作方法、系统及节点 |
CN103530362A (zh) * | 2013-10-12 | 2014-01-22 | 清华大学 | 一种用于多副本分布式系统的计算机数据读写方法 |
US20140089383A1 (en) * | 2012-09-27 | 2014-03-27 | National Taiwan University | Method and system for automatic detecting and resolving apis |
US20140164831A1 (en) * | 2010-12-23 | 2014-06-12 | Mongodb, Inc. | Method and apparatus for maintaining replica sets |
US20160034555A1 (en) * | 2014-07-31 | 2016-02-04 | Splunk Inc. | Search result replication in a search head cluster |
CN105426439A (zh) * | 2015-11-05 | 2016-03-23 | 腾讯科技(深圳)有限公司 | 一种元数据的处理方法和装置 |
CN105511987A (zh) * | 2015-12-08 | 2016-04-20 | 上海爱数信息技术股份有限公司 | 一种强一致性且高可用的分布式任务管理系统 |
CN105512266A (zh) * | 2015-12-03 | 2016-04-20 | 曙光信息产业(北京)有限公司 | 一种实现分布式数据库操作一致性的方法及装置 |
-
2016
- 2016-06-27 CN CN201610481891.6A patent/CN107547593B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101256526A (zh) * | 2008-03-10 | 2008-09-03 | 清华大学 | 检查点容错技术中文件状态一致性维护的实现方法 |
CN101741911A (zh) * | 2009-12-18 | 2010-06-16 | 中兴通讯股份有限公司 | 基于多副本协同的写操作方法、系统及节点 |
US20140164831A1 (en) * | 2010-12-23 | 2014-06-12 | Mongodb, Inc. | Method and apparatus for maintaining replica sets |
US20140089383A1 (en) * | 2012-09-27 | 2014-03-27 | National Taiwan University | Method and system for automatic detecting and resolving apis |
CN103530362A (zh) * | 2013-10-12 | 2014-01-22 | 清华大学 | 一种用于多副本分布式系统的计算机数据读写方法 |
US20160034555A1 (en) * | 2014-07-31 | 2016-02-04 | Splunk Inc. | Search result replication in a search head cluster |
CN105426439A (zh) * | 2015-11-05 | 2016-03-23 | 腾讯科技(深圳)有限公司 | 一种元数据的处理方法和装置 |
CN105512266A (zh) * | 2015-12-03 | 2016-04-20 | 曙光信息产业(北京)有限公司 | 一种实现分布式数据库操作一致性的方法及装置 |
CN105511987A (zh) * | 2015-12-08 | 2016-04-20 | 上海爱数信息技术股份有限公司 | 一种强一致性且高可用的分布式任务管理系统 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110162511A (zh) * | 2018-02-08 | 2019-08-23 | 华为技术有限公司 | 一种日志传输方法及相关设备 |
CN110162511B (zh) * | 2018-02-08 | 2023-09-01 | 华为技术有限公司 | 一种日志传输方法及相关设备 |
CN111611128A (zh) * | 2020-05-11 | 2020-09-01 | 网宿科技股份有限公司 | 一种日志处理方法及装置 |
CN117909418A (zh) * | 2024-03-20 | 2024-04-19 | 广东琴智科技研究院有限公司 | 深度学习模型存储一致性方法、计算子系统以及计算平台 |
CN117909418B (zh) * | 2024-03-20 | 2024-05-31 | 广东琴智科技研究院有限公司 | 深度学习模型存储一致性方法、计算子系统以及计算平台 |
Also Published As
Publication number | Publication date |
---|---|
CN107547593B (zh) | 2020-05-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108337601A (zh) | 音箱的控制方法及装置 | |
JP2020509445A5 (zh) | ||
CN106470219A (zh) | 计算机集群的扩容和缩容方法及设备 | |
CN108073349B (zh) | 数据的传输方法及装置 | |
CN107547593A (zh) | 一种实现日志同步的方法、装置及分布式系统 | |
CN111858034B (zh) | 一种资源的管理方法、系统、设备以及介质 | |
CN107220263A (zh) | 数据迁移的优化方法、评估方法及处理方法及装置 | |
CN106775946A (zh) | 一种虚拟机快速创建方法 | |
CN109144791A (zh) | 数据转存方法、装置和数据管理服务器 | |
CN103823708B (zh) | 虚拟机读写请求处理的方法和装置 | |
CN107633045A (zh) | 一种云存储服务中租户数据容量的统计方法及其系统 | |
CN107665147A (zh) | 一种移动设备的系统清理方法及移动设备 | |
CN110795226A (zh) | 利用计算机系统处理任务的方法、电子设备和存储介质 | |
CN105335450B (zh) | 数据存储处理方法及装置 | |
CN107169047A (zh) | 一种实现数据缓存的方法及装置 | |
CN107329832B (zh) | 一种数据接收方法及装置 | |
CN110750363B (zh) | 计算机存储管理方法和装置、电子设备和存储介质 | |
CN111506254B (zh) | 分布式存储系统及其管理方法、装置 | |
CN117171209A (zh) | 一种缓存数据清理方法、装置、存储介质和电子设备 | |
CN108804351A (zh) | 一种缓存置换方法以及装置 | |
CN110309224A (zh) | 一种数据复制方法及装置 | |
CN114785662A (zh) | 一种存储管理方法、装置、设备及机器可读存储介质 | |
TWI710954B (zh) | 超融合基礎架構的資料快取方法與節點、機器學習框架及檔案系統代理程式 | |
CN109800076B (zh) | 存储调度方法及装置 | |
CN109522124A (zh) | 存储管理系统加载方法、装置、设备及可读存储介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20211221 Address after: 450046 Floor 9, building 1, Zhengshang Boya Plaza, Longzihu wisdom Island, Zhengdong New Area, Zhengzhou City, Henan Province Patentee after: xFusion Digital Technologies Co., Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd. |