CN109445718A - 一种基于数据迁移的数据写入方法及系统 - Google Patents
一种基于数据迁移的数据写入方法及系统 Download PDFInfo
- Publication number
- CN109445718A CN109445718A CN201811365485.9A CN201811365485A CN109445718A CN 109445718 A CN109445718 A CN 109445718A CN 201811365485 A CN201811365485 A CN 201811365485A CN 109445718 A CN109445718 A CN 109445718A
- Authority
- CN
- China
- Prior art keywords
- data
- written
- write
- instruction
- target
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/62—Uninstallation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种基于数据迁移的数据写入方法及系统,包括:当第一系统检测到第一数据写入指令时,确定所述第一数据写入指令指示写入的目标数据;将所述目标数据写入所述第一系统对应的第一数据中,以及将所述目标数据写入第二系统对应的第二数据中,所述第一系统为所述第二系统进行数据迁移后获得的系统。实施本发明实施例,在数据迁移后的新版本系统(第一系统)中写入数据时,可以同时将数据写入数据迁移前的旧版本系统(第二系统),从而在系统回退时不会丢失数据迁移后新写入的新数据,进而提高了系统回退的可靠性。
Description
技术领域
本发明涉及数据迁移技术领域,尤其涉及一种基于数据迁移的数据写入方法及系统。
背景技术
目前,现有的数据迁移方法通常是将旧版本系统对应的数据迁移至新版本系统对应的数据,用以实现系统更新。在实践中发现,这种数据迁移方法在新版本系统需要回退至旧版本系统时,会丢失数据迁移后新版本系统所产生的新数据。可见,现有的数据迁移方法存在着系统回退时新数据丢失的问题,从而导致系统回退的可靠性低。
发明内容
本发明实施例公开一种基于数据迁移的数据写入方法及系统,能够提高系统回退的可靠性。
本发明实施例第一方面公开一种基于数据迁移的数据写入方法,包括:
当第一系统检测到第一数据写入指令时,确定所述第一数据写入指令指示写入的目标数据;
将所述目标数据写入所述第一系统对应的第一数据中,以及将所述目标数据写入第二系统对应的第二数据中,所述第一系统为所述第二系统进行数据迁移后获得的系统。
作为一种可选的实施方式,在本发明实施例第一方面中,在所述将所述目标数据写入所述第一系统对应的第一数据中,以及将所述目标数据写入第二系统对应的第二数据中之后,所述方法还包括:
当所述第一系统检测到系统回退指令时,根据所述第二数据将所述第一系统回退至所述第二系统;
判断所述第二系统是否接收到数据读取指令;
如果是,根据所述数据读取指令在所述第二数据中读取数据。
作为一种可选的实施方式,在本发明实施例第一方面中,在判断出所述第二系统未接收到所述数据读取指令之后,所述方法还包括:
判断所述第二系统是否接收到第二数据写入指令;
如果是,根据所述第二数据写入指令确定所述第二数据写入指令指示写入的待写入数据;
将所述待写入数据写入所述第二系统对应的所述第二数据中,以及将所述待写入数据写入所述第一系统对应的所述第一数据中。
作为一种可选的实施方式,在本发明实施例第一方面中,在所述将所述待写入数据写入所述第二系统对应的所述第二数据中,以及将所述待写入数据写入所述第一系统对应的所述第一数据中之后,所述方法还包括:
当所述第二系统检测到系统更新指令时,根据所述第一数据将所述第二系统更新至所述第一系统。
作为一种可选的实施方式,在本发明实施例第一方面中,所述将所述目标数据写入所述第一系统对应的第一数据中,以及将所述目标数据写入第二系统对应的第二数据中,包括:
利用双写组件将所述目标数据写入所述第一系统对应的第一数据中,以及将所述目标数据写入第二系统对应的第二数据中。
本发明实施例第二方面公开一种基于数据迁移的数据写入系统,包括:
确定单元,用于当第一系统检测到第一数据写入指令时,确定所述第一数据写入指令指示写入的目标数据;
写入单元,用于将所述目标数据写入所述第一系统对应的第一数据中,以及将所述目标数据写入第二系统对应的第二数据中,所述第一系统为所述第二系统进行数据迁移后获得的系统。
作为一种可选的实施方式,在本发明实施例第二方面中,所述系统还包括:
回退单元,用于在所述写入单元将所述目标数据写入所述第一系统对应的第一数据中,以及将所述目标数据写入第二系统对应的第二数据中之后,当所述第一系统检测到系统回退指令时,根据所述第二数据将所述第一系统回退至所述第二系统;
第一判断单元,用于判断所述第二系统是否接收到数据读取指令;
读取单元,用于当所述第一判断单元判断出所述第二系统接收到所述数据读取指令时,根据所述数据读取指令在所述第二数据中读取数据。
作为一种可选的实施方式,在本发明实施例第二方面中,所述系统还包括:
第二判断单元,用于在所述第一判断单元判断出所述第二系统未接收到所述数据读取指令之后,判断所述第二系统是否接收到第二数据写入指令;
所述写入单元,还用于当所述第二判断单元判断出所述第二系统接收到所述第二数据写入指令时,根据所述第二数据写入指令确定所述第二数据写入指令指示写入的待写入数据,将所述待写入数据写入所述第二系统对应的所述第二数据中,以及将所述待写入数据写入所述第一系统对应的所述第一数据中。
作为一种可选的实施方式,在本发明实施例第二方面中,所述系统还包括:
更新单元,用于在所述写入单元将所述待写入数据写入所述第二系统对应的所述第二数据中,以及将所述待写入数据写入所述第一系统对应的所述第一数据中之后,当所述第二系统检测到系统更新指令时,根据所述第一数据将所述第二系统更新至所述第一系统。
作为一种可选的实施方式,在本发明实施例第二方面中,所述写入单元用于将所述目标数据写入所述第一系统对应的第一数据中,以及将所述目标数据写入第二系统对应的第二数据中的方式具体为:
所述写入单元,用于利用双写组件将所述目标数据写入所述第一系统对应的第一数据中,以及将所述目标数据写入第二系统对应的第二数据中。
本发明实施例第三方面公开一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行第一方面的任意一种方法的部分或全部步骤。
本发明实施例第四方面公开一种应用发布平台,所述应用发布平台用于发布计算机程序产品,其中,当所述计算机程序产品在计算机上运行时,使得所述计算机执行第一方面的任意一种方法的部分或全部步骤。
与现有技术相比,本发明实施例具有以下有益效果:
本发明实施例中,当第一系统检测到第一数据写入指令时,确定第一数据写入指令指示写入的目标数据;将目标数据写入第一系统对应的第一数据中,以及将目标数据写入第二系统对应的第二数据中,第一系统为第二系统进行数据迁移后获得的系统。这一过程在数据迁移后的新版本系统(第一系统)中写入数据时,可以同时将数据写入数据迁移前的旧版本系统(第二系统),从而在系统回退时不会丢失数据迁移后新写入的新数据,进而提高了系统回退的可靠性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例公开的一种基于数据迁移的数据写入方法的流程示意图;
图2是本发明实施例公开的另一种基于数据迁移的数据写入方法的流程示意图;
图3是本发明实施例公开的另一种基于数据迁移的数据写入方法的流程示意图;
图4是本发明实施例公开的一种基于数据迁移的数据写入系统的结构示意图;
图5是本发明实施例公开的另一种基于数据迁移的数据写入系统的结构示意图;
图6是本发明实施例公开的另一种基于数据迁移的数据写入系统的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明实施例及附图中的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明实施例公开一种基于数据迁移的数据写入方法及系统,能够提高系统回退的可靠性。以下分别进行详细说明。
实施例一
请参阅图1,图1是本发明实施例公开的一种基于数据迁移的数据写入方法的流程示意图。如图1所示,该基于数据迁移的数据写入方法可以包括以下步骤:
101、当第一系统检测到第一数据写入指令时,基于数据迁移的数据写入系统确定第一数据写入指令指示写入的目标数据。
本发明实施例中,第一系统为数据迁移后的系统,第一数据写入指令为指示向第一系统中写入新数据的指令,根据第一数据写入指令可以确定需要写入的目标数据。
作为一种可选的实施方式,在基于数据迁移的数据写入系统确定第一数据写入指令指示写入的目标数据之前,还可以执行以下步骤:
基于数据迁移的数据写入系统获取预设数据迁移系统数据库中若干存在关联关系的目标系统,预设数据迁移系统数据库中存储有若干组存在关联关系的目标系统,关联关系为系统更新关系或者系统回退关系;
基于数据迁移的数据写入系统在目标系统中确定若干个第一系统与该第一系统对应的第二系统,第一系统为第二系统进行数据迁移后获得的系统。
通过实施这种可选的实施方式,可以利用预设数据迁移系统数据库来对应存储存在关联关系的目标系统,便于分类管理系统的版本关系,更加方便。
102、基于数据迁移的数据写入系统将目标数据写入第一系统对应的第一数据中,以及将目标数据写入第二系统对应的第二数据中,第一系统为第二系统进行数据迁移后获得的系统。
作为一种可选的实施方式,基于数据迁移的数据写入系统将目标数据写入第一系统对应的第一数据中,以及将目标数据写入第二系统对应的第二数据中可以包括:
基于数据迁移的数据写入系统将目标数据写入第一系统对应的第一数据中,并检测在将目标数据写入第一数据后的预设时间段内是否接收到针对该目标数据的修改指令或删除指令;
当检测出在预设时间段内未接收到针对目标数据的修改指令和删除指令时,基于数据迁移的数据写入系统将目标数据写入第二系统对应的第二数据中。
通过实施这种可选的实施方式,可以先将目标数据写入第一系统,如果预设时间段内未接收到针对目标数据的修改指令和删除指令,再将目标数据写入第二系统。这一过程可以减少对目标数据短时间内反复修改或删除导致的同步数据工作量大的情况发生的概率,提高目标数据写入的可靠性。
作为另一种可选的实施方式,在基于数据迁移的数据写入系统将目标数据写入第一系统对应的第一数据中,以及将目标数据写入第二系统对应的第二数据中之后,还可以执行以下步骤:
基于数据迁移的数据写入系统检测是否接收到针对目标数据的修改指令;
如果接收到该修改指令,基于数据迁移的数据写入系统根据该修改指令在第一系统的第一数据中修改目标数据,以及在第二系统的第二数据中修改目标数据;
如果未接收到该修改指令,基于数据迁移的数据写入系统检测是否接收到针对目标数据的删除指令;
如果接收到该删除指令,基于数据迁移的数据写入系统在第一系统对应的第一数据中删除目标数据,以及在第二系统对应的第二数据中删除目标数据。
通过实施这种可选的实施方式,可以在将新数据写入第一系统和第二系统之后,如果需要对新数据进行修改或者删除,则在第一系统和第二系统中修改或者删除新数据,用以确保新数据的实时性与同步性。
可见,实施图1所描述的基于数据迁移的数据写入方法,在数据迁移后的新版本系统(第一系统)中写入数据时,可以同时将数据写入数据迁移前的旧版本系统(第二系统),从而在系统回退时不会丢失数据迁移后新写入的新数据,进而提高了系统回退的可靠性。
实施例二
请参阅图2,图2是本发明实施例公开的另一种基于数据迁移的数据写入方法的流程示意图。如图2所示,该基于数据迁移的数据写入方法可以包括以下步骤:
201、当第一系统检测到第一数据写入指令时,基于数据迁移的数据写入系统确定第一数据写入指令指示写入的目标数据。
202、基于数据迁移的数据写入系统将目标数据写入第一系统对应的第一数据中,以及将目标数据写入第二系统对应的第二数据中,第一系统为第二系统进行数据迁移后获得的系统。
203、当第一系统检测到系统回退指令时,基于数据迁移的数据写入系统根据第二数据将第一系统回退至第二系统。
204、基于数据迁移的数据写入系统判断第二系统是否接收到数据读取指令;如果是,执行步骤205,如果否,执行步骤206。
205、基于数据迁移的数据写入系统根据数据读取指令在第二数据中读取数据。
206、基于数据迁移的数据写入系统判断第二系统是否接收到第二数据写入指令,如果是,执行步骤207至步骤208,如果否,结束本次流程。
207、基于数据迁移的数据写入系统根据第二数据写入指令确定第二数据写入指令指示写入的待写入数据。
208、基于数据迁移的数据写入系统将待写入数据写入第二系统对应的第二数据中,以及将待写入数据写入第一系统对应的第一数据中。
可见,实施图2所描述的基于数据迁移的数据写入方法,在数据迁移后的新版本系统(第一系统)中写入数据时,可以同时将数据写入数据迁移前的旧版本系统(第二系统),从而在系统回退时不会丢失数据迁移后新写入的新数据,进而提高了系统回退的可靠性。
此外,实施图2所描述的基于数据迁移的数据写入方法,当第一系统检测到系统回退指令时,可以根据第二数据将第一系统回退至第二系统,当在第二系统中读取数据时,能够在第二数据中读取数据,由于第二数据中包含系统更新期间向第一系统中写入的新数据,因而不会丢失系统更新期间的新数据,系统回退更加可靠。
此外,实施图2所描述的基于数据迁移的数据写入方法,在系统回退至第二系统之后,写入数据也可以既写入第二系统又写入第一系统,以此在系统再次更新时确保不会丢失回退期间产生的新数据,实现了系统回退与更新的数据之间的一致性程度。
实施例三
请参阅图3,图3是本发明实施例公开的另一种基于数据迁移的数据写入方法的流程示意图。如图3所示,该基于数据迁移的数据写入方法可以包括以下步骤:
301、当第一系统检测到第一数据写入指令时,基于数据迁移的数据写入系统确定第一数据写入指令指示写入的目标数据。
302、基于数据迁移的数据写入系统利用双写组件将目标数据写入第一系统对应的第一数据中,以及将目标数据写入第二系统对应的第二数据中,第一系统为第二系统进行数据迁移后获得的系统。
本发明实施例中,双写组件用于将目标数据写入第一系统和第二系统。
303、当第一系统检测到系统回退指令时,基于数据迁移的数据写入系统根据第二数据将第一系统回退至第二系统。
304、基于数据迁移的数据写入系统判断第二系统是否接收到数据读取指令;如果是,执行步骤305,如果否,执行步骤306。
305、基于数据迁移的数据写入系统根据数据读取指令在第二数据中读取数据。
306、基于数据迁移的数据写入系统判断第二系统是否接收到第二数据写入指令,如果是,执行步骤307至步骤309,如果否,结束本次流程。
307、基于数据迁移的数据写入系统根据第二数据写入指令确定第二数据写入指令指示写入的待写入数据。
308、基于数据迁移的数据写入系统将待写入数据写入第二系统对应的第二数据中,以及将待写入数据写入第一系统对应的第一数据中。
作为一种可选的实施方式,在基于数据迁移的数据写入系统将待写入数据写入第二系统对应的第二数据中,以及将待写入数据写入第一系统对应的第一数据中之后,还可以执行以下步骤:
基于数据迁移的数据写入系统检测是否接收到针对待写入数据的修改指令;
如果接收到修改指令,基于数据迁移的数据写入系统根据该修改指令在第一系统对应的第一数据中修改待写入数据,以及在第二系统对应的第二数据中修改待写入数据;
如果未接收到修改指令,基于数据迁移的数据写入系统检测是否接收到针对待写入数据的删除指令;
如果接收到删除指令,基于数据迁移的数据写入系统根据该删除指令在第一系统对应的第一数据中删除待写入数据,以及在第二系统对应的第二数据中删除待写入数据。
通过实施这种可选的实施方式,可以在将系统回退后产生的新数据写入第一系统和第二系统之后,如果需要对新数据进行修改或者删除,则在第一系统和第二系统中修改或者删除新数据,用以确保系统回退后产生的新数据的实时性与同步性。
309、当第二系统检测到系统更新指令时,基于数据迁移的数据写入系统根据第一数据将第二系统更新至第一系统。
可见,实施图3所描述的基于数据迁移的数据写入方法,在数据迁移后的新版本系统(第一系统)中写入数据时,可以同时将数据写入数据迁移前的旧版本系统(第二系统),从而在系统回退时不会丢失数据迁移后新写入的新数据,进而提高了系统回退的可靠性。
此外,实施图3所描述的基于数据迁移的数据写入方法,当第一系统检测到系统回退指令时,可以根据第二数据将第一系统回退至第二系统,当在第二系统中读取数据时,能够在第二数据中读取数据,由于第二数据中包含系统更新期间向第一系统中写入的新数据,因而不会丢失系统更新期间的新数据,系统回退更加可靠。
此外,实施图3所描述的基于数据迁移的数据写入方法,在系统回退至第二系统之后,写入数据也可以既写入第二系统又写入第一系统,以此在系统再次更新时确保不会丢失回退期间产生的新数据,实现了系统回退与更新的数据之间的一致性程度。
实施例四
请参阅图4,图4是本发明实施例公开的一种基于数据迁移的数据写入系统的结构示意图。其中,如图4所示,该基于数据迁移的数据写入系统400可以包括:
确定单元401,用于当第一系统检测到第一数据写入指令时,确定第一数据写入指令指示写入的目标数据。
作为一种可选的实施方式,在确定单元401当第一系统检测到第一数据写入指令时,确定第一数据写入指令指示写入的目标数据之前,确定单元401还可以用于:
获取预设数据迁移系统数据库中若干存在关联关系的目标系统,预设数据迁移系统数据库中存储有若干组存在关联关系的目标系统,关联关系为系统更新关系或者系统回退关系;
在目标系统中确定若干个第一系统与该第一系统对应的第二系统,第一系统为第二系统进行数据迁移后获得的系统。
通过实施这种可选的实施方式,可以利用预设数据迁移系统数据库来对应存储存在关联关系的目标系统,便于分类管理系统的版本关系,更加方便。
写入单元402,用于将目标数据写入第一系统对应的第一数据中,以及将目标数据写入第二系统对应的第二数据中,第一系统为第二系统进行数据迁移后获得的系统。
作为一种可选的实施方式,写入单元402将目标数据写入第一系统对应的第一数据中,以及将目标数据写入第二系统对应的第二数据中可以包括:
将目标数据写入第一系统对应的第一数据中,并检测在将目标数据写入第一数据后的预设时间段内是否接收到针对该目标数据的修改指令或删除指令;
当检测出在预设时间段内未接收到针对目标数据的修改指令和删除指令时,将目标数据写入第二系统对应的第二数据中。
通过实施这种可选的实施方式,可以先将目标数据写入第一系统,如果预设时间段内未接收到针对目标数据的修改指令和删除指令,再将目标数据写入第二系统。这一过程可以减少对目标数据短时间内反复修改或删除导致的同步数据工作量大的情况发生的概率,提高目标数据写入的可靠性。
作为另一种可选的实施方式,在写入单元402将目标数据写入第一系统对应的第一数据中,以及将目标数据写入第二系统对应的第二数据中之后,写入单元402还可以用于:
检测是否接收到针对目标数据的修改指令;
如果接收到该修改指令,根据该修改指令在第一系统的第一数据中修改目标数据,以及在第二系统的第二数据中修改目标数据;
如果未接收到该修改指令,检测是否接收到针对目标数据的删除指令;
如果接收到该删除指令,在第一系统对应的第一数据中删除目标数据,以及在第二系统对应的第二数据中删除目标数据。
通过实施这种可选的实施方式,可以在将新数据写入第一系统和第二系统之后,如果需要对新数据进行修改或者删除,则在第一系统和第二系统中修改或者删除新数据,用以确保新数据的实时性与同步性。
可见,实施图4所描述的基于数据迁移的数据写入系统,在数据迁移后的新版本系统(第一系统)中写入数据时,可以同时将数据写入数据迁移前的旧版本系统(第二系统),从而在系统回退时不会丢失数据迁移后新写入的新数据,进而提高了系统回退的可靠性。
实施例五
请参阅图5,图5是本发明实施例公开的另一种基于数据迁移的数据写入系统的结构示意图。其中,图5所示的基于数据迁移的数据写入系统400是由图4所示的基于数据迁移的数据写入系统400优化得到的,与图4所示的基于数据迁移的数据写入系统400相比,图5所示的基于数据迁移的数据写入系统400还可以包括:
回退单元403,用于在写入单元402将目标数据写入第一系统对应的第一数据中,以及将目标数据写入第二系统对应的第二数据中之后,当第一系统检测到系统回退指令时,根据第二数据将第一系统回退至第二系统。
第一判断单元404,用于判断第二系统是否接收到数据读取指令。
读取单元405,用于当第一判断单元404判断出第二系统接收到数据读取指令时,根据数据读取指令在第二数据中读取数据。
可选的,图5所示的基于数据迁移的数据写入系统400还可以包括:
第二判断单元406,用于在第一判断单元404判断出第二系统未接收到数据读取指令之后,判断第二系统是否接收到第二数据写入指令。
写入单元402,还用于当第二判断单元406判断出第二系统接收到第二数据写入指令时,根据第二数据写入指令确定第二数据写入指令指示写入的待写入数据,将待写入数据写入第二系统对应的第二数据中,以及将待写入数据写入第一系统对应的第一数据中。
作为一种可选的实施方式,在写入单元402将待写入数据写入第二系统对应的第二数据中,以及将待写入数据写入第一系统对应的第一数据中之后,写入单元402还可以用于:
检测是否接收到针对待写入数据的修改指令;
如果接收到修改指令,根据该修改指令在第一系统对应的第一数据中修改待写入数据,以及在第二系统对应的第二数据中修改待写入数据;
如果未接收到修改指令,检测是否接收到针对待写入数据的删除指令;
如果接收到删除指令,根据该删除指令在第一系统对应的第一数据中删除待写入数据,以及在第二系统对应的第二数据中删除待写入数据。
通过实施这种可选的实施方式,可以在将系统回退后产生的新数据写入第一系统和第二系统之后,如果需要对新数据进行修改或者删除,则在第一系统和第二系统中修改或者删除新数据,用以确保系统回退后产生的新数据的实时性与同步性。
可见,实施图5所描述的基于数据迁移的数据写入系统,在数据迁移后的新版本系统(第一系统)中写入数据时,可以同时将数据写入数据迁移前的旧版本系统(第二系统),从而在系统回退时不会丢失数据迁移后新写入的新数据,进而提高了系统回退的可靠性。
此外,实施图5所描述的基于数据迁移的数据写入系统,当第一系统检测到系统回退指令时,可以根据第二数据将第一系统回退至第二系统,当在第二系统中读取数据时,能够在第二数据中读取数据,由于第二数据中包含系统更新期间向第一系统中写入的新数据,因而不会丢失系统更新期间的新数据,系统回退更加可靠。
此外,实施图5所描述的基于数据迁移的数据写入系统,在系统回退至第二系统之后,写入数据也可以既写入第二系统又写入第一系统,以此在系统再次更新时确保不会丢失回退期间产生的新数据,实现了系统回退与更新的数据之间的一致性程度。
实施例六
请参阅图6,图6是本发明实施例公开的另一种基于数据迁移的数据写入系统的结构示意图。其中,图6所示的基于数据迁移的数据写入系统400是由图5所示的基于数据迁移的数据写入系统400优化得到的,与图5所示的基于数据迁移的数据写入系统400相比,图6所示的基于数据迁移的数据写入系统400还可以包括:
更新单元407,用于在写入单元402将待写入数据写入第二系统对应的第二数据中,以及将待写入数据写入第一系统对应的第一数据中之后,当第二系统检测到系统更新指令时,根据第一数据将第二系统更新至第一系统。
具体的,在写入单元402将待写入数据写入第二系统对应的第二数据中,以及将待写入数据写入第一系统对应的第一数据中之后,写入单元402向更新单元407发送触发指令,以触发更新单元407当第二系统检测到系统更新指令时,根据第一数据将第二系统更新至第一系统。
可选的,在图6所示的基于数据迁移的数据写入系统400中,写入单元402用于将目标数据写入第一系统对应的第一数据中,以及将目标数据写入第二系统对应的第二数据中的方式具体为:
写入单元402,用于利用双写组件将目标数据写入第一系统对应的第一数据中,以及将目标数据写入第二系统对应的第二数据中。
可见,实施图6所描述的基于数据迁移的数据写入系统,在数据迁移后的新版本系统(第一系统)中写入数据时,可以同时将数据写入数据迁移前的旧版本系统(第二系统),从而在系统回退时不会丢失数据迁移后新写入的新数据,进而提高了系统回退的可靠性。
此外,实施图6所描述的基于数据迁移的数据写入系统,当第一系统检测到系统回退指令时,可以根据第二数据将第一系统回退至第二系统,当在第二系统中读取数据时,能够在第二数据中读取数据,由于第二数据中包含系统更新期间向第一系统中写入的新数据,因而不会丢失系统更新期间的新数据,系统回退更加可靠。
此外,实施图6所描述的基于数据迁移的数据写入系统,在系统回退至第二系统之后,写入数据也可以既写入第二系统又写入第一系统,以此在系统再次更新时确保不会丢失回退期间产生的新数据,实现了系统回退与更新的数据之间的一致性程度。
本发明实施例公开一种计算机可读存储介质,其存储计算机程序,其中,该计算机程序使得计算机执行图1~图3任意一种基于数据迁移的数据写入方法。
本发明实施例还公开一种计算机程序产品,其中,当计算机程序产品在计算机上运行时,使得计算机执行如以上各方法实施例中的方法的部分或全部步骤。
本发明实施例还公开一种应用发布平台,其中,应用发布平台用于发布计算机程序产品,其中,当计算机程序产品在计算机上运行时,使得计算机执行如以上各方法实施例中的方法的部分或全部步骤。
在本发明的各种实施例中,应理解,上述各过程的序号的大小并不意味着执行顺序的必然先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
在本发明所提供的实施例中,应理解,“与A相应的B”表示B与A相关联,根据A可以确定B。但还应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其他信息确定B。
另外,在本发明各实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元若以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可获取的存储器中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或者部分,可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干请求用以使得一台计算机设备(可以为个人计算机、服务器或者网络设备等,具体可以是计算机设备中的处理器)执行本发明的各个实施例上述方法的部分或全部步骤。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、一次可编程只读存储器(One-time Programmable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
以上对本发明实施例公开的一种基于数据迁移的数据写入方法及系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种基于数据迁移的数据写入方法,其特征在于,包括:
当第一系统检测到第一数据写入指令时,确定所述第一数据写入指令指示写入的目标数据;
将所述目标数据写入所述第一系统对应的第一数据中,以及将所述目标数据写入第二系统对应的第二数据中,所述第一系统为所述第二系统进行数据迁移后获得的系统。
2.根据权利要求1所述的方法,其特征在于,在所述将所述目标数据写入所述第一系统对应的第一数据中,以及将所述目标数据写入第二系统对应的第二数据中之后,所述方法还包括:
当所述第一系统检测到系统回退指令时,根据所述第二数据将所述第一系统回退至所述第二系统;
判断所述第二系统是否接收到数据读取指令;
如果是,根据所述数据读取指令在所述第二数据中读取数据。
3.根据权利要求2所述的方法,其特征在于,在判断出所述第二系统未接收到所述数据读取指令之后,所述方法还包括:
判断所述第二系统是否接收到第二数据写入指令;
如果是,根据所述第二数据写入指令确定所述第二数据写入指令指示写入的待写入数据;
将所述待写入数据写入所述第二系统对应的所述第二数据中,以及将所述待写入数据写入所述第一系统对应的所述第一数据中。
4.根据权利要求3所述的方法,其特征在于,在所述将所述待写入数据写入所述第二系统对应的所述第二数据中,以及将所述待写入数据写入所述第一系统对应的所述第一数据中之后,所述方法还包括:
当所述第二系统检测到系统更新指令时,根据所述第一数据将所述第二系统更新至所述第一系统。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述将所述目标数据写入所述第一系统对应的第一数据中,以及将所述目标数据写入第二系统对应的第二数据中,包括:
利用双写组件将所述目标数据写入所述第一系统对应的第一数据中,以及将所述目标数据写入第二系统对应的第二数据中。
6.一种基于数据迁移的数据写入系统,其特征在于,包括:
确定单元,用于当第一系统检测到第一数据写入指令时,确定所述第一数据写入指令指示写入的目标数据;
写入单元,用于将所述目标数据写入所述第一系统对应的第一数据中,以及将所述目标数据写入第二系统对应的第二数据中,所述第一系统为所述第二系统进行数据迁移后获得的系统。
7.根据权利要求6所述的系统,其特征在于,所述系统还包括:
回退单元,用于在所述写入单元将所述目标数据写入所述第一系统对应的第一数据中,以及将所述目标数据写入第二系统对应的第二数据中之后,当所述第一系统检测到系统回退指令时,根据所述第二数据将所述第一系统回退至所述第二系统;
第一判断单元,用于判断所述第二系统是否接收到数据读取指令;
读取单元,用于当所述第一判断单元判断出所述第二系统接收到所述数据读取指令时,根据所述数据读取指令在所述第二数据中读取数据。
8.根据权利要求7所述的系统,其特征在于,所述系统还包括:
第二判断单元,用于在所述第一判断单元判断出所述第二系统未接收到所述数据读取指令之后,判断所述第二系统是否接收到第二数据写入指令;
所述写入单元,还用于当所述第二判断单元判断出所述第二系统接收到所述第二数据写入指令时,根据所述第二数据写入指令确定所述第二数据写入指令指示写入的待写入数据,将所述待写入数据写入所述第二系统对应的所述第二数据中,以及将所述待写入数据写入所述第一系统对应的所述第一数据中。
9.根据权利要求8所述的系统,其特征在于,所述系统还包括:
更新单元,用于在所述写入单元将所述待写入数据写入所述第二系统对应的所述第二数据中,以及将所述待写入数据写入所述第一系统对应的所述第一数据中之后,当所述第二系统检测到系统更新指令时,根据所述第一数据将所述第二系统更新至所述第一系统。
10.根据权利要求6至9任一项所述的系统,其特征在于,所述写入单元用于将所述目标数据写入所述第一系统对应的第一数据中,以及将所述目标数据写入第二系统对应的第二数据中的方式具体为:
所述写入单元,用于利用双写组件将所述目标数据写入所述第一系统对应的第一数据中,以及将所述目标数据写入第二系统对应的第二数据中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811365485.9A CN109445718A (zh) | 2018-11-16 | 2018-11-16 | 一种基于数据迁移的数据写入方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811365485.9A CN109445718A (zh) | 2018-11-16 | 2018-11-16 | 一种基于数据迁移的数据写入方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109445718A true CN109445718A (zh) | 2019-03-08 |
Family
ID=65553015
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811365485.9A Pending CN109445718A (zh) | 2018-11-16 | 2018-11-16 | 一种基于数据迁移的数据写入方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109445718A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110069222A (zh) * | 2019-04-30 | 2019-07-30 | 北京百度网讯科技有限公司 | 应用数据迁移方法、装置、新存储系统及介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102158540A (zh) * | 2011-02-18 | 2011-08-17 | 广州从兴电子开发有限公司 | 分布式数据库实现系统及方法 |
CN102624759A (zh) * | 2011-01-28 | 2012-08-01 | 中兴通讯股份有限公司 | 一种实现会话中数据迁移的方法和节点 |
CN102629268A (zh) * | 2012-03-09 | 2012-08-08 | 华为技术有限公司 | 数据同步方法、系统及数据访问装置 |
CN102917072A (zh) * | 2012-10-31 | 2013-02-06 | 北京奇虎科技有限公司 | 用于数据服务器集群之间进行数据迁移的设备、系统及方法 |
CN102982085A (zh) * | 2012-10-31 | 2013-03-20 | 北京奇虎科技有限公司 | 数据迁移系统和方法 |
CN104281506A (zh) * | 2014-07-10 | 2015-01-14 | 中国科学院计算技术研究所 | 一种文件系统的数据维护方法及系统 |
US20150339254A1 (en) * | 2012-12-20 | 2015-11-26 | Robert Bosch Gmbh | Data Transmission Using A Protocol Exception State |
CN105868343A (zh) * | 2016-03-28 | 2016-08-17 | 上海携程商务有限公司 | 数据库迁移方法及系统 |
US20160335025A1 (en) * | 2015-05-11 | 2016-11-17 | Kaminario Technologies Ltd. | Data migration system and method thereof |
CN107438110A (zh) * | 2017-09-15 | 2017-12-05 | 湖南新云网科技有限公司 | 一种基于透明计算的终端数据迁移方法及系统 |
CN107643880A (zh) * | 2017-09-27 | 2018-01-30 | 郑州云海信息技术有限公司 | 基于分布式文件系统的文件数据迁移的方法及装置 |
-
2018
- 2018-11-16 CN CN201811365485.9A patent/CN109445718A/zh active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102624759A (zh) * | 2011-01-28 | 2012-08-01 | 中兴通讯股份有限公司 | 一种实现会话中数据迁移的方法和节点 |
CN102158540A (zh) * | 2011-02-18 | 2011-08-17 | 广州从兴电子开发有限公司 | 分布式数据库实现系统及方法 |
CN102629268A (zh) * | 2012-03-09 | 2012-08-08 | 华为技术有限公司 | 数据同步方法、系统及数据访问装置 |
CN102917072A (zh) * | 2012-10-31 | 2013-02-06 | 北京奇虎科技有限公司 | 用于数据服务器集群之间进行数据迁移的设备、系统及方法 |
CN102982085A (zh) * | 2012-10-31 | 2013-03-20 | 北京奇虎科技有限公司 | 数据迁移系统和方法 |
US20150339254A1 (en) * | 2012-12-20 | 2015-11-26 | Robert Bosch Gmbh | Data Transmission Using A Protocol Exception State |
CN104281506A (zh) * | 2014-07-10 | 2015-01-14 | 中国科学院计算技术研究所 | 一种文件系统的数据维护方法及系统 |
US20160335025A1 (en) * | 2015-05-11 | 2016-11-17 | Kaminario Technologies Ltd. | Data migration system and method thereof |
CN105868343A (zh) * | 2016-03-28 | 2016-08-17 | 上海携程商务有限公司 | 数据库迁移方法及系统 |
CN107438110A (zh) * | 2017-09-15 | 2017-12-05 | 湖南新云网科技有限公司 | 一种基于透明计算的终端数据迁移方法及系统 |
CN107643880A (zh) * | 2017-09-27 | 2018-01-30 | 郑州云海信息技术有限公司 | 基于分布式文件系统的文件数据迁移的方法及装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110069222A (zh) * | 2019-04-30 | 2019-07-30 | 北京百度网讯科技有限公司 | 应用数据迁移方法、装置、新存储系统及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105144158B (zh) | 使用拆毁写检测的恢复处理方法和系统 | |
US9183236B2 (en) | Low level object version tracking using non-volatile memory write generations | |
RU2672719C2 (ru) | Журналируемое хранение без блокировок для нескольких способов доступа | |
CN105159818A (zh) | 内存数据管理中日志恢复方法及其仿真系统 | |
CN100498796C (zh) | 逻辑日志生成方法、数据库备份/恢复方法与系统 | |
CN100430902C (zh) | 一种支持边服务边恢复的分布式实时数据库故障恢复方法 | |
CN107608826A (zh) | 一种存储集群的节点的故障恢复方法、装置及介质 | |
CN107643880A (zh) | 基于分布式文件系统的文件数据迁移的方法及装置 | |
CN106095613B (zh) | 用于使用wal的数据库回滚的方法和设备 | |
CN107589915A (zh) | 一种分布式存储系统的容量信息监控方法、装置及设备 | |
KR20150104434A (ko) | 플래시 메모리에서 사용하는 로그 구조 파일시스템의 메타데이터 저장 방법 | |
CN107229414A (zh) | 存储空间回收方法及装置 | |
CN106446140A (zh) | 用于数据持久化的方法及装置 | |
CN107291710A (zh) | 一种用于分布式数据库系统的更新数据的方法及装置 | |
CN106095332A (zh) | 一种数据重删方法及装置 | |
CN107577558A (zh) | 一种云存储的快照方法及装置 | |
CN108829342A (zh) | 一种日志存储方法、系统及存储装置 | |
CN106095619A (zh) | 一种虚拟机备份方法及装置 | |
CN114022148B (zh) | 基于区块链的交易冲突检测方法、装置、设备和存储介质 | |
CN109445718A (zh) | 一种基于数据迁移的数据写入方法及系统 | |
CN103729301B (zh) | 数据处理方法和装置 | |
CN103699681B (zh) | 数据回滚的处理方法和装置 | |
CN103632099B (zh) | 未导出的Native API函数获取方法及装置 | |
CN108063782A (zh) | 节点宕机接管方法和装置、节点集群系统 | |
CN103645967A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190308 |
|
RJ01 | Rejection of invention patent application after publication |