掌桥专利:专业的专利平台
掌桥专利
首页

数据同步方法、装置、电子设备及储存介质

文献发布时间:2023-06-19 18:29:06


数据同步方法、装置、电子设备及储存介质

技术领域

本发明涉及数据处理领域,特别是涉及一种数据同步方法、装置、电子设备及存储介质。

背景技术

随着医疗信息化的发展,HIS(Hospital Information System,医疗信息系统)的应用越来越广泛,医院结构在新老HIS的过渡阶段,需要在并行运行过程中将旧系统的业务数据同步至新系统中。

目前,在一个系统有更新数据时,其数据库中的触发器会将这些数据转换并生成日志表,并发送给另一个系统的数据库,该数据库对日志表进行读取,完成数据同步。

现有技术中至少存在如下问题:HIS中数据较多样,频繁调用触发器增加了数据库维护的复杂性,进而使数据同步的维护工作更艰难。

发明内容

鉴于上述问题,提出了本申请实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种数据同步方法,以使数据同步的维护工作更便捷。

相应的,本申请实施例还提供了一种数据同步装置、一种电子设备以及一种存储介质,用以保证上述方法的实现及应用。

第一方面,本申请实施例提供了一种数据同步方法,应用于数据同步装置,所述数据同步装置分别与第一服务端和第二服务端通信连接,所述方法包括:接收所述第一服务端发送的数据包,所述数据包包括:原始数据、同步标识号和授权标识;响应于所述授权标识,获取与所述同步标识号对应的同步脚本,所述同步脚本包括针对所述原始数据的转换规则;运行所述同步脚本,基于所述转换规则将所述原始数据转换为对应的目标数据;在所述原始数据转换为所述目标数据的情况下,基于所述目标数据生成目标数据列表,并将所述目标数据列表发送给所述第二服务端。

第二方面,本申请实施例提供了一种数据同步装置,该数据同步装置分别与第一服务端和第二服务端通信连接,该装置包括:接收模块,用于接收所述第一服务端发送的数据包,所述数据包包括:原始数据、同步标识号和授权标识;获取模块,用于响应于所述授权标识,获取与所述同步标识号对应的同步脚本,所述同步脚本包括针对所述原始数据的转换规则;转换模块,用于运行所述同步脚本,基于所述转换规则将所述原始数据转换为对应的目标数据;发送模块,用于在所述原始数据转换为所述目标数据的情况下,基于所述目标数据生成目标数据列表,并将所述目标数据列表发送给所述第二服务端。

第三方面,本申请实施例提供了一种电子设备,该电子设备包括处理器和存储器,所述存储器存储可在所述处理器上运行的程序或指令及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面所述的方法的步骤。

第四方面,本申请实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的方法的步骤。

第五方面,本申请实施例提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现如第一方面所述的方法。

第六方面,本申请实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如第一方面所述的方法。

这样,在本申请实施例中,当需要将第一服务端的数据同步至第二服务端时,数据同步装置首先会接收到第一服务端发送的数据包,在数据包中含有授权标识时,说明该数据同步装置有权执行数据同步操作,数据同步装置会进一步获取同步标识号对应的同步脚本,从而可以根据同步脚本中的转换规则将第一服务端发送的原始数据转换为第二服务端能够使用的目标数据,进而数据同步装置基于得到的目标数据构建目标数据列表并发送给第二服务端使用。上述过程中,通过设置数据同步装置来完成两个服务端之间的数据同步工作,可以仅对该装置中的同步脚本进行维护,即可保证数据同步工作的正常施行,而无需去维护数据库,有效提高数据同步维护工作的便捷性。

附图说明

图1是本申请实施例的一种数据同步方法的步骤流程图;

图2是本申请实施例的一种数据同步方法的步骤流程图;

图3是本申请实施例的一种数据同步方法的流程框图;

图4是本申请实施例的一种原始数据转换为目标数据的示意图;

图5是本申请实施例的一种数据同步装置的框图;

图6是本申请实施例的一种电子设备的硬件结构示意图;

图7是本申请实施例的一种电子设备的硬件结构示意图。

具体实施方式

下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。

图1是本申请实施例的一种数据同步方法的步骤流程图,该方法应用于数据同步装置,所述数据同步装置分别与第一服务端和第二服务端通信连接,该方法可以包括以下步骤:

步骤101:接收所述第一服务端发送的数据包,所述数据包包括:原始数据、同步标识号和授权标识。

示例性地,本申请实施例设置一数据同步装置,该数据同步装置分别与第一服务端和第二服务端通信连接,第一服务端和第二服务端可以分别用于表示旧HIS系统和新HIS系统,工作人员可以通过对该数据同步装置的操作,来实现新旧系统之间的数据同步工作。示例性地,工作人员可以根据新旧系统之间所要同步的数据,在该数据同步装置中编写对应的同步脚本,在其中制定相应的数据转换的规则,从而该数据同步装置可以依据该规则实现数据的转换工作。

示例性地,第一服务端会将一数据包发送给数据同步装置,该数据包包括了需要同步的原始数据,以及用于调用同步脚本的同步标识号和授权标识。示例性地,数据同步装置只有在获取到授权标识的情况下,才能执行数据同步操作,从而确保数据同步的安全性。

步骤102:响应于所述授权标识,获取与所述同步标识号对应的同步脚本,所述同步脚本包括针对所述原始数据的转换规则。

示例性地,在获取到授权标识的情况下,数据同步装置可以进一步基于同步标识号获取同步脚本,以能够基于同步脚本中的转换规则来对原始数据进行转换。

步骤103:运行所述同步脚本,基于所述转换规则将所述原始数据转换为对应的目标数据。

示例性地,数据同步装置可以通过调用同步脚本,利用同步脚本中的转换规则将原始数据转换为目标数据。示例性地,转换规则是由工作人员基于第一服务端要同步的数据以及第二服务端所能使用的数据的结构,在数据同步装置上进行编写得到的,因此,数据同步装置利用该转换规则对原始数据进行转换得到的目标数据即为第二服务端能够使用的数据。

步骤104:在所述原始数据转换为所述目标数据的情况下,基于所述目标数据生成目标数据列表,并将所述目标数据列表发送给所述第二服务端。

示例性地,数据同步装置将接收的原始数据均转换为目标数据侯,可以进一步基于目标数据生成目标数据列表,并将该数据列表发送给第二服务端,这样第二服务端对目标数据的识别解析将更简便捷。

这样,本申请实施例中,设置分别与新旧系统连接的数据同步装置,基于所要同步的数据以及接收同步数据的系统所能使用的数据结构,工作人员在数据同步装置上进行同步脚本的编写,以写入相应的数据的转换规则,进而数据同步装置可以利用该转换规则实现数据转换工作,实现数据同步。通过另设数据同步装置,并在其中写入相应的同步脚本的方式,使得新旧HIS系统之间的数据同步工作无需借助数据库来完成,避免由于数据库频繁进行数据同步导致维护工作的难度加大,仅需单独对数据同步装置即其中的同步脚本进行维护即可,维护工作的难度较低,有效提高数据同步的维护作业的便捷性。

图2是本申请实施例的一种数据同步方法的步骤流程图,该方法应用于数据同步装置,所述数据同步装置分别与第一服务端和第二服务端通信连接,该方法可以包括以下步骤:

步骤201:接收所述第一服务端发送的数据包,所述数据包包括:原始数据、同步标识号和授权标识。

该步骤具体可以参照上述步骤101,此处不再赘述。

步骤202:响应于所述授权标识,获取与所述同步标识号对应的同步脚本,所述同步脚本包括针对所述原始数据的转换规则。

该步骤具体可以参照上述步骤102,此处不再赘述。

步骤203:运行所述同步脚本,基于所述转换规则将所述原始数据转换为对应的目标数据。

该步骤具体可以参照上述步骤103,此处不再赘述。

步骤204:在所述原始数据转换为所述目标数据的情况下,基于所述目标数据生成目标数据列表,并将所述目标数据列表发送给所述第二服务端。

该步骤具体可以参照上述步骤104,此处不再赘述。

可选地,所述转换规则包括类型转换子规则,所述类型转换子规则设置有预设数据类型,所述预设数据类型为预设的所述目标数据的数据类型;步骤203可以包括以下步骤:

步骤2031:在所述原始数据的数据类型与所述预设数据类型不同的情况下,基于所述类型转换子规则,将所述原始数据的数据类型转换为所述预设数据类型。

示例性地,在数据转换过程中,会出现新旧HIS系统的数据的类型不同的情况,基于这种情况,工作人员会在转换规则中写入相应的类型转换子规则,以将就HIS系统中的数据类型转换成新HIS系统所使用的数据的类型。工作人员在编写类型转换子规则时,会同时写入原始数据对应的新HIS系统的数据的类型信息,数据同步装置在运行同步脚本时,可以基于该信息与原始数据进行比较,当原始数据的数据类型与该类型信息对应的数据类型不同时,数据同步装置可以利用类型转换子规则将原始数据的数据类型转换为该类型信息对应的数据类型,即新HIS系统所使用的数据类型,从而实现对原始数据的转换。

步骤2032:在所述原始数据的数据类型与所述预设数据类型相同的情况下,将所述原始数据作为所述目标数据。

示例性地,当原始数据的数据类型与上述类型信息对应的数据类型一致时,则不需要调用类型转换子规则,可以直接将原始数据作为目标数据。

可选地,所述转换规则还包括长度转换子规则,所述长度转换子规则设置有预设最大长度,所述预设最大长度为预设的所述目标数据的最大长度;步骤2032可以包括以下步骤:

步骤20321:在所述原始数据的长度大于所述预设最大长度的情况下,基于所述长度转换子规则,对所述原始数据进行截取处理,所述截取处理为从所述原始数据的起始位置,截取长度为所述预设最大长度的数据段,并将所述数据段作为所述原始数据。

示例性地,新旧HIS系统在生成数据时,一般会对该数据的最大长度进行限制,即生成的数据的长度均不能超过该最大长度,当旧HIS系统的数据最大长度大于新HIS系统的数据最大长度时,如果直接将旧HIS系统的原始数据移植至新HIS系统,则新HIS系统时无法使用这些数据的,甚至出现报错故障的问题。因此,在数据类型相同的情况下,需要进一步判断数据长度是否符合新HIS系统的要求,工作人员在编写转换规则时,会在其中写入长度转换子规则,并在其中设置一个预设最大长度,该预设最大长度表示目标数据的最大长度,即新HIS系统限制的数据的最大长度,从而在出现上述情况时,对原始数据进行转换,以使新HIS系统能够使用转换之后的数据。

示例性地,在原始数据的长度大于预设最大长度时,说明新HIS系统是无法使用当前的原始数据的,此时数据同步装置可以调用长度转换子规则,来对原始数据进行截取,即基于预设最大长度,从原始数据的数据起始位置开始,截取长度为预设最大长度的数据段,然后将该数据段作为原始数据,并进一步将截取后的原始数据作为目标数据,从而实现数据长度的转换,保证目标数据对于新HIS系统的可用性。

步骤20322:在所述原始数据的长度小于或等于所述预设最大长度的情况下,将所述原始数据作为所述目标数据。

示例性地,当原始数据的长度不大于上述预设最大长度时,说明该原始数据的长度是符合新HIS系统的数据长度限制要求的,可以被新HIS系统使用,则无需调用长度转换子规则进行长度转换,可以直接将原始数据作为目标数据。

可选地,所述转换规则包括字典转换子规则,所述字典转换子规则用于对字典数据进行转换,所述字典数据包含字典项,所述字典项表示数据的内容值与数据的输出值的对应关系;所述字典转换子规则设置有预设字典项,所述预设字典项为预设的所述目标数据的字典项;步骤203可以包括以下步骤:

步骤2033:在所述原始数据为字典数据,且所述原始数据的字典项与所述预设字典项不同的情况下,基于所述字典转换子规则,将所述原始数据的字典项转换为所述预设字典项。

示例性的,HIS系统中的一些数据会采用字典的编写形式,这些数据一般有两种值,一是以数据的形式存在的内容值,一般可采用数字进行表示,二是显示于显示界面供用户查看的输出值,该输出值一般为该数据的直接表示的含义,是用户能够直接理解的内容。示例性地,一个数据用于表示用户的性别,该数据的内容值可以是1或者其他数字,而该数据的输出值一般应当是“男”或者“女”,而数据的内容值于输出值之间的对应关系可以通过字典项进行表示。

新旧HIS系统对于同一种数据,如表示性别的数据,可以采用同一种字典项,也可以采用不同的字典项。而当两者采用的字典项不同时,则需要在数据同步过程中将字典项进行修改,以保证原始数据在旧HIS系统输出值与目标数据在新HIS系统的输出值是一致的。

工作人员在编写转换规则时,一般会对需要进行数据同步的原始数据进行枚举,找到其中的字典数据,在原始数据在旧HIS系统的输出值与目标数据在新HIS系统的输出值一致的原则下,工作人员将在新HIS系统的输出值与原始数据在旧HIS系统的输出值一致的数据的字典项作为预设字典项写入字典转换子规则,数据同步装置可以基于该预设字典项确定对应目标数据的内容值。

在原始数据是字典数据时,数据同步装置可以利用字典转换子规则将原始数据的字典项转换为预设字典项,即将原始数据的内容值转换为其输出值在新HIS系统中对应的内容值,从而完成数据同步工作中字典数据的转换,保证新HIS系统接收的数据的正确性。

可选地,所述转换规则包括常量赋值子规则,所述常量赋值子规则设置有预配置数据和预配置值,所述预配置数据用于表示所述第二服务端新增的数据;步骤203可以包括以下步骤:

步骤2034:基于所述常量赋值子规则,将所述预配置值赋值给所述预配置数据,并将所述预配置数据作为所述目标数据。

示例性地,新HIS系统一般是在旧HIS系统的基础上设计得到,在旧HIS系统的基础上,新HIS系统一般会额外增加一些新的数据项,这些数据项在旧HIS系统中是没有的,如患者的信息,新HIS系统可以较旧HIS系统增加一个或多个信息项,这些信息项对应的数据项在旧HIS系统是没有的,这时,工作人员则需要在编写转换规则时写入一常量赋值子规则,并基于需要更新的原始数据,确定新HIS系统中新增的数据项,并将该数据项对应的值作为预配置值写入常量赋值子规则,并同时将该数据项作为预配置数据写入常量赋值子规则。

数据同步装置在执行数据同步操作的过程中,可以在完成所有原始数据的转换之后,调用常量赋值子规则,若工作人员写入了相应的预配置值,则数据同步装置可以利用常量赋值子规则将预配置值赋值给预配置数据,并将预配置数据作为目标数据,从而实现数据同步过程中新增数据项的赋值操作。

可选地,所述转换规则包括记录对照子规则,所述记录对照子规则设置有对照表,所述对照表包括对照标识,原始数据唯一键和目标数据唯一键,对照标识用于表征所述原始数据与所述第二服务端的数据的对应关系,所述原始数据唯一键用于避免所述原始数据出现重复,所述目标数据唯一键用于避免所述目标数据出现重复;本申请实施例的数据同步方法还可以包括以下步骤:

步骤205:接收用户输入的所述对照新增指令,所述对照新增指令包括所述对照标识,所述原始数据唯一键和所述目标数据唯一键。

示例性地,在进行新旧HIS系统的数据同步时,两者之间的数据项是具有对应关系的,工作人员,即上述用户,在进行转换规则的编写时,会基于旧HIS系统要同步的原始数据,确定新HIS系统中对应的数据项,以此建立新旧HIS系统数据间的对照关系,并写入记录对照子规则。

步骤206:响应于所述对照新增指令,将所述对照标识,所述原始数据唯一键和所述目标数据唯一键写入所述对照表。

示例性地,工作人员在确定原始数据与新HIS系统数据的对照关系对照表后,可以将其写入记录对照子规则,数据同步装置在运行同步脚本进行数据转换时,可以调用记录对照子规则来确定与原始数据对应的新HIS系统的数据名。进而将转换后的目标数据与这些数据名进行对应,以保证新HIS系统接收到的目标数据是正确的,是可以直接识别使用的。

可选地,步骤203可以包括以下步骤:

步骤2035:根据所述转换规则和所述对照关系对照表,将所述原始数据转换为与所述第二服务端的数据对应的目标数据。

示例性地,在对原始数据进行转换得到目标数据,数据同步装置可以调用记录对照子规则,根据对照关系对照表,将目标数据与新HIS系统的数据对应上,避免新HIS系统接收到的目标数据是混乱的,难以识别并使用。

在本申请实施例中,对照标识的调整是自动的,比如旧his(第一服务端)中物理删除了记录,那么该记录对应的新老对照记录(对照标识)也同时删除掉了,如果新增记录,那么该记录对应的新老对照记录(对照标识)也同时进行了新增。

可选地,本申请实施例的数据同步方法还可以包括以下步骤:

步骤207:生成同步记录日志,所述同步记录日志用于记录所述原始数据,所述同步标识号和数据转换操作的状态,所述数据转换操作为将所述原始数据转换为对应的目标数据,所述数据转换操作的状态为成功或失败。

其中,数据同步装置设置有内存片区。

示例性地,数据同步装置每进行以此原始数据的转换操作,均会生成相应的同步记录,最终形成同步记录日志,这样,工作人员可以随时调用查看同步记录日志,从而可以检查数据同步过程中是否有错误的地方,或者在数据同步工作出现错误时,可以及时通过同步记录日志进行查验,及时定位错误点并进行修复,从而极大地提高了维护工作的便捷性及效率。

步骤208:将所述同步记录日志存储至所述内存片区,以在所述数据转换操作失败的情况下,通过调用所述同步记录日志重新执行所述数据转换操作。

示例性地,在生成同步记录日志后,可以将该日志发送新HIS系统进行保存,留存同步记录,同时新HIS系统可以随时查看该日志了解同步过程。

可选地,本申请实施例的数据同步方法还可以包括以下步骤:

步骤209:接收用户输入的维护指令,所述维护指令包括增加指令、修改指令和删除指令,所述增加指令包括新增内容和添加位置,所述修改指令包括待修改内容和替换内容,所述删除指令包括删减内容。

示例性地,工作人员对于数据同步装置的维护可以是对同步脚本进行相应的操作,如增加内容,修改内容和删除内容,以保证同步脚本的正常运行,以及可以根据旧HIS系统要更新的数据进行匹配定制,使同步脚本能够针对该数据进行数据转换,完成数据的同步。

步骤210:在所述维护指令为所述增加指令的情况下,将所述新增内容添加至所述同步脚本中与所述添加位置对应的位置。

示例性地,对于同一个部门的数据的连续两次更新,在第一次更新的基础上,新HIS系统加入了新的数据项,此时,数据同步装置需要调用常量赋值子规则,进行新数据的赋值操作,那么工作人员需要在同步脚本中增加关于上述新增数据项的赋值的相关脚本内容,以保证此次数据同步能够梳理完成。

步骤211:在所述维护指令为所述修改指令的情况下,将所述同步脚本中的所述待修改内容修改为所述替换内容。

示例性地,对于连续的两次数据同步,两次同步对应不同部门的数据,由于两个部门在数据结构上可能存在一定差异,此时需要工作人员在完成第一次同步操作之后,针对上述存在差异的地方,对同步脚本进行修改操作,以使同步脚本能够匹配第二次的同步的数据,保证数据同步能够完成。

步骤212:在所述维护指令为所述删除指令的情况下,将所述同步脚本中的所述删减内容删除。

示例性地,基于前一次同步,新旧HIS系统删除了一些无用的数据项,那么工作人员需要将同步脚本中针对这些数据项的脚本内容进行删除,避免同步脚本的冗余,对数据同步造成负担。

可选地,对于数据同步装置的维护,工作人员均可以随时通过数据同步装置的操作面板进行完成,工作人员可以对同步脚本中的字典项,同步记录日志等进行维护操作,以保证数据同步装置能够正常运行,保证数据同步的稳定性。

图3是本申请实施例的一种数据同步方法的流程框图。

示例性地,图中的消息体即为本申请实施例的原始数据,其可以是xml或json格式,或其他的格式,授权Token即为本申请实施例的授权标识,数据同步装置在接收到上述内容后,会调用同步服务,即调用同步脚本进行数据同步操作,本申请实施例的同步服务可以包括:记录对照转换,用于记录原始数据与新HIS系统的数据的对应关系;字典对照转换,用于对字典数据进行转换操作;字段类型转换,用于将原始数据的数据类型转换为新HIS系统设定的数据类型;字段长度转换,用于将长度超过新HIS系统限制的最大长度的原始数据的长度转换为上述最大长度;常量数据赋值,用于对新HIS系统新增的数据进行赋值操作;同步日志记录,用于记录数据同步操作并生成日志;在对原始数据完成转换操作后,数据同步装置会将生成的目标数据列表以及生成的同步记录日志发送到新HIS系统的数据库保存,从而完成了旧HIS系统数据同步至新HIS系统的操作。

图4是本申请实施例的一种原始数据转换为目标数据的示意图。

示例性的,在进行同步之前,工作人员首先会将新旧HIS系统的数据对应关系写入同步脚本。在原始数据中,患者(patient)的id对应新HIS系统的brid,id的值与brid的值是不同的,它们具有不同的生成规则,字典项并不相同,数据同步装置会基于工作人员写入的字典转换子规则得到brid的值;旧HIS系统的name对应新HIS系统的na,两者的数据类型均为字符串,假定新HIS系统的数据长度限制较大,name的长度并未超过限制,则name的值可以直接作为na的值;对于患者的性别,其是字典数据,新旧HIS系统sex的值并不相同,即字典项是不同的,数据同步装置通过调用字典转换子规则可以得到该患者的性别在新HIS系统中对应的sex的值为“3”,进而数据同步装置将sex的值转换为“3”;对于患者的年龄,旧HIS系统中age的数据类型为整型,而新HIS系统中age的数据类型是字符串,数据类型并不相同,数据同步装置可以调用类型转换子规则将原始数据的age的数据类型转换为字符串类型的;对于患者卡号(cardNum/cardNo)和患者电话(phoneNum/phoneNo),参照上述患者姓名的描述,不再赘述;而对于新HIS系统的idTet,旧HIS系统中并没有该数据项,则数据同步装置可以调用常量赋值子规则将idTet赋值为“xssy”;这样,便完成了患者的信息数据的转换工作;对于患者联系人(relations)的数据转换,参照上述对患者数据的转换操作,这里不再赘述。

示例性地,一般在新旧HIS系统的换代过程中,新旧HIS系统是同步使用的,在这个过程中,对于数据的同步,不仅仅是从旧HIS系统同步至新HIS系统,也需要从新HIS系统同步至旧HI系统,以同时保证两个系统据可以正常运行。

综上,在本申请实施例中,当需要将第一服务端的数据同步至第二服务端时,数据同步装置首先会接收到第一服务端发送的数据包,在数据包中含有授权标识时,说明该数据同步装置有权执行数据同步操作,数据同步装置会进一步获取同步标识号对应的同步脚本,从而可以根据同步脚本中的转换规则将第一服务端发送的原始数据转换为第二服务端能够使用的目标数据,进而数据同步装置基于得到的目标数据构建目标数据列表并发送给第二服务端使用。上述过程中,通过设置数据同步装置来完成两个服务端之间的数据同步工作,可以仅对该装置中的同步脚本进行维护,即可保证数据同步工作的正常施行,而无需去维护数据库,有效提高数据同步维护工作的便捷性。

本申请实施例提供的数据同步方法,执行主体可以为数据同步装置。本申请实施例中以数据同步装置执行数据同步方法为例,说明本申请实施例提供的数据同步装置。

图5是本申请实施例的一种数据同步装置的框图,该数据同步装置分别与第一服务端和第二服务端通信连接,该装置包括:

接收模块301,用于接收所述第一服务端发送的数据包,所述数据包包括:原始数据、同步标识号和授权标识。

获取模块302,用于响应于所述授权标识,获取与所述同步标识号对应的同步脚本,所述同步脚本包括针对所述原始数据的转换规则。

转换模块303,用于运行所述同步脚本,基于所述转换规则将所述原始数据转换为对应的目标数据。

发送模块304,用于在所述原始数据转换为所述目标数据的情况下,基于所述目标数据生成目标数据列表,并将所述目标数据列表发送给所述第二服务端。

可选地,所述转换规则包括类型转换子规则,所述类型转换子规则设置有预设数据类型,所述预设数据类型为预设的所述目标数据的数据类型;所述转换模块303包括:

类型转换子模块3031,用于在所述原始数据的数据类型与所述预设数据类型不同的情况下,基于所述类型转换子规则,将所述原始数据的数据类型转换为所述预设数据类型。

迁移子模块3032,用于在所述原始数据的数据类型与所述预设数据类型相同的情况下,将所述原始数据作为所述目标数据。

可选地,所述转换规则还包括长度转换子规则,所述长度转换子规则设置有预设最大长度,所述预设最大长度为预设的所述目标数据的最大长度;所述转换模块303还包括:

长度转换子模块3033,用于在所述原始数据的长度大于所述预设最大长度的情况下,基于所述长度转换子规则,对所述原始数据进行截取处理,所述截取处理为从所述原始数据的起始位置,截取长度为所述预设最大长度的数据段,并将所述数据段作为所述原始数据。

所述迁移子模块3032还用于在所述原始数据的长度小于或等于所述预设最大长度的情况下,将所述原始数据作为所述目标数据。

可选地,所述转换规则包括字典转换子规则,所述字典转换子规则用于对字典数据进行转换,所述字典数据包含字典项,所述字典项表示数据的内容值与数据的输出值的对应关系;所述字典转换子规则设置有预设字典项,所述预设字典项为预设的所述目标数据的字典项;所述转换模块303包括:

字典转换子模块3034,用于在所述原始数据为字典数据,且所述原始数据的字典项与所述预设字典项不同的情况下,基于所述字典转换子规则,将所述原始数据的字典项转换为所述预设字典项。

可选地,所述转换规则包括常量赋值子规则,所述常量赋值子规则设置有预配置数据和预配置值,所述预配置数据用于表示所述第二服务端新增的数据;所述转换模块303包括:

常量赋值子模块3035,用于基于所述常量赋值子规则,将所述预配置值赋值给所述预配置数据,并将所述预配置数据作为所述目标数据。

可选地,所述转换规则包括记录对照子规则,所述记录对照子规则设置有对照表,所述对照表包括对照标识,原始数据唯一键和目标数据唯一键;所述对照标识用于表征所述原始数据与所述第二服务端的数据的对应关系,所述原始数据唯一键用于避免所述原始数据出现重复,所述目标数据唯一键用于避免所述目标数据出现重复;本申请实施例的数据同步装置还可以包括:

交互模块305,用于接收用户输入的所述对照新增指令,所述对照新增指令包括所述对照标识,所述原始数据唯一键和所述目标数据唯一键。

记录对照模块306,用于响应于所述对照新增指令,将所述对照标识,所述原始数据唯一键和所述目标数据唯一键写入所述对照表。

所述转换模块303具体用于根据所述转换规则和所述对照表,将所述原始数据转换为与所述第二服务端的数据对应的目标数据。

可选地,所述数据同步装置设置有内存片区,本申请实施例的数据同步装置还可以包括:

日志模块307,用于生成同步记录日志,所述同步记录日志用于记录所述原始数据,所述同步标识号和数据转换操作的状态,所述数据转换操作为将所述原始数据转换为对应的目标数据,所述数据转换操作的状态为成功或失败。

所述发送模块304还用于将所述同步记录日志存储至所述内存片区,以在所述数据转换操作失败的情况下,通过调用所述同步记录日志重新执行所述数据转换操作。

可选地,本申请实施例的数据同步装置还可以包括:

交互模块305,用于接收用户输入的维护指令,所述维护指令包括增加指令、修改指令和删除指令,所述增加指令包括新增内容和添加位置,所述修改指令包括待修改内容和替换内容,所述删除指令包括删减内容。

维护模块308,用于在所述维护指令为所述增加指令的情况下,将所述新增内容添加至所述同步脚本中与所述添加位置对应的位置;以及在所述维护指令为所述修改指令的情况下,将所述同步脚本中的所述待修改内容修改为所述替换内容;以及在所述维护指令为所述删除指令的情况下,将所述同步脚本中的所述删减内容删除。

综上,在本申请实施例中,当需要将第一服务端的数据同步至第二服务端时,数据同步装置首先会接收到第一服务端发送的数据包,在数据包中含有授权标识时,说明该数据同步装置有权执行数据同步操作,数据同步装置会进一步获取同步标识号对应的同步脚本,从而可以根据同步脚本中的转换规则将第一服务端发送的原始数据转换为第二服务端能够使用的目标数据,进而数据同步装置基于得到的目标数据构建目标数据列表并发送给第二服务端使用。上述过程中,通过设置数据同步装置来完成两个服务端之间的数据同步工作,可以仅对该装置中的同步脚本进行维护,即可保证数据同步工作的正常施行,而无需去维护数据库,有效提高数据同步维护工作的便捷性。

本申请实施例中的数据同步装置可以是电子设备,也可以是电子设备中的部件,例如集成电路或芯片。该电子设备可以是终端,也可以为除终端之外的其他设备。示例性地,电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、移动上网装置(Mobile Internet Device,MID)、增强现实(augmented reality,AR)/虚拟现实(virtualreality,VR)设备、机器人、可穿戴设备、超级移动个人计算机(ultra-mobile personalcomputer,UMPC)、上网本或者个人数字助理(personal digital assistant,PDA)等,还可以为服务器、网络附属存储器(Network Attached Storage,NAS)、个人计算机(personalcomputer,PC)、电视机(television,TV)、柜员机或者自助机等,本申请实施例不作具体限定。

本申请实施例中的数据同步装置可以为具有操作系统的装置。该操作系统可以为安卓(Android)操作系统,可以为ios操作系统,还可以为其他可能的操作系统,本申请实施例不作具体限定。

本申请实施例提供的数据同步装置能够实现图1至图4的方法实施例实现的各个过程,达到相同的技术效果,为避免重复,这里不再赘述。

可选地,如图6所示,本申请实施例还提供一种电子设备400,包括处理器401和存储器402,存储器402上存储有可在所述处理器401上运行的程序或指令,该程序或指令被处理器401执行时实现上述数据同步方法实施例的各个步骤,且能达到相同的技术效果,为避免重复,这里不再赘述。

需要说明的是,本申请实施例中的电子设备包括上述所述的移动电子设备和非移动电子设备。

图7为实现本申请实施例的一种电子设备的硬件结构示意图。

该电子设备5000包括但不限于:射频单元5001、网络模块5002、音频输出单元5003、输入单元5004、传感器5005、显示单元5006、用户输入单元5007、接口单元5008、存储器5009、以及处理器5010等部件。

本领域技术人员可以理解,电子设备5000还可以包括给各个部件供电的电源(比如电池),电源可以通过电源管理系统与处理器5010逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。图7中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,在此不再赘述。

应理解的是,本申请实施例中,输入单元5004可以包括图形处理器(GraphicsProcessing Unit,GPU)50041和麦克风50042,图形处理器50041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。显示单元5006可包括显示面板50061,可以采用液晶显示器、有机发光二极管等形式来配置显示面板50061。用户输入单元5007包括触控面板50071以及其他输入设备50072中的至少一种。触控面板50071,也称为触摸屏。触控面板50071可包括触摸检测装置和触摸控制器两个部分。其他输入设备50072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。

存储器5009可用于存储软件程序以及各种数据。存储器5009可主要包括存储程序或指令的第一存储区和存储数据的第二存储区,其中,第一存储区可存储操作系统、至少一个功能所需的应用程序或指令(比如声音播放功能、图像播放功能等)等。此外,存储器5009可以包括易失性存储器或非易失性存储器,或者,存储器5009可以包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data Rate SDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DRRAM)。本申请实施例中的存储器5009包括但不限于这些和任意其它适合类型的存储器。

处理器5010可包括一个或多个处理单元;可选地,处理器5010集成应用处理器和调制解调处理器,其中,应用处理器主要处理涉及操作系统、用户界面和应用程序等的操作,调制解调处理器主要处理无线通信信号,如基带处理器。可以理解的是,上述调制解调处理器也可以不集成到处理器5010中。

本申请实施例还提供一种可读存储介质,所述可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述数据同步方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。

其中,所述处理器为上述实施例中所述的电子设备中的处理器。所述可读存储介质,包括计算机可读存储介质,如计算机只读存储器ROM、随机存取存储器RAM、磁碟或者光盘等。

本申请实施例另提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现上述数据同步方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。

应理解,本申请实施例提到的芯片还可以称为系统级芯片、系统芯片、芯片系统或片上系统芯片等。

本申请实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如上述数据同步方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。

上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。

相关技术
  • 实时数据库同步方法、装置、电子设备及存储介质
  • 数据同步方法、系统、电子设备及计算机可读存储介质
  • 音频播放方法、装置、电子设备及储存介质
  • 商品的管理方法、装置、电子设备及储存介质
  • 产品数据的数据同步方法、装置、计算机设备及存储介质
  • 基于数据库的数据同步方法、装置、电子设备及存储介质
  • 一种数据库数据同步方法、装置、电子设备及存储介质
技术分类

06120115587230