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

数据回迁方法、装置、系统、计算机设备和存储介质

文献发布时间:2024-04-18 20:01:23


数据回迁方法、装置、系统、计算机设备和存储介质

技术领域

本申请涉及计算机技术领域,特别是涉及一种数据回迁方法、装置、系统、计算机设备、存储介质和计算机程序产品。

背景技术

项目上线的时候,为了尽快应对业务系统上线,进行系统迭代,在上线初期,业务数据需要全部上云。但是将核心业务数据保存在云上,势必存在一定的风险,因此需要及时将云上数据回迁到内网。

故而,目前厄需一种能够及时将云上数据回迁到内网中的数据回迁方式。

发明内容

基于此,有必要针对上述技术问题,提供一种能够及时进行数据回迁和清理的数据回迁方法、装置、系统、计算机设备、计算机可读存储介质和计算机程序产品。

第一方面,本申请提供了一种数据回迁方法,所述方法包括:

定时从数据库中读取回迁任务;

从分布式全文检索引擎ES中查询所述回迁任务所对应的目标数据的标记信息,所述标记信息中包括迁移状态、当前存储位置及备份存储位置;

在所述迁移状态表征所述目标数据处于待迁移状态的情况下,从所述当前存储位置读取所述目标数据,将所述目标数据写入所述备份存储位置中,并将所述目标数据在所述分布式全文检索引擎ES的迁移状态更新为完成迁移;

向所述数据库中插入针对所述目标数据的删除任务,所述删除任务用于指示将所述目标数据从所述当前存储位置中删除。

在其中一个实施例中,所述方法还包括:

定时从所述数据库中读取删除任务;

从分布式全文检索引擎ES中查询所述删除任务所对应的所述目标数据的标记信息,所述标记信息中包括迁移状态、当前存储位置及备份存储位置;

在所述迁移状态表征所述目标数据处于完成迁移状态的情况下,从所述当前存储位置读取回迁前的所述目标数据,并从所述备份存储位置中读取回迁后的所述目标数据;

在回迁前的所述目标数据与所述回迁后的所述目标数据一致的情况下,从所述当前存储位置中删除所述目标数据。

在其中一个实施例中,从数据库中读取所述回迁任务或者所述删除任务,包括:

在读取所述回迁任务或者所述删除任务的过程中,通过version字段为所述回迁任务或者所述删除任务添加update锁。

在其中一个实施例中,所述方法还包括:

在所述回迁任务完成后,生成所述目标数据的迁移轨迹,存储于所述分布式全文检索引擎ES中;

在所述删除任务完成后,生成所述目标数据的删除轨迹,存储于所述分布式全文检索引擎ES中。

在其中一个实施例中,所述方法还包括:

接收回迁任务的创建请求;

在所述数据库中查询所述回迁任务,并在所述回迁任务不存在的情况下,创建所述回迁任务。

在其中一个实施例中,所述方法还包括:

在所述回迁任务或者所述删除任务执行失败的情况下,间隔预置时长重新执行所述回迁任务或者所述删除任务;

在所述回迁任务或者所述删除任务的执行次数达到次数阈值的情况下,向目标用户发送针对所述回迁任务或者所述删除任务的报警信息,通过所述报警信息提醒所述目标用户介入处理。

第二方面,本申请还提供了一种数据回迁系统,所述系统包括数据库、数据迁移功能模块、分布式全文检索引擎ES、目标云设备、内网设备;

所述数据库,用于存储回迁任务;

所述数据迁移功能模块,用于定时从所述数据库中读取回迁任务,并从所述分布式全文检索引擎ES中查询所述回迁任务所对应的目标数据的标记信息,所述标记信息中包括迁移状态、当前存储位置及备份存储位置;

所述数据迁移功能模块,还用于在所述迁移状态表征所述目标数据处于待迁移状态的情况下,根据所述当前存储位置从所述目标云设备中读取所述目标数据,并根据所述备份存储位置将所述目标数据写入所述内网设备中,并将所述目标数据在所述分布式全文检索引擎ES的迁移状态更新为完成迁移;

所述数据迁移功能模块,还用于向所述数据库中插入针对所述目标数据的删除任务。

第三方面,本申请还提供了一种数据回迁装置,所述装置包括:

第一读取模块,用于定时从数据库中读取回迁任务;

第一查询模块,用于从分布式全文检索引擎ES中查询所述回迁任务所对应的目标数据的标记信息,所述标记信息中包括迁移状态、当前存储位置及备份存储位置;

回迁模块,用于在所述迁移状态表征所述目标数据处于待迁移状态的情况下,从所述当前存储位置读取所述目标数据,将所述目标数据写入所述备份存储位置中,并将所述目标数据在所述分布式全文检索引擎ES的迁移状态更新为完成迁移;

插入模块,用于向所述数据库中插入针对所述目标数据的删除任务,所述删除任务用于指示将所述目标数据从所述当前存储位置中删除。

在其中一个实施例中,所述装置还包括:

第二读取模块,用于定时从所述数据库中读取删除任务;

第二查询模块,用于从分布式全文检索引擎ES中查询所述删除任务所对应的所述目标数据的标记信息,所述标记信息中包括迁移状态、当前存储位置及备份存储位置;

校验模块,用于在所述迁移状态表征所述目标数据处于完成迁移状态的情况下,从所述当前存储位置读取回迁前的所述目标数据,并从所述备份存储位置中读取回迁后的所述目标数据;

删除模块,用于在回迁前的所述目标数据与所述回迁后的所述目标数据一致的情况下,从所述当前存储位置中删除所述目标数据。

在其中一个实施例中,读取模块还用于:

在读取所述回迁任务或者所述删除任务的过程中,通过version字段为所述回迁任务或者所述删除任务添加update锁。

在其中一个实施例中,所述装置还包括:

第一生成模块,用于在所述回迁任务完成后,生成所述目标数据的迁移轨迹,存储于所述分布式全文检索引擎ES中;

第二生成模块,用于在所述删除任务完成后,生成所述目标数据的删除轨迹,存储于所述分布式全文检索引擎ES中。

在其中一个实施例中,所述装置还包括:

接收模块,用于接收回迁任务的创建请求;

创建模块,用于在所述数据库中查询所述回迁任务,并在所述回迁任务不存在的情况下,创建所述回迁任务。

在其中一个实施例中,所述装置还包括:

处理模块,用于在所述回迁任务或者所述删除任务执行失败的情况下,间隔预置时长重新执行所述回迁任务或者所述删除任务;

报警模块,用于在所述回迁任务或者所述删除任务的执行次数达到次数阈值的情况下,向目标用户发送针对所述回迁任务或者所述删除任务的报警信息,通过所述报警信息提醒所述目标用户介入处理。

第四方面,本申请还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以上任一项数据回迁方法。

第五方面,本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以上任一项数据回迁方法。

第六方面,本申请还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以上任一项数据回迁方法。

上述数据回迁方法、装置、系统、计算机设备、存储介质和计算机程序产品,可以定时从数据库中读取回迁任务,并从分布式全文检索引擎ES中查询回迁任务所对应的目标数据的标记信息,标记信息中包括迁移状态、当前存储位置及备份存储位置。在迁移状态表征目标数据处于待迁移状态的情况下,从当前存储位置读取目标数据,并将目标数据写入备份存储位置中,并将目标数据在分布式全文检索引擎ES的迁移状态更新为完成迁移。向数据库中插入针对目标数据的删除任务,删除任务用于指示将目标数据从当前存储位置中删除。采用本公开实施例的上述数据回迁方法、装置、系统、计算机设备、存储介质和计算机程序产品,可以通过在数据库中创建回迁任务,并定时读取执行回迁任务,基于回迁任务从ES中获取目标数据的标记信息的方式实现数据回迁,数据回迁效率高且响应快,同时在回迁后实时创建对应的删除任务,以通过删除任务及时将目标数据从当前存储位置中删除,也即采用本公开实施例可以实现及时将云上数据回迁到内网中,以及及时清理云上数据,可以有效避免数据泄露的风险。

附图说明

为了更清楚地说明本申请实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为一个实施例中数据回迁方法的流程示意图;

图2为一个实施例中数据回迁方法的流程示意图;

图3为一个实施例中数据回迁方法的流程示意图;

图4为一个实施例中数据回迁系统的结构示意图;

图5为一个实施例中数据回迁方法的示意图;

图6为一个实施例中数据回迁方法的示意图;

图7为一个实施例中数据回迁方法的示意图;

图8为一个实施例中数据回迁方法的示意图;

图9为一个实施例中数据回迁装置的结构框图;

图10为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

在一个实施例中,如图1所示,提供了一种数据回迁方法,本实施例以该方法应用于终端进行举例说明,可以理解的是,该方法也可以应用于服务器,还可以应用于包括终端和服务器的系统,并通过终端和服务器的交互实现。本实施例中,该方法包括以下步骤:

步骤102,定时从数据库中读取回迁任务。

本公开实施例中,业务系统可以根据实时业务需要,向数据库中插入回迁任务,该回迁任务为将指定数据从当前存储位置回迁至备份存储位置的任务。例如:在某业务数据因业务系统上线而全部存储在公有云或者混合云中时,业务系统可以向数据库中插入针对该业务数据的回迁任务,以将业务数据从公有云或者混合云中,回迁至内网中。

示例性的,可以定时从数据库中读取回迁任务,以能够在数据库中存在回迁任务时,及时获取到回迁任务,通过回迁任务实现及时将数据回迁。

步骤104,从分布式全文检索引擎ES中查询回迁任务所对应的目标数据的标记信息,标记信息中包括迁移状态、当前存储位置及备份存储位置。

本公开实施例中,ES(Elasticsearch,分布式全文检索引擎)中用于存储数据的标记信息,标记信息可以包括迁移状态、当前存储位置及备份存储位置,其中,迁移状态可以包括待迁移、迁移中、完成迁移等状态,当前存储位置可以为数据目前所存储的位置,备份存储位置可以为数据待回迁的位置,其中数据的当前存储位置及备份存储位置均可以通过设置设定。

在读取到回迁任务后,可以确定该回迁任务对应的目标数据,示例性的,回迁任务中包括目标数据的数据标识,通过该目标数据的数据标识可以从ES中查询目标数据的标记信息,并从标记信息中获取目标数据的迁移状态、当前存储位置及备份存储位置。

步骤106,在迁移状态表征目标数据处于待迁移状态的情况下,从当前存储位置读取目标数据,将目标数据写入备份存储位置中,并将目标数据在分布式全文检索引擎ES的迁移状态更新为完成迁移。

本公开实施例中,在目标数据的迁移状态表征目标数据处于待迁移状态的情况下(例如迁移状态为:待迁移),则可以从目标数据的当前存储位置中读取该目标数据,例如:当前存储位置指向公有云或者混合云,则基于该当前存储位置从公有云或者混合云中读取目标数据,将目标数据写入备份存储位置中,例如:备份存储位置指向内网,则基于该备份存储位置将目标数据写入内网,完成目标数据的回迁。并在目标数据写入备份存储位置后,可以将目标数据在ES中的迁移状态更新为完成迁移,并将回迁任务标记为完成。

步骤108,向数据库中插入针对目标数据的删除任务,删除任务用于指示将目标数据从当前存储位置中删除。

本公开实施例中,在完成目标数据的回迁后,可以向数据库中插入针对该目标数据的删除任务,该删除任务用于指示将目标数据从当前存储位置中删除,以通过定时读取及执行删除任务的方式,及时将目标数据从当前存储位置中删除。

本公开实施例提供的数据回迁方法,可以定时从数据库中读取回迁任务,并从分布式全文检索引擎ES中查询回迁任务所对应的目标数据的标记信息,标记信息中包括迁移状态、当前存储位置及备份存储位置。在迁移状态表征目标数据处于待迁移状态的情况下,从当前存储位置读取目标数据,并将目标数据写入备份存储位置中,并将目标数据在分布式全文检索引擎ES的迁移状态更新为完成迁移。向数据库中插入针对目标数据的删除任务,删除任务用于指示将目标数据从当前存储位置中删除。采用本公开实施例的数据回迁方法,可以通过在数据库中创建回迁任务,并定时读取执行回迁任务,基于回迁任务从ES中获取目标数据的标记信息的方式实现数据回迁,数据回迁效率高且响应快,同时在回迁后实时创建对应的删除任务,以通过删除任务及时将目标数据从当前存储位置中删除,也即采用本公开实施例可以实现及时将云上数据回迁到内网中,以及及时清理云上数据,可以有效避免数据泄露的风险。

在一示例性的实施例中,参照图2所示,上述方法还可以包括:

步骤202,定时从数据库中读取删除任务;

步骤204,从分布式全文检索引擎ES中查询删除任务所对应的目标数据的标记信息,标记信息中包括迁移状态、当前存储位置及备份存储位置;

步骤206,在迁移状态表征所述目标数据处于完成迁移状态的情况下,从当前存储位置读取回迁前的所述目标数据,并从备份存储位置中读取回迁后的目标数据;

步骤208,在回迁前的目标数据与回迁后的目标数据一致的情况下,从当前存储位置中删除目标数据。

本公开实施例中,在目标数据完成回迁后,可以向数据库中插入针对该目标任务的删除任务,该删除任务用于指示将所述目标数据从所述当前存储位置中删除。例如:在某业务数据从公有云或者混合云中回迁至内网中后,删除任务可以将该业务数据从公有云或者混合云中删除。示例性的,可以定时从数据库中读取删除任务,以能够在数据库中存在针对目标数据的删除任务时,及时获取到删除任务,通过删除任务实现及时将目标数据删除。

在读取到删除任务后,可以确定该删除任务对应的目标数据,并从ES中查询该目标数据的标记信息,从标记信息中获取目标数据的迁移状态、当前存储位置及备份存储位置。

在目标数据的迁移状态表征目标数据处于完成迁移状态的情况下(例如迁移状态为:完成迁移),则可以从目标数据的当前存储位置中读取目标数据,以及从备份存储位置中读取该目标数据,确定两个位置中存储的目标数据是否一致。例如:可以分别计算当前存储位置中存储的目标数据的md5(Message Digest Algorithm MD5,信息摘要算法)值,以及备份存储位置存储的目标数据的md5值,在两个md5值一致的情况下,确定在回迁前的目标数据与回迁后的目标数据一致,则将当前存储位置中存储的目标数据删除,并将该删除任务标记为完成。

例如:当前存储位置指向公有云或者混合云,备份存储位置指向内网,则基于该当前存储位置从公有云或者混合云中读取目标数据,基于该备份存储位置从内容中读取目标数据写入内网,在内网中存储的目标数据与公有云或者混合云中存储的目标数据一致的情况下,将目标数据从公有云或者混合云中删除。

采用本公开实施例的数据回迁方法,可以在确定回迁前后的目标数据一致的情况下,基于删除任务及时将目标数据从当前存储位置中删除,可以有效避免数据泄露的风险。

在一示例性的实施例中,从数据库中读取回迁任务或者删除任务,包括:

在读取回迁任务或者删除任务的过程中,通过version字段为回迁任务或者删除任务添加update锁。

本公开实施例中,在回迁任务或者删除任务的读取时,可以使用数据库(例如oracle数据库)的update锁(行锁),通过version字段为回迁任务或者删除任务添加update锁,也即通过version字段来实现乐观锁,以保证同一时刻仅有一个线程可以读取到该回迁任务或者删除任务,通过使用version字段来控制线程安全,进而保证不会重复执行同一数据的回迁和删除,避免回迁多份相同数据的问题。

在一示例性的实施例中,上述方法还包括:

在回迁任务完成后,生成目标数据的迁移轨迹,存储于分布式全文检索引擎ES中;在删除任务完成后,生成目标数据的删除轨迹,存储于分布式全文检索引擎ES中。

本公开实施例中,在回迁任务完成后,可以基于回迁过程生成目标数据的迁移轨迹,该迁移轨迹中可以包括时间信息、操作信息,例如:t1时刻写入当前存储位置,t2时刻回迁至备份存储位置等。同样的,在删除任务完成后,可以生成目标数据的删除轨迹,该删除轨迹中也可以包括时间信息和操作信息,例如:t3时刻进行数据验证,t4时刻从当前存储位置中删除。迁移轨迹和删除轨迹均可以存储与ES中。

在一示例性的实施例中,参照图3所示,上述方法还包括:

步骤302,接收回迁任务的创建请求;

步骤304,在数据库中查询回迁任务,并在回迁任务不存在的情况下,创建回迁任务。

本公开实施例中,业务系统可以基于需求发送针对回迁任务的创建请求,创建请求可以指示创建一个数据的回迁任务,也可以指示批量创建多个数据的回迁任务。示例性的,创建请求中可以包括迁移表,该迁移表中包括各待回迁数据的数据标识,则可以基于数据标识在数据库中查询是否存在该数据标识所对应的回迁任务,或者数据库中存储的迁移表中是否存在该数据标识,若是则确定已存在该目标数据的回迁任务,不再重复创建该回迁任务,若否,则可以创建该目标数据对应的回迁任务。

本公开实施例中可以实时进行回迁任务的创建,并在创建过程中查重,避免重复进行数据回迁,同时在创建回迁任务时,可以根据业务场景需要,对指定业务的数据集进行迁移,给业务更大的自由度。

在一示例性的实施例中,上述方法还可以包括:

在回迁任务或者删除任务执行失败的情况下,间隔预置时长重新执行回迁任务或者删除任务;

在回迁任务或者删除任务的执行次数达到次数阈值的情况下,向目标用户发送针对回迁任务或者删除任务的报警信息,通过报警信息提醒目标用户介入处理。

本公开实施例中,在回迁任务或者删除任务执行失败的情况下,可以间隔预置时长重新读取回迁任务或者删除任务,该预置时长为预先设定的时长,本公开实施例中对预置时长的具体取值不做具体限定。

在回迁任务或者删除任务的执行次数达到次数阈值的情况下,向目标用户发送针对回迁任务或者删除任务的报警信息,通过报警信息提醒目标用户介入处理。其中,次数阈值为预先设定的次数,本公开实施例中对次数阈值的具体取值不做具体限定,例如次数阈值可以为3。采用本公开实施例提供的回迁方法,可以及时拦截异常情况并进行处理。

在一个实施例中,如图4所示,提供了一种数据回迁系统,系统包括数据库402、数据迁移功能模块404、分布式全文检索引擎ES 406、目标云设备408、内网设备410;

数据库402,可以用于存储回迁任务;

数据迁移功能模块404,用于定时从数据库402中读取回迁任务,并从分布式全文检索引擎ES 406中查询回迁任务所对应的目标数据的标记信息,标记信息中包括迁移状态、当前存储位置及备份存储位置;

数据迁移功能模块404,还用于在迁移状态表征目标数据处于待迁移状态的情况下,根据当前存储位置从目标云设备408中读取目标数据,并根据备份存储位置将目标数据写入内网设备410中,并将目标数据在分布式全文检索引擎ES 406的迁移状态更新为完成迁移;

数据迁移功能模块404,还用于向数据库402中插入针对目标数据的删除任务。

本公开实施例中,数据库402中用于存储回迁任务,数据迁移功能模块404可以从数据库402中定时读取回迁任务,并从分布式全文检索引擎ES 406中获取回迁任务对应的目标数据的迁移状态、当前存储位置和备份存储位置,并在迁移状态为待迁移的情况下,根据当前存储位置从目标云设备408中读取目标数据,根据备份存储位置将目标数据存储至内网设备410中,同时向数据库402中插入针对该目标数据的删除任务。后续数据迁移功能模块404定时从数据库402中定时读取删除任务,并从分布式全文检索引擎ES 406中获取删除任务对应的目标数据的迁移状态、当前存储位置和备份存储位置,并在迁移状态为完成迁移的情况下,根据当前存储位置从目标云设备408中读取目标数据,根据备份存储位置从内网设备410中读取目标数据,在读取的两个目标数据完全一致的情况下,将目标数据从目标云设备408中删除。

具体各操作的具体过程参照前述实施例的相关描述即可,本公开实施例中对此不再赘述。

采用本公开实施例提供的数据回迁系统,可以通过在数据库中创建回迁任务,并定时读取执行回迁任务,基于回迁任务从ES中获取目标数据的标记信息的方式实现数据回迁,数据回迁效率高且响应快,同时在回迁后实时创建对应的删除任务,以通过删除任务及时将目标数据从当前存储位置中删除,也即采用本公开实施例可以实现及时将云上数据回迁到内网中,以及及时清理云上数据,可以有效避免数据泄露的风险。

为使本领域技术人员更好的理解本公开实施例,以下通过具体示例对本公开实施例加以说明。

参照图5所示,为了满足数据监管的需要,需要将混合云环境(图中标识为OBS)中存储的业务数据回迁到内网的对象存储(图中标识为HCP)中。

针对数据回迁分数据回迁、数据删除、异常拦截三部分:

参照图6所示,数据回迁实现方案包括:回迁任务获取时,使用oracle的update锁,通过version字段控制线程安全。在ES中标记字段:迁移状态、当前位置及备份存储位置,通过ES查到的当前存储位置对数据进行回迁,回迁至备份存储位置,并在回迁成功后对迁移成功的数据进行标记,同时向数据库中加入针对迁移成功的数据的删除任务,并在ES中添加迁移轨迹。

参照图7所示,数据删除实现方案包括:删除任务获取时,使用oracle的update锁,通过version字段控制线程安全。读取回迁迁移前后的对象数据流的md5值进行比对,确保完全一致,然后再清理云上存储的清理,清理完毕,添加删除轨迹。

参照图8所示,异常数据拦截和处理方案包括:在写入任务时,先校验重复数据,非重复数据的回迁任务可以写入数据库中。如果回迁任务或者删除任务失败将自动重新读取任务重试3次,如果持续失败,发送告警信息,提示人工介入重新导入数据,例如:删除失败任务,重新写入失败任务。

采用本公开实施例提供的数据回迁方法,针对公有云、混合云的业务数据的迁移,能够实时的将业务数据从公有云、混合云的对象存储中迁移到内网的对象存储中,数据准实时回迁、保证数据一致性无数据丢失、并且可以根据需要的业务场景,对指定的业务的数据集进行迁移,给业务更大的自由度。

应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。

基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的数据回迁方法的数据回迁装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个数据回迁装置实施例中的具体限定可以参见上文中对于数据回迁方法的限定,在此不再赘述。

在一个示例性的实施例中,如图9所示,提供了一种数据回迁装置,包括:第一读取模块902、第一查询模块904、回迁模块906、和插入模块908,其中:

第一读取模块902,用于定时从数据库中读取回迁任务;

第一查询模块904,用于从分布式全文检索引擎ES中查询所述回迁任务所对应的目标数据的标记信息,所述标记信息中包括迁移状态、当前存储位置及备份存储位置;

回迁模块906,用于在所述迁移状态表征所述目标数据处于待迁移状态的情况下,从所述当前存储位置读取所述目标数据,将所述目标数据写入所述备份存储位置中,并将所述目标数据在所述分布式全文检索引擎ES的迁移状态更新为完成迁移;

插入模块908,用于向所述数据库中插入针对所述目标数据的删除任务,所述删除任务用于指示将所述目标数据从所述当前存储位置中删除。

采用本公开实施例的上述数据回迁装置,可以通过在数据库中创建回迁任务,并定时读取执行回迁任务,基于回迁任务从ES中获取目标数据的标记信息的方式实现数据回迁,数据回迁效率高且响应快,同时在回迁后实时创建对应的删除任务,以通过删除任务及时将目标数据从当前存储位置中删除,也即采用本公开实施例可以实现及时将云上数据回迁到内网中,以及及时清理云上数据,可以有效避免数据泄露的风险。

在其中一个实施例中,所述装置还包括:

第二读取模块,用于定时从所述数据库中读取删除任务;

第二查询模块,用于从分布式全文检索引擎ES中查询所述删除任务所对应的所述目标数据的标记信息,所述标记信息中包括迁移状态、当前存储位置及备份存储位置;

校验模块,用于在所述迁移状态表征所述目标数据处于完成迁移状态的情况下,从所述当前存储位置读取回迁前的所述目标数据,并从所述备份存储位置中读取回迁后的所述目标数据;

删除模块,用于在回迁前的所述目标数据与所述回迁后的所述目标数据一致的情况下,从所述当前存储位置中删除所述目标数据。

在其中一个实施例中,读取模块还用于:

在读取所述回迁任务或者所述删除任务的过程中,通过version字段为所述回迁任务或者所述删除任务添加update锁。

在其中一个实施例中,所述装置还包括:

第一生成模块,用于在所述回迁任务完成后,生成所述目标数据的迁移轨迹,存储于所述分布式全文检索引擎ES中;

第二生成模块,用于在所述删除任务完成后,生成所述目标数据的删除轨迹,存储于所述分布式全文检索引擎ES中。

在其中一个实施例中,所述装置还包括:

接收模块,用于接收回迁任务的创建请求;

创建模块,用于在所述数据库中查询所述回迁任务,并在所述回迁任务不存在的情况下,创建所述回迁任务。

在其中一个实施例中,所述装置还包括:

处理模块,用于在所述回迁任务或者所述删除任务执行失败的情况下,间隔预置时长重新执行所述回迁任务或者所述删除任务;

报警模块,用于在所述回迁任务或者所述删除任务的执行次数达到次数阈值的情况下,向目标用户发送针对所述回迁任务或者所述删除任务的报警信息,通过所述报警信息提醒所述目标用户介入处理。

上述数据回迁装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个示例性的实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图10所示。该计算机设备包括处理器、存储器、输入/输出接口、通信接口、显示单元和输入装置。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口、显示单元和输入装置通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种数据回迁方法。该计算机设备的显示单元用于形成视觉可见的画面,可以是显示屏、投影装置或虚拟现实成像装置。显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。

在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。

需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要符合相关规定。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

相关技术
  • 一种液晶相控阵鬼成像系统及其成像方法
  • 一种微波毫米波三维全息成像系统信号处理成像方法
  • 一种自动视网膜特征检测的眼科成像方法及系统
  • 一种具有自动视网膜特征检测的眼科成像系统
技术分类

06120116548079