CN114020759A - 一种数据修复方法、装置、设备及存储介质 - Google Patents
一种数据修复方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN114020759A CN114020759A CN202111300362.9A CN202111300362A CN114020759A CN 114020759 A CN114020759 A CN 114020759A CN 202111300362 A CN202111300362 A CN 202111300362A CN 114020759 A CN114020759 A CN 114020759A
- Authority
- CN
- China
- Prior art keywords
- session
- message
- database
- receiving end
- cloud database
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
Abstract
本公开实施例提供了一种数据修复方法、装置、设备及存储介质,其中,该,包括:接收会话发送端发送的会话消息,并存储至云端数据库中;将所述会话消息发送给会话接收端以使所述会话接收端将所述会话消息存储至本端的会话数据库中;将所述云端数据库与所述会话接收端的会话数据库进行差分;基于差分结果确定所述会话发送端与所述会话接收端在会话过程中丢失的会话消息;将丢失的所述会话消息补发至所述会话接收端的会话数据库中。本公开实施例提供的技术方案,可以使会话发送端和会话接收端的会话消息保持一致,避免会话消息的缺失。
Description
技术领域
本公开实施例涉及数据处理技术领域,尤其涉及一种数据修复方法、装置、设备及存储介质。
背景技术
在会话场景中,会话发送端会将会话消息发送至服务端,由服务端将会话消息发送至会话接收端,从而实现会话发送端和会话接收端的会话。
但是由于网络原因或者其他原因,服务端向会话接收端发送会话消息有可能会失败,从而导致会话消息的丢失,从而使会话发送端和会话接收端的会话消息不一致。
发明内容
本公开实施例提供了一种数据修复方法、装置、设备及存储介质,可以使会话发送端和会话接收端的会话消息保持一致,避免会话消息的缺失。
第一方面,本公开实施例提供了一种数据修复方法,包括:
接收会话发送端发送的会话消息,并存储至云端数据库中;
将所述会话消息发送给会话接收端以使所述会话接收端将所述会话消息存储至本端的会话数据库中;
将所述云端数据库与所述会话接收端的会话数据库进行差分;
基于差分结果确定所述会话发送端与所述会话接收端在会话过程中丢失的会话消息;
将丢失的所述会话消息补发至所述会话接收端的会话数据库中。
第二方面,本公开实施例提供了一种数据修复方法,包括:
会话发送端将会话消息发送至服务端;
所述服务端接收所述会话发送端发送的会话消息,并存储至云端数据库中;
所述服务端将所述会话消息发送给会话接收端;
所述会话接收端接收所述会话消息,并将所述会话消息存储至本端的会话数据库中;
所述服务端将所述云端数据库与所述会话接收端的会话数据库进行差分;
所述服务端基于差分结果确定所述会话发送端与所述会话接收端在会话过程中丢失的会话消息;
所述服务端将丢失的所述会话消息补发至所述会话接收端的会话数据库中。
第三方面,本公开实施例提供了一种数据修复装置,包括:
接收模块,用于接收会话发送端发送的会话消息,并存储至云端数据库中;
发送模块,用于将所述会话消息发送给会话接收端以使所述会话接收端将所述会话消息存储至本端的会话数据库中;
差分模块,用于将所述云端数据库与所述会话接收端的会话数据库进行差分;
确定模块,用于基于差分结果确定所述会话发送端与所述会话接收端在会话过程中丢失的会话消息;
补发模块,用于将丢失的所述会话消息补发至所述会话接收端的会话数据库中。
第四方面,本公开实施例提供了一种电子设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本公开实施例提供的方法。
第五方面,本公开实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开实施例提供的方法。
本公开实施例提供的技术方案,服务端通过将云端数据库与会话接收端的会话数据库进行差分,并基于差分结果确定会话发送端与会话接收端在会话过程中丢失的会话消息,将丢失的会话消息补发至会话接收端的会话数据库中,可以使会话发送端和会话接收端的会话消息保持一致,避免会话消息的缺失。
附图说明
图1是本公开实施例提供的一种数据修复方法流程图;
图2是本公开实施例提供的一种数据修复方法流程图;
图3是本公开实施例提供的一种数据修复方法流程图;
图4是本公开实施例提供的一种数据修复方法流程图;
图5是本公开实施例提供的一种数据修复装置结构框图;
图6是本公开实施例提供的一种电子设备结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
图1是本公开实施例提供的一种数据修复方法流程图,所述方法可以由数据修复装置来执行,所述装置可以由软件和/或硬件来执行,所述装置可以配置在服务端,服务端可以是服务器等电子设备,所述方法可以应用于会话场景中。
如图1所示,本公开实施例提供的技术方案包括:
S110:接收会话发送端发送的会话消息,并存储至云端数据库中。
在本公开实施例中,在两个用户会话场景中,会话发送端将会话消息发送至服务端,服务端接收会话发送端发送的会话消息,并将会话消息存储至云端数据库中。其中,会话发送端可以是会话发送的设备,或者可以是会话发送的客户端。
S120:将所述会话消息发送给会话接收端以使所述会话接收端将所述会话消息存储至本端的会话数据库中。
在本公开实施例中,会话接收端可以是会话接收的设备,或者可以是会话接收的客户端。
在本公开实施例中,服务端可以将会话消息发送给会话接收端,会话接收端将会话消息存储到本端的会话数据库中。在会话正常的情况下,会话发送端、服务端以及会话接收端的会话消息是一致的,在服务端向会话接收端发送会话消息的过程中,由于网络原因,或者技术手段等原因可能会导致服务端没有将会话消息成功发送到会话接收端,但是服务端会错误判断已经发送到了会话接收端,从而导致会话发送端和会话接收端会话消息不一致,故服务端需要对云端数据库和会话接收端的会话数据库进行差分,从而确定是否有丢失的会话消息,进而对丢失的会话消息进行补发。
S130:将所述云端数据库与所述会话接收端的会话数据库进行差分。
在本公开实施例中,服务端对云端数据库与会话接收端的会话数据库差分的触发条件可以是间隔一段时间,或者可以是监测到故障,或者其他触发条件。
在本公开实施例的一个实施方式中,可选的,将所述云端数据库与所述会话接收端的会话数据库进行差分,包括:将所述云端数据库与所述会话接收端的会话数据库进行会话差分;若所述云端数据库与所述会话接收端的会话数据库中的会话相同,对每个会话中的会话消息进行差分。
具体的,在会话场景中,可能会创建了多个会话,可以先将云端数据库与会话接收端的会话数据库进行会话差分,即比较两个数据库中的会话是否相同,若会话相同,则比较每个会话中的会话消息是否相同,从而分层级找到丢失的会话消息,可以提高差分效率。其中,会话可以通过会话ID是否相同来进行比较,会话消息可以通过会话消息ID是否相同来进行比较。
在本公开实施例的一个实施方式中,可选的,所述对每个会话中的会话消息进行差分,包括:对每个会话中的会话消息进行分段差分;针对所述云端数据库和会话接收端的会话数据库中的目标会话消息段,比较第一会话消息以及最后一个会话消息均是否相同;若否,比较所述目标会话消息段的中间会话消息是否相同;若否,将所述第一个会话消息到所述中间会话消息的会话消息段作为目标会话消息段,或者将所述中间会话消息到所述最后一个会话消息的会话消息段作为目标会话消息段,返回比较第一会话消息以及最后一个会话消息均是否相同的操作,直至查找完毕。
在本公开实施例中,可以对每个会话中的会话消息进行分段差分,例如,可以先查看1-100条会话消息的ID是否相同,依次查看101-200条会话消息的ID是否相同,以此类推。针对一个目标会话消息段,若比较两个数据库中该目标会话消息段中第一个会话消息不同,且最后一个会话消息也不同,则可以查看中间会话消息是否相同,以此类推,从而找到不相同的会话消息,确定丢失的会话消息。例如,在一个会话消息段,若发现第101条会话消息和第200条会话消息的ID均不相同,可以查看中间会话消息(第150条会话消息)是否相同,若第150条的会话消息的ID相同,则从第101条会话消息和第150条会话消息中选择中间会话消息,或者从第150条会话消息和第200条会话消息中选择中间会话消息,查看该中间会话消息的ID是否相同,从而逐次找到两个数据库在该会话消息段中不相同的会话消息。
由此,通过对每个会话中的会话消息进行分段差分,可以提高会话消息的差分效率,提高找到丢失的会话消息的速度。
S140:基于差分结果确定所述会话发送端与所述会话接收端在会话过程中丢失的会话消息。
在本公开实施例中,差分结果可以是将云端数据库与会话接收端的会话数据进行差分得到的结果,包括两个数据库中会话是否相同的情况,会话中的会话消息是否相同的情况。
在本公开实施例的一个实施方式中,可选的,基于差分结果确定所述会话发送端与所述会话接收端在会话过程中丢失的会话消息,包括:若会话接收端的会话数据库相对于所述云端数据库丢失了第一目标会话,将所述第一目标会话对应的会话消息作为所述会话发送端与所述会话接收端在会话过程中丢失的会话消息;若所述会话接收端的会话数据库与所述云端数据库的会话相同,且第二目标会话中丢失了目标会话消息,将所述目标会话消息作为所述会话发送端与所述会话接收端在会话过程中丢失的会话消息。
具体的,若会话接收端的会话数据库相对于云端数据库丢失了一个会话,则表明该会话中的所有会话消息是缺失,则将该会话中的会话消息作为会话过程中丢失的会话消息,若会话接收端的会话数据库与云端数据库的会话相同,但在某个会话中缺失了某个会话消息,该将该会话消息作为会话过程中丢失的会话消息,从而可以实现对丢失的会话消息的确定,便于后续补发。
S150:将丢失的所述会话消息补发至所述会话接收端的会话数据库中。
在本公开实施例中,服务端将丢失的会话消息补发至会话接收端以使会话接收端将该丢失的会话消息存储至本端的会话数据库中,可以保证会话发送端、服务端、会话接收端的会话消息的一致,可以避免会话过程中会话消息缺失。
本公开实施例提供的技术方案,服务端通过将云端数据库与会话接收端的会话数据库进行差分,并基于差分结果确定会话发送端与会话接收端在会话过程中丢失的会话消息,将丢失的会话消息补发至会话接收端的会话数据库中,可以使会话发送端和会话接收端的会话消息保持一致,避免会话消息的缺失。
图2是本公开实施例提供的一种标题显示方法流程图,本实施例中,本实施例中的方案可以与上述实施例中的一个或者多个可选方案组合。
在本实施例中,可选的,所述将所述云端数据库与会话接收端的会话数据库进行差分,包括:
当监测到用户浏览设定会话消息时,将所述云端数据库和所述会话接收端的会话数据库中的对应会话消息进行差分。
如图2所示,本公开实施例提供的技术方案包括:
S210:接收会话发送端发送的会话消息,并存储至云端数据库中。
S220:将所述会话消息发送给会话接收端以使所述会话接收端将所述会话消息存储至本端的会话数据库中。
其中,S210-S220的介绍可以参考上述实施例的介绍。
S230:当监测到用户浏览设定会话消息时,将所述云端数据库和所述会话接收端的会话数据库中的对应会话消息进行差分。
在本公开实施例中,当会话接收端的用户想要浏览设定会话消息时,可以触发浏览设定会话消息的操作,会话接收端会向服务端发送请求,服务端基于该请求将云端数据库与会话接收端的会话数据库中的对应会话消息进行差分。其中,设定会话消息可以是一条或者多条会话消息。
举例说明,当用户想要浏览某个会话的1-100条会话消息时,会话接收端向服务端发送请求,服务端基于该请求将云端数据库与会话接收端的会话数据库中该会话下的1-100条会话消息进行差分,从而找到会话过程中丢失的会话消息,通过服务端将丢失的会话补发至会话接收端的会话数据库,在用户浏览1-100条会话消息时,可以从本端的会话数据库中查看完整的会话消息。
由此,通过监测到用户浏览设定会话消息时,将云端数据库和会话接收端的会话数据库中的对应会话消息进行差分,可以使用户查看完整的会话消息,保证会话接收端和会话发送端的会话消息的一致。
S240:基于差分结果确定所述会话发送端与所述会话接收端在会话过程中丢失的会话消息。
S250:将丢失的所述会话消息补发至所述会话接收端的会话数据库中。
图3是本公开实施例提供的一种数据修复方法流程图,在本实施例中,本实施例中的方案可以与上述实施例中的一个或者多个可选方案组合。
在本实施例中,可选的,所述将所述云端数据库与会话接收端的会话数据库进行差分,包括:
间隔设定时间对所述云端数据库与所述会话接收端的会话数据库进行差分;或者,
在监测到会话故障的情况下,对所述云端数据库与所述会话接收端的会话数据库进行差分。
如图3所示,本公开实施例提供的技术方案包括:
S310:接收会话发送端发送的会话消息,并存储至云端数据库中。
S320:将所述会话消息发送给会话接收端以使所述会话接收端将所述会话消息存储至本端的会话数据库中。
S330:间隔设定时间对所述云端数据库与所述会话接收端的会话数据库进行差分;或者,在监测到会话故障的情况下,对所述云端数据库与所述会话接收端的会话数据库进行差分。
在本公开实施例中,在服务端可以设置定时器,可以间隔设定时间对云端数据库和会话接收端的会话数据库进行差分;其中,设定时间可以根据会话需要进行设定,或者可以根据外部的网络条件进行设定。通过间隔设定时间对云端数据库与会话接收端的会话数据库进行差分,可以定时监测丢失的会话消息,从而进行补发,保证两端会话消息的一致性。
在本公开实施例中,会话故障可以是网络故障,或者技术故障等,会话故障可以导致服务端向会话接收端发送会话消息时导致会话消息的丢失,故在监测到会话故障情况下,需要对云端数据库与会话接收端的会话数据库进行差分,从而确定丢失的会话消息,并进行补发,保证两端会话消息的一致性,保证正常的会话。
S340:基于差分结果确定所述会话发送端与所述会话接收端在会话过程中丢失的会话消息。
S350:将丢失的所述会话消息补发至所述会话接收端的会话数据库中。
图4是本公开实施例提供的一种数据修复方法流程图,所述方法可以由会话发送端、服务端和会话接收端三者构成的系统来执行。
如图4所示,本公开实施例提供的方法可以包括:
S410:会话发送端将会话消息发送至服务端。
S420:所述服务端接收所述会话发送端发送的会话消息,并存储至云端数据库中。
S430:所述服务端将所述会话消息发送至会话接收端。
S440:所述会话接收端接收所述会话消息,并将所述会话消息存储至本端的会话数据库中。
S450:所述服务端将所述云端数据库与所述会话接收端的会话数据库进行差分。
S460:所述服务端基于差分结果确定所述会话发送端与所述会话接收端在会话过程中丢失的会话消息。
S470:所述服务端将丢失的所述会话消息补发至所述会话接收端的会话数据库中。
其中,S410-S470的介绍可以参考上述实施例的介绍。
可选的,将所述云端数据库与会话接收端的会话数据库进行差分,包括:
将所述云端数据库与所述会话接收端的会话数据库进行会话差分;
若所述云端数据库与所述会话接收端的会话数据库中的会话相同,对每个会话中的会话消息进行差分。
可选的,对每个会话中的会话消息进行差分,包括:
对每个会话中的会话消息进行分段差分;
针对所述云端数据库和会话接收端的会话数据库中的目标会话消息段,比较第一会话消息以及最后一个会话消息均是否相同;
若否,比较所述目标会话消息段的中间会话消息是否相同;
若否,将所述第一个会话消息到所述中间会话消息的会话消息段作为目标会话消息段,或者将所述中间会话消息到所述最后一个会话消息的会话消息段作为目标会话消息段,返回比较第一会话消息以及最后一个会话消息均是否相同的操作,直至查找完毕。
可选的,基于差分结果确定所述会话发送端与所述会话接收端在会话过程中丢失的会话消息,包括:
若会话接收端的会话数据库相对于所述云端数据库丢失了第一目标会话,将所述第一目标会话对应的会话消息作为所述会话发送端与所述会话接收端在会话过程中丢失的会话消息;
若所述会话接收端的会话数据库与所述云端数据库的会话相同,且第二目标会话中丢失了目标会话消息,将所述目标会话消息作为所述会话发送端与所述会话接收端在会话过程中丢失的会话消息。
可选的,将所述云端数据库与会话接收端的会话数据库进行差分,包括:
间隔设定时间对所述云端数据库与所述会话接收端的会话数据库进行差分;或者,
在监测到会话故障的情况下,对所述云端数据库与所述会话接收端的会话数据库进行差分。
可选的,将所述云端数据库与会话接收端的会话数据库进行差分,包括:
当监测到用户浏览设定会话消息时,将所述云端数据库和所述会话接收端的会话数据库中的对应会话消息进行差分。
本公开实施例提供的技术方案,服务端通过将云端数据库与会话接收端的会话数据库进行差分,并基于差分结果确定会话发送端与会话接收端在会话过程中丢失的会话消息,将丢失的会话消息补发至会话接收端的会话数据库中,可以使会话发送端和会话接收端的会话消息保持一致,避免会话消息的缺失。
图5是本公开实施例提供的一种数据修复装置结构框图,如图5所示,所述装置包括接收模块510、发送模块520、差分模块530、确定模块540和补发模块550。
接收模块510,用于接收会话发送端发送的会话消息,并存储至云端数据库中;
发送模块520,用于将所述会话消息发送给会话接收端以使所述会话接收端将所述会话消息存储至本端的会话数据库中;
差分模块530,用于将所述云端数据库与所述会话接收端的会话数据库进行差分;
确定模块540,用于基于差分结果确定所述会话发送端与所述会话接收端在会话过程中丢失的会话消息;
补发模块550,用于将丢失的所述会话消息补发至所述会话接收端的会话数据库中。
可选的,将所述云端数据库与会话接收端的会话数据库进行差分,包括:
将所述云端数据库与所述会话接收端的会话数据库进行会话差分;
若所述云端数据库与所述会话接收端的会话数据库中的会话相同,对每个会话中的会话消息进行差分。
可选的,对每个会话中的会话消息进行差分,包括:
对每个会话中的会话消息进行分段差分;
针对所述云端数据库和会话接收端的会话数据库中的目标会话消息段,比较第一会话消息以及最后一个会话消息均是否相同;
若否,比较所述目标会话消息段的中间会话消息是否相同;
若否,将所述第一个会话消息到所述中间会话消息的会话消息段作为目标会话消息段,或者将所述中间会话消息到所述最后一个会话消息的会话消息段作为目标会话消息段,返回比较第一会话消息以及最后一个会话消息均是否相同的操作,直至查找完毕。
可选的,基于差分结果确定所述会话发送端与所述会话接收端在会话过程中丢失的会话消息,包括:
若会话接收端的会话数据库相对于所述云端数据库丢失了第一目标会话,将所述第一目标会话对应的会话消息作为所述会话发送端与所述会话接收端在会话过程中丢失的会话消息;
若所述会话接收端的会话数据库与所述云端数据库的会话相同,且第二目标会话中丢失了目标会话消息,将所述目标会话消息作为所述会话发送端与所述会话接收端在会话过程中丢失的会话消息。
可选的,将所述云端数据库与会话接收端的会话数据库进行差分,包括:
间隔设定时间对所述云端数据库与所述会话接收端的会话数据库进行差分;或者,
在监测到会话故障的情况下,对所述云端数据库与所述会话接收端的会话数据库进行差分。
可选的,将所述云端数据库与会话接收端的会话数据库进行差分,包括:
当监测到用户浏览设定会话消息时,将所述云端数据库和所述会话接收端的会话数据库中的对应会话消息进行差分。
上述装置可执行本公开任意实施例所提供的方法,具备执行方法相应的功能模块和有益效果。
图6是本公开实施例提供的一种电子设备结构示意图,如图6所示该设备包括:
一个或多个处理器610,图6中以一个处理器610为例;
存储器620;
所述设备还可以包括:输入装置630和输出装置640。
所述设备中的处理器610、存储器620、输入装置630和输出装置640可以通过总线或者其他方式连接,图6中以通过总线连接为例。
存储器620作为一种非暂态计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本公开实施例中的一种数据修复方法对应的程序指令/模块(例如,附图5所示的接收模块510、发送模块520、差分模块530、确定模块540和补发模块550)。处理器610通过运行存储在存储器620中的软件程序、指令以及模块,从而执行计算机设备的各种功能应用以及数据处理,即实现上述方法实施例的一种数据修复方法,即:
接收会话发送端发送的会话消息,并存储至云端数据库中;
将所述会话消息发送给会话接收端以使所述会话接收端将所述会话消息存储至本端的会话数据库中;
将所述云端数据库与所述会话接收端的会话数据库进行差分;
基于差分结果确定所述会话发送端与所述会话接收端在会话过程中丢失的会话消息;
将丢失的所述会话消息补发至所述会话接收端的会话数据库中。
存储器620可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器620可以包括高速随机存取存储器,还可以包括非暂态性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态性固态存储器件。在一些实施例中,存储器620可选包括相对于处理器610远程设置的存储器,这些远程存储器可以通过网络连接至终端设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置630可用于接收输入的数字或字符信息,以及产生与计算机设备的用户设置以及功能控制有关的键信号输入。输出装置640可包括显示屏等显示设备。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:
接收会话发送端发送的会话消息,并存储至云端数据库中;
将所述会话消息发送给会话接收端以使所述会话接收端将所述会话消息存储至本端的会话数据库中;
将所述云端数据库与所述会话接收端的会话数据库进行差分;
基于差分结果确定所述会话发送端与所述会话接收端在会话过程中丢失的会话消息;
将丢失的所述会话消息补发至所述会话接收端的会话数据库中。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。描述于本公开实施例中所涉及到的模块、单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块、单元的名称在某种情况下并不构成对该模块或单元本身的限定。
根据本公开的一个或多个实施例,【示例1】提供了一种数据修复方法,包括:
接收会话发送端发送的会话消息,并存储至云端数据库中;
将所述会话消息发送给会话接收端以使所述会话接收端将所述会话消息存储至本端的会话数据库中;
将所述云端数据库与所述会话接收端的会话数据库进行差分;
基于差分结果确定所述会话发送端与所述会话接收端在会话过程中丢失的会话消息;
将丢失的所述会话消息补发至所述会话接收端的会话数据库中。
根据本公开的一个或多个实施例,【示例2】提供了示例1的方法,所述将所述云端数据库与会话接收端的会话数据库进行差分,包括:
将所述云端数据库与所述会话接收端的会话数据库进行会话差分;
若所述云端数据库与所述会话接收端的会话数据库中的会话相同,对每个会话中的会话消息进行差分。
根据本公开的一个或多个实施例,【示例3】提供了示例1的方法,所述对每个会话中的会话消息进行差分,包括:
对每个会话中的会话消息进行分段差分;
针对所述云端数据库和所述会话接收端的会话数据库中的目标会话消息段,比较第一个会话消息以及最后一个会话消息均是否相同;
若否,比较所述目标会话消息段的中间会话消息是否相同;
若否,将所述第一个会话消息到所述中间会话消息的会话消息段作为目标会话消息段,或者将所述中间会话消息到所述最后一个会话消息的会话消息段作为目标会话消息段,返回比较第一会话消息以及最后一个会话消息均是否相同的操作,直至查找完毕。
根据本公开的一个或多个实施例,【示例4】提供了示例1的方法,所述基于差分结果确定所述会话发送端与所述会话接收端在会话过程中丢失的会话消息,包括:
若所述会话接收端的会话数据库相对于所述云端数据库丢失了第一目标会话,将所述第一目标会话对应的会话消息作为所述会话发送端与所述会话接收端在会话过程中丢失的会话消息;
若所述会话接收端的会话数据库与所述云端数据库的会话相同,且第二目标会话中丢失了目标会话消息,将所述目标会话消息作为所述会话发送端与所述会话接收端在会话过程中丢失的会话消息。
根据本公开的一个或多个实施例,【示例5】提供了示例1的方法,所述将所述云端数据库与会话接收端的会话数据库进行差分,包括:
间隔设定时间对所述云端数据库与所述会话接收端的会话数据库进行差分;或者,
在监测到会话故障的情况下,对所述云端数据库与所述会话接收端的会话数据库进行差分。
根据本公开的一个或多个实施例,【示例6】提供了示例1的方法,所述将所述云端数据库与会话接收端的会话数据库进行差分,包括:
当监测到用户浏览设定会话消息时,将所述云端数据库和所述会话接收端的会话数据库中的对应会话消息进行差分。
根据本公开的一个或多个实施例,【示例7】提供了一种数据修复方法,包括:
会话发送端将会话消息发送至服务端;
所述服务端接收所述会话发送端发送的会话消息,并存储至云端数据库中;
所述服务端将所述会话消息发送给所述会话接收端;
所述会话接收端接收所述会话消息,并将所述会话消息存储至本端的会话数据库中;
所述服务端将所述云端数据库与所述会话接收端的会话数据库进行差分;
所述服务端基于差分结果确定所述会话发送端与所述会话接收端在会话过程中丢失的会话消息;
所述服务端将丢失的所述会话消息补发至所述会话接收端的会话数据库中。
根据本公开的一个或多个实施例,【示例8】提供了一种数据修复装置,包括:
接收模块,用于接收会话发送端发送的会话消息,并存储至云端数据库中;
发送模块,用于将所述会话消息发送给会话接收端以使所述会话接收端将所述会话消息存储至本端的会话数据库中;
差分模块,用于将所述云端数据库与所述会话接收端的会话数据库进行差分;
确定模块,用于基于差分结果确定所述会话发送端与所述会话接收端在会话过程中丢失的会话消息;
补发模块,用于将丢失的所述会话消息补发至所述会话接收端的会话数据库中。
根据本公开的一个或多个实施例,【示例9】提供了示例8的装置,将所述云端数据库与会话接收端的会话数据库进行差分,包括:
将所述云端数据库与所述会话接收端的会话数据库进行会话差分;
若所述云端数据库与所述会话接收端的会话数据库中的会话相同,对每个会话中的会话消息进行差分。
根据本公开的一个或多个实施例,【示例10】提供了示例9的装置,包括:
对每个会话中的会话消息进行分段差分;
针对所述云端数据库和会话接收端的会话数据库中的目标会话消息段,比较第一会话消息以及最后一个会话消息均是否相同;
若否,比较所述目标会话消息段的中间会话消息是否相同;
若否,将所述第一个会话消息到所述中间会话消息的会话消息段作为目标会话消息段,或者将所述中间会话消息到所述最后一个会话消息的会话消息段作为目标会话消息段,返回比较第一会话消息以及最后一个会话消息均是否相同的操作,直至查找完毕。
根据本公开的一个或多个实施例,【示例11】提供了示例8的装置,基于差分结果确定所述会话发送端与所述会话接收端在会话过程中丢失的会话消息,包括:
若会话接收端的会话数据库相对于所述云端数据库丢失了第一目标会话,将所述第一目标会话对应的会话消息作为所述会话发送端与所述会话接收端在会话过程中丢失的会话消息;
若所述会话接收端的会话数据库与所述云端数据库的会话相同,且第二目标会话中丢失了目标会话消息,将所述目标会话消息作为所述会话发送端与所述会话接收端在会话过程中丢失的会话消息。
根据本公开的一个或多个实施例,【示例12】提供了示例8的装置,将所述云端数据库与会话接收端的会话数据库进行差分,包括:
间隔设定时间对所述云端数据库与所述会话接收端的会话数据库进行差分;或者,
在监测到会话故障的情况下,对所述云端数据库与所述会话接收端的会话数据库进行差分。
根据本公开的一个或多个实施例,【示例13】提供了示例8的装置,将所述云端数据库与会话接收端的会话数据库进行差分,包括:
当监测到用户浏览设定会话消息时,将所述云端数据库和所述会话接收端的会话数据库中的对应会话消息进行差分。
根据本公开的一个或多个实施例,【示例14】提供了一种电子设备,包括存储器、处理装置及存储在存储器上并可在处理装置上运行的计算机程序,处理装置执行程序时实现如示例1-6中任一所述的数据修复方法。
根据本公开的一个或多个实施例,【示例15】提供了一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行如示例1-6中任一所述的数据修复方法。
注意,上述仅为本公开的较佳实施例及所运用技术原理。本领域技术人员会理解,本公开不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本公开的保护范围。因此,虽然通过以上实施例对本公开进行了较为详细的说明,但是本公开不仅仅限于以上实施例,在不脱离本公开构思的情况下,还可以包括更多其他等效实施例,而本公开的范围由所附的权利要求范围决定。
Claims (10)
1.一种数据修复方法,其特征在于,包括:
接收会话发送端发送的会话消息,并存储至云端数据库中;
将所述会话消息发送给会话接收端以使所述会话接收端将所述会话消息存储至本端的会话数据库中;
将所述云端数据库与所述会话接收端的会话数据库进行差分;
基于差分结果确定所述会话发送端与所述会话接收端在会话过程中丢失的会话消息;
将丢失的所述会话消息补发至所述会话接收端的会话数据库中。
2.根据权利要求1所述的方法,其特征在于,所述将所述云端数据库与会话接收端的会话数据库进行差分,包括:
将所述云端数据库与所述会话接收端的会话数据库进行会话差分;
若所述云端数据库与所述会话接收端的会话数据库中的会话相同,对每个会话中的会话消息进行差分。
3.根据权利要求2所述的方法,其特征在于,所述对每个会话中的会话消息进行差分,包括:
对每个会话中的会话消息进行分段差分;
针对所述云端数据库和所述会话接收端的会话数据库中的目标会话消息段,比较第一个会话消息以及最后一个会话消息均是否相同;
若否,比较所述目标会话消息段的中间会话消息是否相同;
若否,将所述第一个会话消息到所述中间会话消息的会话消息段作为目标会话消息段,或者将所述中间会话消息到所述最后一个会话消息的会话消息段作为目标会话消息段,返回比较第一会话消息以及最后一个会话消息均是否相同的操作,直至查找完毕。
4.根据权利要求1所述的方法,其特征在于,所述基于差分结果确定所述会话发送端与所述会话接收端在会话过程中丢失的会话消息,包括:
若所述会话接收端的会话数据库相对于所述云端数据库丢失了第一目标会话,将所述第一目标会话对应的会话消息作为所述会话发送端与所述会话接收端在会话过程中丢失的会话消息;
若所述会话接收端的会话数据库与所述云端数据库的会话相同,且第二目标会话中丢失了目标会话消息,将所述目标会话消息作为所述会话发送端与所述会话接收端在会话过程中丢失的会话消息。
5.根据权利要求1所述的方法,其特征在于,所述将所述云端数据库与会话接收端的会话数据库进行差分,包括:
间隔设定时间对所述云端数据库与所述会话接收端的会话数据库进行差分;或者,
在监测到会话故障的情况下,对所述云端数据库与所述会话接收端的会话数据库进行差分。
6.根据权利要求1所述的方法,其特征在于,所述将所述云端数据库与会话接收端的会话数据库进行差分,包括:
当监测到用户浏览设定会话消息时,将所述云端数据库和所述会话接收端的会话数据库中的对应会话消息进行差分。
7.一种数据修复方法,其特征在于,包括:
会话发送端将会话消息发送至服务端;
所述服务端接收所述会话发送端发送的会话消息,并存储至云端数据库中;
所述服务端将所述会话消息发送给所述会话接收端;
所述会话接收端接收所述会话消息,并将所述会话消息存储至本端的会话数据库中;
所述服务端将所述云端数据库与所述会话接收端的会话数据库进行差分;
所述服务端基于差分结果确定所述会话发送端与所述会话接收端在会话过程中丢失的会话消息;
所述服务端将丢失的所述会话消息补发至所述会话接收端的会话数据库中。
8.一种数据修复装置,其特征在于,包括:
接收模块,用于接收会话发送端发送的会话消息,并存储至云端数据库中;
发送模块,用于将所述会话消息发送给会话接收端以使所述会话接收端将所述会话消息存储至本端的会话数据库中;
差分模块,用于将所述云端数据库与所述会话接收端的会话数据库进行差分;
确定模块,用于基于差分结果确定所述会话发送端与所述会话接收端在会话过程中丢失的会话消息;
补发模块,用于将丢失的所述会话消息补发至所述会话接收端的会话数据库中。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111300362.9A CN114020759A (zh) | 2021-11-04 | 2021-11-04 | 一种数据修复方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111300362.9A CN114020759A (zh) | 2021-11-04 | 2021-11-04 | 一种数据修复方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114020759A true CN114020759A (zh) | 2022-02-08 |
Family
ID=80061228
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111300362.9A Pending CN114020759A (zh) | 2021-11-04 | 2021-11-04 | 一种数据修复方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114020759A (zh) |
-
2021
- 2021-11-04 CN CN202111300362.9A patent/CN114020759A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3386150B1 (en) | Terminal failure processing method, device and system | |
CN108696589B (zh) | 区块链数据传输方法、装置、设备和存储介质 | |
CN106598633B (zh) | 配置文件的更新方法、客户端及服务器 | |
CN109614439B (zh) | 数据同步方法、装置、电子设备及存储介质 | |
CN110166562B (zh) | 数据同步的方法、装置、存储介质和电子设备 | |
CN107040563B (zh) | 异步服务处理方法及服务器 | |
CN112584350B (zh) | 处理信息的方法、装置、设备及可读存储介质 | |
CN112087475B (zh) | 一种云平台组件应用的消息推送方法、装置及消息服务器 | |
CN110912805B (zh) | 消息读取状态的同步方法、终端、服务端及系统 | |
CN112433885A (zh) | 区块链共识处理方法及装置、电子设备、存储介质 | |
CN111935497B (zh) | 一种用于交警系统的视频流管理方法和数据服务器 | |
CN109218338B (zh) | 信息处理系统、方法和装置 | |
US11190301B2 (en) | Method and device for setting out-of-order value of network | |
CN104767589A (zh) | 一种信息发送方法及装置 | |
CN112650592A (zh) | 一种基于zookeeper的任务负载均衡及高可用系统 | |
CN114020759A (zh) | 一种数据修复方法、装置、设备及存储介质 | |
CN115297447B (zh) | 一种长短信合并方法、系统、设备及存储介质 | |
CN114257632B (zh) | 断线重连的方法、装置、电子设备及可读存储介质 | |
CN114338477B (zh) | 一种通信链路监控方法、装置、设备及存储介质 | |
CN111918236B (zh) | 物联网安防传感器寻网方法、装置、设备及存储介质 | |
CN114253924A (zh) | 一种同步方法、设备和存储介质 | |
CN113360348A (zh) | 异常请求处理方法、装置、电子设备和存储介质 | |
CN108574622B (zh) | 一种基于xmpp的即时消息处理方法及装置 | |
CN113742426A (zh) | 一种数据同步方法、装置、设备、服务器及存储介质 | |
CN110971535A (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 |