CN107329699B - 一种纠删重写方法及系统 - Google Patents
一种纠删重写方法及系统 Download PDFInfo
- Publication number
- CN107329699B CN107329699B CN201710516757.XA CN201710516757A CN107329699B CN 107329699 B CN107329699 B CN 107329699B CN 201710516757 A CN201710516757 A CN 201710516757A CN 107329699 B CN107329699 B CN 107329699B
- Authority
- CN
- China
- Prior art keywords
- data
- modified
- written
- node
- child node
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 43
- 238000012986 modification Methods 0.000 claims abstract description 43
- 230000004048 modification Effects 0.000 claims abstract description 43
- 238000012937 correction Methods 0.000 claims abstract description 21
- 239000012634 fragment Substances 0.000 claims abstract description 9
- 238000004140 cleaning Methods 0.000 claims description 14
- 230000011218 segmentation Effects 0.000 claims description 8
- 238000003672 processing method Methods 0.000 claims description 2
- 238000013467 fragmentation Methods 0.000 abstract description 3
- 238000006062 fragmentation reaction Methods 0.000 abstract description 3
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 238000005516 engineering process Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
Images
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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1417—Boot up procedures
-
- 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/0629—Configuration or reconfiguration of storage systems
- G06F3/0634—Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
-
- 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/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Retry When Errors Occur (AREA)
Abstract
本申请公开了一种纠删重写方法,包括主节点将待写入数据经纠删分片和编码生成待写入数据片段;并将所述待写入数据片段分别发送给对应的子节点;各个所述子节点将待修改数据经备份后修改为接收到的待写入数据片段;所述主节点判断预设时间范围内各个所述子节点中的待修改数据是否全部完成修改;若否,则向完成修改的子节点发送回滚指令;所述完成修改的子节点将所述待写入数据片段重写为所述待修改数据。本申请利用重写操作前对待修改数据的备份,可以将重写入的数据恢复为原待修改数据,在重写中实现回滚操作,进而避免了全写过程中额外的读写操作。本申请还公开了一种纠删重写系统,同样具有上述有益效果。
Description
技术领域
本申请涉及分布式存储技术领域,特别涉及一种纠删重写方法及系统。
背景技术
随着信息技术的发展,分布式存储技术已经在各类具有大规模存储需求的应用中被广泛地使用。分布式存储系统采用可扩展的系统结构,在主节点的管理下,将数据分散储存在多台存储设备上,利用多台存储设备作为存储节点分担存储负荷,并配合位置服务器定位存储信息,具有较高的存取效率、可靠性和可扩展性。
在分布式存储过程中,常常使用纠删码(Erasure Coding,EC)进行数据保护。即,在进行数据写入时,首先将原始数据进行纠删分片,并在添加一定的校验之后进行编码,使得各个数据片段之间存在一定的联系,然后将各个数据片段分别写入不同的存储节点上。通过纠删码的容错机制,即使在传输等其他过程中丢失了部分数据片段,利用纠删码相关的算法也依旧能将完整的原始数据计算出来。
在数据存储过程中,常常需要进行重写(OverWrite)操作。重写又称修改写、部分覆盖写,是指对存储节点中已写入的部分数据进行修改。但是,目前的分布式存储系统在进行重写时,一般无法实现回滚(RollBack)操作。回滚是指在数据处理出错时,将出错的数据恢复到上一次正确状态。由此,一旦在纠删重写中出现失误,将无法通过回滚操作修改错误。因而现有的分布式存储系统一般都不支持重写,而是采用全写(FullWrite)操作,即对存储节点中已写入的全部数据进行修改。由于全写的修改量较大,因此其无疑会产生较多不必要的IO读写操作,故而降低了存储系统的读写性能和存储效率。
发明内容
本申请的目的在于提供一种纠删重写方法及系统,以便在重写数据时可以有效地实现回滚操作,进而避免全写操作的使用,保障存储系统的读写性能和存储效率。
为解决上述技术问题,本申请提供一种纠删重写方法,包括:
主节点将待写入数据经纠删分片和编码生成待写入数据片段;并将所述待写入数据片段分别发送给对应的子节点;各个所述子节点将待修改数据经备份后修改为接收到的待写入数据片段;
所述主节点判断预设时间范围内各个所述子节点中的待修改数据是否全部完成修改;若否,则向完成修改的子节点发送回滚指令;
所述完成修改的子节点将所述待写入数据片段重写为所述待修改数据。
可选地,所述各个所述子节点将待修改数据经备份后修改为接收到的待写入数据片段之后还包括:
各个所述子节点将所述待写入数据片段的定位信息进行存储;
所述完成修改的子节点将所述待写入数据片段重写为所述待修改数据包括:
所述完成修改的子节点根据所述定位信息查找所述待写入数据片段,将所述待写入数据片段重写为所述待修改数据。
可选地,所述各个所述子节点将所述待写入数据片段的定位信息进行存储包括:
所述各个所述子节点将所述待写入数据片段的定位信息记录在日志中。
可选地,所述完成修改的子节点将所述待写入数据片段重写为所述待修改数据之后还包括:
所述完成修改的子节点删除所述备份的待修改数据和所述定位信息。
可选地,所述完成修改的子节点删除所述备份的待修改数据和所述定位信息之后还包括:
所述完成修改的子节点向所述主节点发送回滚完成消息;
所述主节点在显示界面向用户推送提示回滚成功的提示信息。
可选地,所述主节点判断预设时间范围内各个所述子节点中的待修改数据是否全部完成修改之后还包括:
若各个所述子节点中的待修改数据全部完成修改,则所述主节点向各个所述子节点发送清理指令;
各个所述子节点删除所述备份的待修改数据和所述定位信息,向主节点发送清理完成消息。
可选地,所述各个子节点向主节点发送清理完成消息之后还包括:
所述主节点在显示界面向用户推送提示重写成功的提示信息。
本申请还提供了一种纠删重写系统,包括:
主节点:用于将待写入数据经纠删分片和编码生成待写入数据片段,将所述待写入数据片段分别发送给对应的子节点;并判断预设时间范围内各个所述子节点中的待修改数据是否全部完成修改;若否,则向完成修改的子节点发送回滚指令;
所述子节点:用于将待修改数据经备份后修改为接收到的待写入数据片段;并在接收到所述主节点发送的回滚指令之后,将所述待写入数据片段重写为所述待修改数据。
可选地,各个所述子节点还用于:
在将待修改数据经备份后修改为接收到的待写入数据片段之后,将所述待写入数据片段的定位信息进行存储;
所述完成修改的子节点具体用于:
在接收到所述回滚指令之后,根据所述定位信息查找所述待写入数据片段,将所述待写入数据片段重写为所述待修改数据。
可选地,各个所述子节点具体用于:
将所述待写入数据片段的定位信息记录在日志中。
本申请所提供的纠删重写方法中,主节点将待写入数据经纠删分片和编码生成待写入数据片段;并将所述待写入数据片段分别发送给对应的子节点;各个所述子节点将待修改数据经备份后修改为接收到的待写入数据片段;所述主节点判断预设时间范围内各个所述子节点中的待修改数据是否全部完成修改;若否,则向完成修改的子节点发送回滚指令;所述完成修改的子节点将所述待写入数据片段重写为所述待修改数据。
可见,相比于现有技术,本申请所提供的纠删重写方法中,各个子节点在进行数据修改前已经将待修改数据进行了备份,以便在接收到主节点发送的回滚指令之后,利用备份的待修改数据进行数据恢复。由此可见,本申请所提供的纠删重写方法可以在纠删重写中有效地实现回滚操作,因此可以避免全写操作的使用,进而减少了不必要的IO读写操作,提升了系统读写性能和存储效率。本申请所提供的纠删重写系统可以实现上述纠删重写方法,同样具有上述有益效果。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中需要使用的附图作简要的介绍。当然,下面有关本申请实施例的附图描述的仅仅是本申请中的一部分实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图,所获得的其他附图也属于本申请的保护范围。
图1为本申请实施例所提供的一种纠删重写方法的流程图;
图2为本申请实施例所提供的又一种纠删重写方法的流程图;
图3为本申请实施例所提供的一种纠删重写系统的结构框图。
具体实施方式
为了对本申请实施例中的技术方案进行更加清楚、完整地描述,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行介绍。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参考图1,图1为本申请实施例所提供的一种纠删重写方法的流程图,主要包括以下步骤:
步骤101:主节点将待写入数据经纠删分片和编码生成待写入数据片段。
如前所述,纠删码是分布式存储系统中普遍使用的数据保护方式。当系统中的主节点接收到了数据重写请求时,其首先将获取到的待写入数据进行纠删分片和编码,生成了一系列的待写入数据片段,以待对各个目标存储中的待修改数据进行替换修改。
步骤102:主节点将待写入数据片段分别发送给对应的子节点。
由于每个待写入数据片段都对应着各自目标存储中的待修改数据,因此主节点将各个待写入数据片段分别发送到各自目标存储对应的子节点,以便各个子节点利用接收到的待写入数据片段对待修改数据进行修改。
步骤103:各个子节点将待修改数据进行备份。
为了支持回滚操作,即将数据恢复到上一步操作之前的状态,各个子节点在进行数据修改之前,可以将目标存储中的待修改数据进行备份,具体地,可以将待修改数据备份到临时存储中,以备在执行回滚操作时进行数据恢复。
步骤104:各个子节点将待修改数据修改为接收到的待写入数据片段。
在经过步骤103将原本的待修改数据进行备份之后,各个子节点可以将目标存储中的待修改数据修改为接收到的待写入数据片段,即进行重写操作。
步骤105:主节点判断预设时间范围内各个子节点中的待修改数据是否全部完成修改;若否,进入步骤106。
在进行数据重写操作时,可能会遇到各种问题,例如网络故障、电源故障等,导致某个或多个子节点在步骤104中的数据修改无法完成。则此时为了保证各个节点间的一致性,需要令已经完成步骤104中数据修改的子节点进行回滚操作,即对已经修改了的数据进行恢复。因此,主节点需要对各个子节点的工作状态进行判断;若在预设时间范围内,存在某个或者多个子节点的数据修改工作没有完成,则进入步骤106,令已完成修改的子节点执行回滚操作。
具体地,进行判断时,可以由各个子节点在完成了步骤104之后向主节点发送修改完成消息;主节点根据是否所有的子节点在预设时间范围内都发送了修改完成消息,来判断是否所有子节点都完成了修改操作。当然,也可以由主节点主动对各个子节点发起询问进行判断。具体采用何种方式,本申请实施例并不进行限定。这里所说的预设时间,可以由本领域技术人员根据实际使用情况进行选择和设置,例如可以设为5秒等,本申请实施例对此并不进行限定。
步骤106:主节点向完成修改的子节点发送回滚指令。
经过步骤105,若判断存在部分子节点没有完成数据修改操作,则此时主节点可以向已经完成了数据修改的子节点发送回滚指令,以保证所有的子节点彼此之间的一致性。
步骤107:完成修改的子节点将待写入数据片段重写为待修改数据。
当已经完成修改的子节点接收到了来自主节点的回滚指令时,便分别利用各自之前备份的待修改数据,将已经写入到各自目标存储中的待写入数据片段重写为备份的待修改数据,以实现回滚操作。
可见,本申请实施例所提供的纠删重写方法中,各个子节点在执行数据修改操作前对待修改数据进行了备份,因此在接收到主节点发送的回滚指令时,可以将已经修改了的数据再恢复为原本的待修改数据,由此完成回滚操作。由于本申请实施例所提供的纠删重写方法可以有效地实现回滚操作,因此可以避免全写操作的应用,进而可以提高系统的读写性能和存储效率。
请参考图2,在图1所示实施例的基础上,图2为本申请实施例所提供的又一种纠删重写方法的流程图。其中,相同或相似部分请参考图1所示实施例中的相关内容,这里就不再赘述。
如图2所示,本实施例所提供的纠删重写方法主要包括以下步骤:
步骤201:主节点将待写入数据经纠删分片和编码生成待写入数据片段。
步骤202:主节点将待写入数据片段分别发送给对应的子节点。
步骤203:各个子节点将待修改数据进行备份。
步骤204:各个子节点将待修改数据修改为接收到的待写入数据片段。
步骤205:各个子节点将待写入数据片段的定位信息进行存储。
为了进一步方便子节点在进行回滚操作时从目标存储中快速查找到其写入的待写入数据片段,各个子节点在进行数据修改时,可以将待写入数据片段的定位信息进行存储;所述定位信息可以为待写入数据片段的偏移地址和长度。并且具体地,可以将该定位信息记录在日志中,以便通过读取日志快速获取待写入数据片段在目标存储中的位置。需要说明的是,步骤205也可以在步骤202与步骤203之间或者步骤203与步骤204之间进行操作,其顺序并不会对本申请实施例所提供的纠删重写方法的结果产生影响,本领域技术人员可以自行选择并设置。
当然,子节点也可以采用其他方式来寻址待写入数据,例如数据查找等方式。本申请实施例只是提供了一种优选实施方式,本领域技术人员可以根据实际使用情况自行选择并设置。
步骤206:主节点判断预设时间范围内各个子节点中的待修改数据是否全部完成修改;若否,进入步骤207;若是,进入步骤211。
步骤207:主节点向完成修改的子节点发送回滚指令。
步骤208:完成修改的子节点将待写入数据片段重写为待修改数据。
如步骤205中所述,完成修改的子节点可以根据其所存储的定位信息,在目标存储中快速查找到已经写入的待写入数据片段,再将该待写入数据片段替换修改为备份的待修改数据,完成回滚操作。
步骤209:完成修改的子节点删除备份的待修改数据和定位信息,并向主节点发送回滚完成消息。
当完成了步骤208中的回滚操作之后,子节点还可以进行存储清理,即将其存储的备份待修改数据和定位信息进行删除,以避免对存储空间的额外占用。
步骤210:主节点在显示界面向用户推送提示回滚成功的提示信息。
当主节点接收到子节点所发送的回滚完成消息之后,便可以在显示界面中向用户推送提示回滚成功的提示信息,以便用户获悉。其中,提示信息可以采用文字、语音、指示灯等方式,本领域技术人员可以根据具体情况进行选择和设置,本申请实施例对此并不进行限定。
步骤211:主节点向各个子节点发送清理指令。
当在步骤206中,主节点的判断结果是所有的子节点都完成了数据修改操作时,则此时主节点可以向各个子节点发送清理指令,以释放被占用的存储空间。
步骤212:各个子节点删除备份的待修改数据和定位信息,并向主节点发送清理完成消息。
与步骤209中的内容相似,各个子节点由于都完成了数据修改,因此在接收到主节点的清理指令之后,便同样可以进行存储空间的清理,即将其存储的备份待修改数据和定位信息进行删除,避免对存储空间的过多占用。
步骤213:主节点在显示界面向用户推送提示重写成功的提示信息。
与步骤210中的内容相似,当主节点接收到各个子节点所发送的清理完成消息之后,便可以在显示界面向用户推送提示重写成功的提示信息,以便用户获悉。同样的,该重写成功的提示信息也可以采用多种方式,本申请实施例并不进行限定,可由本领域技术人员根据实际使用情况自行选择并设置。
可见,本申请实施例所提供的纠删重写方法,在图1所示的纠删重写方法的基础上,在重写操作过程中增加了对写入的待写入数据片端定位信息的存储步骤,可以方便子节点更加快速地查找目标存储中的待写入数据,从而进行回滚操作。另外,本申请实施例还可以实现对存储空间的释放,避免了存储不足的情况的发生。除此之外,本申请实施例通过在显示界面推送提示信息,还可以更加方便用户了解重写或回滚的操作情况。
下面对本申请实施例所提供的纠删重写系统进行介绍。下文描述的纠删重写系统与上文描述的纠删重写方法可相互对应参照。
请参阅图3,图3为本申请所提供的一种纠删重写系统的结构框图;包括主节点301、子节点302。
主节点301是系统的控制中心,可以对各个子节点302进行管理和控制。主节点301主要用于将待写入数据经纠删分片和编码生成待写入数据片段,将待写入数据片段分别发送给对应的子节点302;并判断预设时间范围内各个子节点302中的待修改数据是否全部完成修改;若否,则向完成修改的子节点302发送回滚指令。
子节点302是系统中进行数据读写等操作的具体执行者,主要用于将待修改数据经备份后修改为接收到的待写入数据片段;并在接收到主节点301发送的回滚指令之后,将待写入数据片段重写为待修改数据。
其中,子节点302在将待修改数据经备份后修改为接收到的待写入数据片段之后,还可以将所述待写入数据片段的定位信息进行存储;例如将该定位信息记录在日志中。从而,当其接收到主节点301发送的回滚指令之后,可以根据该定位信息快速查找到目标存储中的待写入数据片段,将待写入数据片段重写为待修改数据。
此外,当接收到回滚指令的子节点302将待写入数据片段重写为待修改数据之后,还可以删除其存储的备份待修改数据和定位信息,以避免存储空间的累积占用;并向主节点301发送回滚完成消息。主节点在接收到回滚完成消息后,还可以在显示界面向用户推送提示回滚成功的提示信息,以便用户获悉。
而另一方面,主节点302还可以用于在判断所有子节点302均完成了数据修改操作之后,向各个子节点302发送清理指令,令各个子节点302删除存储的备份待修改数据和定位信息;并在接收到各个节点302发送的清理完成消息之后,在显示界面推送提示用户重写成功的提示信息,以便用户获悉。
可见,本申请所提供的纠删重写统,利用各个子节点302在进修数据重写操作前对待修改数据的备份,可以实现重写操作中的回滚操作,即,将查找到的已经修改了的数据恢复为备份的待修改数据。由此可见,本申请实施例所提供的纠删重写系统可以避免全写操作的使用,进而可以减少额外的IO读写操作,提高系统的读写性能和存储效率。
本申请中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的方法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的技术方案进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
Claims (10)
1.一种纠删重写方法,其特征在于,包括:
主节点将待写入数据经纠删分片和编码生成待写入数据片段;并将所述待写入数据片段分别发送给对应的子节点;各个所述子节点将待修改数据经备份到临时存储后修改为接收到的待写入数据片段;
所述主节点判断预设时间范围内各个所述子节点中的待修改数据是否全部完成修改;若否,则向完成修改的子节点发送回滚指令;
所述完成修改的子节点将所述待写入数据片段重写为所述待修改数据。
2.根据权利要求1所述纠删重写方法,其特征在于,所述各个所述子节点将待修改数据经备份到临时存储后修改为接收到的待写入数据片段之后还包括:
各个所述子节点将所述待写入数据片段的定位信息进行存储;
所述完成修改的子节点将所述待写入数据片段重写为所述待修改数据包括:
所述完成修改的子节点根据所述定位信息查找所述待写入数据片段,将所述待写入数据片段重写为所述待修改数据。
3.根据权利要求2所述纠删重写方法,其特征在于,所述各个所述子节点将所述待写入数据片段的定位信息进行存储包括:
所述各个所述子节点将所述待写入数据片段的定位信息记录在日志中。
4.根据权利要求2所述纠删重写方法,其特征在于,所述完成修改的子节点将所述待写入数据片段重写为所述待修改数据之后还包括:
所述完成修改的子节点删除备份的待修改数据和所述定位信息。
5.根据权利要求4所述纠删重写方法,其特征在于,所述完成修改的子节点删除所述备份的待修改数据和所述定位信息之后还包括:
所述完成修改的子节点向所述主节点发送回滚完成消息;
所述主节点在显示界面向用户推送提示回滚成功的提示信息。
6.根据权利要求2所述纠删重写方法,其特征在于,所述主节点判断预设时间范围内各个所述子节点中的待修改数据是否全部完成修改之后还包括:
若各个所述子节点中的待修改数据全部完成修改,则所述主节点向各个所述子节点发送清理指令;
各个所述子节点删除备份的待修改数据和所述定位信息,向所述主节点发送清理完成消息。
7.根据权利要求6所述纠删重写方法,其特征在于,所述各个子节点向主节点发送清理完成消息之后还包括:
所述主节点在显示界面向用户推送提示重写成功的提示信息。
8.一种纠删重写系统,其特征在于,包括:
主节点:用于将待写入数据经纠删分片和编码生成待写入数据片段,将所述待写入数据片段分别发送给对应的子节点;并判断预设时间范围内各个所述子节点中的待修改数据是否全部完成修改;若否,则向完成修改的子节点发送回滚指令;
所述子节点:用于将待修改数据经备份到临时存储后修改为接收到的待写入数据片段;并在接收到所述主节点发送的回滚指令之后,将所述待写入数据片段重写为所述待修改数据。
9.根据权利要求8所述纠删重写系统,其特征在于,各个所述子节点还用于:
在将待修改数据经备份到临时存储后修改为接收到的待写入数据片段之后,将所述待写入数据片段的定位信息进行存储;
在接收到所述回滚指令之后,根据所述定位信息查找所述待写入数据片段,将所述待写入数据片段重写为所述待修改数据。
10.根据权利要求9所述纠删重写系统,其特征在于,各个所述子节点具体用于:
将所述待写入数据片段的定位信息记录在日志中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710516757.XA CN107329699B (zh) | 2017-06-29 | 2017-06-29 | 一种纠删重写方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710516757.XA CN107329699B (zh) | 2017-06-29 | 2017-06-29 | 一种纠删重写方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107329699A CN107329699A (zh) | 2017-11-07 |
CN107329699B true CN107329699B (zh) | 2020-08-21 |
Family
ID=60198478
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710516757.XA Active CN107329699B (zh) | 2017-06-29 | 2017-06-29 | 一种纠删重写方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107329699B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108958964A (zh) * | 2018-06-27 | 2018-12-07 | 郑州云海信息技术有限公司 | 一种数据修改方法、装置、设备及可读存储介质 |
CN113126927B (zh) * | 2021-04-22 | 2023-11-03 | 山东英信计算机技术有限公司 | 一种数据删除方法及相关装置 |
CN116010430B (zh) * | 2023-03-24 | 2023-06-20 | 杭州趣链科技有限公司 | 数据恢复方法、数据库系统、计算机设备和存储介质 |
-
2017
- 2017-06-29 CN CN201710516757.XA patent/CN107329699B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN107329699A (zh) | 2017-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106776130B (zh) | 一种日志恢复方法、存储装置和存储节点 | |
US8229896B1 (en) | Method and apparatus for identifying data blocks required for restoration | |
US7814057B2 (en) | Page recovery using volume snapshots and logs | |
CN108646982B (zh) | 一种基于ubifs的数据自动修复方法及装置 | |
US20190227710A1 (en) | Incremental data restoration method and apparatus | |
JP5669823B2 (ja) | チェンジトラッキングを用いたシステムリカバリ方法 | |
CN107329699B (zh) | 一种纠删重写方法及系统 | |
US20190317872A1 (en) | Database cluster architecture based on dual port solid state disk | |
US11886705B2 (en) | System and method for using free space to improve erasure code locality | |
US8229892B2 (en) | Storage apparatus and data restoring method used therein | |
US10572335B2 (en) | Metadata recovery method and apparatus | |
US6944635B2 (en) | Method for file deletion and recovery against system failures in database management system | |
CN112214175A (zh) | 数据处理方法、装置、数据节点及存储介质 | |
US8312237B2 (en) | Automated relocation of in-use multi-site protected data storage | |
CN108089942B (zh) | 一种数据备份、恢复方法及装置 | |
CN111984472B (zh) | 一种数据快照方法、装置及相关设备 | |
KR101797482B1 (ko) | 데이터베이스 시스템에서 블록 복구 방법, 장치 및 컴퓨터 판독가능 매체에 저장된 컴퓨터-프로그램 | |
CN114676000A (zh) | 数据处理方法及其装置、存储介质、计算机程序产品 | |
CN110795155B (zh) | 系统启动方法及装置、电子设备、存储介质 | |
CN109634526B (zh) | 一种基于对象存储的数据操作方法及相关装置 | |
US10684922B2 (en) | Enhanced data storage using compressed data | |
CN111124740A (zh) | 一种数据读取方法、装置、存储设备及机器可读存储介质 | |
US20240111623A1 (en) | Extended protection storage system put operation | |
KR20180097220A (ko) | 데이터 저장 장치의 동작 방법 | |
CN112667161B (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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20200723 Address after: 215100 No. 1 Guanpu Road, Guoxiang Street, Wuzhong Economic Development Zone, Suzhou City, Jiangsu Province Applicant after: SUZHOU LANGCHAO INTELLIGENT TECHNOLOGY Co.,Ltd. Address before: 450018 Henan province Zheng Dong New District of Zhengzhou City Xinyi Road No. 278 16 floor room 1601 Applicant before: ZHENGZHOU YUNHAI INFORMATION TECHNOLOGY Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |