CN108459930B - 数据备份方法、装置和存储介质 - Google Patents
数据备份方法、装置和存储介质 Download PDFInfo
- Publication number
- CN108459930B CN108459930B CN201810287504.4A CN201810287504A CN108459930B CN 108459930 B CN108459930 B CN 108459930B CN 201810287504 A CN201810287504 A CN 201810287504A CN 108459930 B CN108459930 B CN 108459930B
- Authority
- CN
- China
- Prior art keywords
- area
- data
- information
- backup
- backup area
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 57
- 238000004590 computer program Methods 0.000 claims description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- 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/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
-
- 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/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明提供了一种数据备份方法、装置和存储介质,属于数据备份技术领域。本发明实施例提供的数据备份方法、装置和存储介质,在存储器的数据区和备份区添加了头部信息和尾部信息,根据头部信息和尾部信息,来确定数据区和备份区的有效性,将数据写入有效区域,通过头部信息和尾部信息,还可以检测写入不完全等错误,保证写入和读出数据的完整性和有效性。
Description
技术领域
本发明涉及数据备份技术领域,具体而言,涉及一种数据备份方法、装置和电子设备。
背景技术
在数据采集和存储系统中,为了防止数据丢失或损毁而造成不必要的损失,通常会对数据进行备份。例如,使用FLASH存储器进行数据备份,即将需备份数据存储到FLASH存储器中。但在备份数据或读取备份数据的过程中,很有可能因为读写操作不当或系统突然断电等原因而导致数据损坏。现有的数据备份方法不能保证备份数据的完整性和有效性。
发明内容
针对上述现有技术中存在的问题,本发明提供了一种数据备份方法、装置和存储介质,可以通过设置头部信息和尾部信息,保证存储数据的完整性和有效性。
第一方面,本发明实施例提供了一种数据备份方法,包括:
当向存储器中写入预存数据时,获取所述存储器的数据区和备份区的头部信息和尾部信息;
根据所述数据区的头部信息和尾部信息,确定所述数据区的有效性;根据所述备份区的头部信息和尾部信息,确定所述备份区的有效性;
如果所述数据区有效,所述备份区无效,则将所述预存数据写入所述数据区;
如果所述数据区无效,所述备份区有效,则将所述预存数据写入所述备份;
如果所述数据区和所述备份区均有效,则比较所述数据区的头部信息和所述备份区的头部信息的大小;根据所述比较结果确定将所述预存数据写入数据区或备份区,并修改写入预存数据的数据区或备份区的头部信息和尾部信息。
结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,获取所述存储器的数据区和备份区的头部信息和尾部信息的步骤,包括:
读取所述存储器的数据区和备份区中存储的数据;
从所述数据区中存储的数据中,提取所述数据区的头部信息和尾部信息;
从所述备份区中存储的数据中,提取所述备份区的头部信息和尾部信息。
结合第一方面,本发明实施例提供了第一方面的第二种可能的实施方式,其中,获取所述存储器的数据区和备份区的头部信息和尾部信息的步骤,包括:
从所述数据区中的指定区域中,读取所述数据区的头部信息和尾部信息;
从所述备份区的指定区域中,读取所述备份区的头部信息和尾部信息。
结合第一方面,本发明实施例提供了第一方面的第三种可能的实施方式,其中,根据所述数据区的头部信息和尾部信息,确定所述数据区的有效性的步骤,包括:
判断所述数据区的头部信息和尾部信息是否相等;
如果是,则确定所述数据区有效;
如果否,则确定所述数据区无效;
根据所述备份区的头部信息和尾部信息,确定所述备份区的有效性的步骤,包括:
判断所述备份区的头部信息和尾部信息是否相等;
如果是,则确定所述备份区有效;
如果否,则确定所述备份区无效。
结合第一方面的第三种可能的实施方式,本发明实施例提供了第一方面的第四种可能的实施方式,其中,根据所述比较结果确定将所述预存数据写入数据区或备份区,并修改写入预存数据的数据区或备份区的头部信息和尾部信息的步骤,包括:
将所述预存数据写入头部信息较小的区域;
增加写入预存数据的区域的头部信息和尾部信息的数值。
结合第一方面的第四种可能的实施方式,本发明实施例提供了第一方面的第五种可能的实施方式,其中,所述增加写入预存数据的区域的头部信息和尾部信息的数值的步骤,包括:
增加所述数据区和备份区中较大的头部信息的数值,作为写入预存数据的区域的头部信息和尾部信息。
结合第一方面的第三种可能的实施方式,本发明实施例提供了第一方面的第六种可能的实施方式,其中,根据所述比较结果确定将所述预存数据写入数据区或备份区的步骤,包括:
将所述预存数据写入头部信息较大的区域;
修改写入预存数据的数据区或备份区的头部信息和尾部信息的步骤,包括:
减小写入预存数据的区域的头部信息和尾部信息的数值。
结合第一方面的第四种可能的实施方式,本发明实施例提供了第一方面的第七种可能的实施方式,其中,所述方法还包括:
当从存储器中读取数据时,获取所述存储器的数据区和备份区的头部信息和尾部信息;
根据所述数据区的头部信息和尾部信息,确定所述数据区的有效性;根据所述备份区的头部信息和尾部信息,确定所述备份区的有效性;
如果所述数据区有效,所述备份区无效,则从所述数据区读取数据;
如果所述数据区无效,所述备份区有效,则从所述备份区读取数据;
如果所述数据区和所述备份区均有效,则读取头部信息较大的区域的数据。
第二方面,本发明实施例还提供了一种数据备份装置,包括:
获取模块,用于当向存储器中写入预存数据时,获取所述存储器的数据区和备份区的头部信息和尾部信息;
判断模块,用于根据所述数据区的头部信息和尾部信息,确定所述数据区的有效性;根据所述备份区的头部信息和尾部信息,确定所述备份区的有效性;
写入模块,用于当所述数据区有效,所述备份区无效时,将所述预存数据写入所述数据区;当所述数据区无效,所述备份区有效时,则将所述预存数据写入所述备份;当所述数据区和所述备份区均有效时,则比较所述数据区的头部信息和所述备份区的头部信息的大小;根据所述比较结果确定将所述预存数据写入数据区或备份区,并修改写入预存数据的数据区或备份区的头部信息和尾部信息。
第三方面,本发明实施例还提供了一种计算机可读存储介质,其特征在于,存储有为实现上述的数据备份方法所使用的计算机程序指令。
本发明实施例带来了以下有益效果:
本发明实施例提供的数据备份方法、装置和存储介质,在存储器的数据区和备份区添加了头部信息和尾部信息,根据头部信息和尾部信息,来确定数据区和备份区的有效性,将数据写入有效区域,通过头部信息和尾部信息,还可以检测写入不完全等错误,保证写入和读出数据的完整性和有效性。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例所提供的第一种数据备份方法的写入过程流程图;
图2为本发明实施例所提供的第一种数据备份方法的读出过程流程图;
图3为本发明实施例所提供的第二种数据备份方法的写入过程流程图;
图4为本发明实施例所提供的第二种数据备份方法的读出过程流程图;
图5为本发明实施例所提供的数据备份装置的结构框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
针对现有的数据备份方法不能保证备份数据的完整性和有效性的问题,本发明实施例提供了一种数据备份方法、装置和存储介质,以下首先对本发明的数据备份方法进行详细介绍。
实施例一
本实施例提供了一种数据备份方法,采用该方法,可以提高对存储器的读写操作的安全可靠性。上述存储器可以包括易失性和非易失性存储器,例如FLASH存储器。存储器内部的存储区被划分为数据区和备份区。数据区和备份区均用于存储数据,也可以称为第一数据区和第二数据区。该方法在数据区和备份区均添加了头部信息和尾部信息。在数据完整有效的情况下,头部信息和尾部信息应当相同。例如,当从数据区或备份区读出数据时,若读出的数据的头部信息和尾部信息相同,则可以认为读出的数据是完整有效的。
图1示出了该数据备份方法的写入过程流程图。如图1所示,该方法包括如下步骤:
步骤S102,当向存储器中写入预存数据时,获取存储器的数据区和备份区的头部信息和尾部信息。
可以采用如下两种方式获取存储器的数据区和备份区的头部信息和尾部信息。第一种实现方式为:读取存储器的数据区和备份区中存储的数据;从数据区中存储的数据中,提取数据区的头部信息和尾部信息;从备份区中存储的数据中,提取备份区的头部信息和尾部信息,从而获取存储器的数据区和备份区的头部信息和尾部信息。第二种实现方式为:从数据区中的指定区域中,读取数据区的头部信息和尾部信息。即在存储器的数据区,指定了第一特定区域用于存放头部信息,第二特定区域用于存放尾部信息。可以直接从第一特定区域读取头部信息,从第二特定区域读取尾部信息。从备份区的指定区域中,读取备份区的头部信息和尾部信息。同理,也可以直接从备份区的第一特定区域读取备份区的头部信息,从备份区的第二特定区域读取备份区的尾部信息。
步骤S104,根据数据区的头部信息和尾部信息,判断数据区的有效性;如果是,执行步骤S106;如果否,执行步骤S112。
具体地,判断数据区的头部信息和尾部信息是否相等;如果是,则确定数据区有效;如果否,则确定数据区无效。一种特殊情况是,如果头部信息和尾部信息的值均为0xFF,说明数据区刚完成格式化,即数据区当前为空,可以写入数据。
步骤S106,根据备份区的头部信息和尾部信息,判断备份区的有效性;如果是,执行步骤S108;如果否,执行步骤S110。
同理,可以判断备份区的头部信息和尾部信息是否相等;如果是,则确定备份区有效;如果否,则确定备份区无效。
如果数据区有效,而备份区无效,则将预存数据写入数据区,并增加数据区的头部信息和尾部信息的数值。如果数据区和备份区均有效,则执行步骤S108。
步骤S108,判断数据区的头部信息是否大于备份区的头部信息;如果是,执行步骤S114,如果否,执行步骤S110。
步骤S110,将预存数据写入数据区,增加数据区的头部信息和尾部信息的数值。
当数据区的头部信息小于备份区的头部信息时,将预存数据写入数据区,并增加数据区的头部信息和尾部信息的数值。当数据区的头部信息大于备份区的头部信息时,将预存数据写入备份区,并增加备份区的头部信息和尾部信息的数值。即将预存数据写入头部信息较小的区域。
当数据区的头部信息和备份区的头部信息相等,都为0xFF时,可以任选数据区或备份区,将预存数据写入选定区域。此时,可以给定一个头部信息和尾部信息的数值,将数据区和备份区的头部信息和尾部信息均设为该给定数值,增加写入预存数据的区域的头部信息和尾部信息的数值。
步骤S112,根据备份区的头部信息和尾部信息,判断备份区的有效性;如果是,执行步骤S114;如果否,结束。
步骤S114,将预存数据写入备份区,增加备份区的头部信息和尾部信息的数值。
如果数据区无效,备份区有效,则将预存数据写入备份区,增加备份区的头部信息和尾部信息的数值。
增加数据区的头部信息和尾部信息的数值的步骤,具体为:增加数据区和备份区中较大的头部信息的数值,即将较大的头部信息的数值加一,作为数据区的头部信息和尾部信息。
同理,增加备份区的头部信息和尾部信息的数值的步骤,具体为:增加数据区和备份区中较大的头部信息的数值,即将较大的头部信息的数值加一,作为备份区的头部信息和尾部信息。
将预存数据写入数据区,增加数据区的头部信息和尾部信息的数值的过程可以是:将预存数据添加到从数据区读出的数据中,增加从数据区读出的数据的头部信息和尾部信息,将包含了预存数据、修改后的头部信息和尾部信息的数据整体重新写入数据区中。或者是,用预存数据替代从数据区读出的数据,增加数据的头部信息和尾部信息,将修改后的数据整体(包含了修改后的头部信息和尾部信息)重新写入数据区。
将预存数据写入备份区,增加备份区的头部信息和尾部信息的数值的过程可以是:将预存数据添加到从备份区读出的数据中,增加从备份区读出的数据的头部信息和尾部信息,将包含了预存数据、修改后的头部信息和尾部信息的数据整体重新写入备份区中。或者是,用预存数据替代从备份区读出的数据,增加数据的头部信息和尾部信息,将修改后的数据整体(包含了修改后的头部信息和尾部信息)重新写入备份区。
图2示出了该数据备份方法的读取过程流程图。如图2所示,该方法的读取过程包括如下步骤:
步骤S202,当从存储器中读取数据时,获取存储器的数据区和备份区的头部信息和尾部信息。
步骤S204,根据数据区的头部信息和尾部信息,判断数据区的有效性;如果是,执行步骤S206;如果否,执行步骤S212。
具体地,判断数据区的头部信息和尾部信息是否相等;如果是,则确定数据区有效;如果否,则确定数据区无效。
步骤S206,根据备份区的头部信息和尾部信息,判断备份区的有效性;如果是,执行步骤S208;如果否,执行步骤S210。
同理,可以判断备份区的头部信息和尾部信息是否相等;如果是,则确定备份区有效;如果否,则确定备份区无效。如果数据在写入或读出的过程中出现错误,则头部信息和尾部信息的数值就会不同,因此,可以通过头部信息和尾部信息是否相等,来判断数据区或备份区的有效性。
如果数据区有效,而备份区无效,则从数据区读取数据。如果数据区和备份区均有效,则执行步骤S208。
步骤S208,判断数据区的头部信息是否大于备份区的头部信息;如果否,执行步骤S214,如果是,执行步骤S210。
步骤S210,从数据区读取数据。
当数据区的头部信息大于备份区的头部信息时,从数据区读取数据。当数据区的头部信息小于备份区的头部信息时,从备份区读取数据。即从头部信息较大的区域读取数据。因为头部信息较大的区域的数据为最后写入的数据,即最新数据,因此读取时,从头部信息较大的区域读取数据。
步骤S212,根据备份区的头部信息和尾部信息,判断备份区的有效性;如果是,执行步骤S214;如果否,结束。
步骤S114,从备份区读取数据。
如果数据区无效,备份区有效,从备份区读取数据。
本实施例提供的数据备份方法,在存储器的数据区和备份区添加了头部信息和尾部信息,根据头部信息和尾部信息,来确定数据区和备份区的有效性,将数据写入有效区域或从有效区域读取数据,通过头部信息和尾部信息,还可以检测出写入不完全等错误,保证写入和读出数据的完整性和有效性。
实施例二
考虑到写入数据时,可以将头部信息和尾部信息的数值递增,实现校验的目的,同样,也可以将头部信息和尾部信息的数值递减,实现上述发明目的。为此,本实施例提供了一种数据备份方法。如图3所示,该方法的写入过程包括:
步骤S302,当向存储器中写入预存数据时,获取存储器的数据区和备份区的头部信息和尾部信息。
步骤S304,根据数据区的头部信息和尾部信息,判断数据区的有效性;如果是,执行步骤S306;如果否,执行步骤S312。
具体地,判断数据区的头部信息和尾部信息是否相等;如果是,则确定数据区有效;如果否,则确定数据区无效。
步骤S306,根据备份区的头部信息和尾部信息,判断备份区的有效性;如果是,执行步骤S308;如果否,执行步骤S310。
同理,可以判断备份区的头部信息和尾部信息是否相等;如果是,则确定备份区有效;如果否,则确定备份区无效。
如果数据区有效,而备份区无效,则将预存数据写入数据区,并增加数据区的头部信息和尾部信息的数值。如果数据区和备份区均有效,则执行步骤S308。
步骤S308,判断数据区的头部信息是否大于备份区的头部信息;如果是,执行步骤S310,如果否,执行步骤S314。
当数据区的头部信息小于备份区的头部信息时,将预存数据写入备份区,并减小备份区的头部信息和尾部信息的数值。当数据区的头部信息大于备份区的头部信息时,将预存数据写入数据区,并减小数据区的头部信息和尾部信息的数值。即将预存数据写入头部信息较大的区域。
步骤S310,将预存数据写入数据区,减小数据区的头部信息和尾部信息的数值。
步骤S312,根据备份区的头部信息和尾部信息,判断备份区的有效性;如果是,执行步骤S314;如果否,结束。
步骤S314,将预存数据写入备份区,减小备份区的头部信息和尾部信息的数值。
如图4所示,该方法的读取过程包括:
步骤S402,当从存储器中读取数据时,获取存储器的数据区和备份区的头部信息和尾部信息。
步骤S404,根据数据区的头部信息和尾部信息,判断数据区的有效性;如果是,执行步骤S406;如果否,执行步骤S412。
具体地,判断数据区的头部信息和尾部信息是否相等;如果是,则确定数据区有效;如果否,则确定数据区无效。
步骤S406,根据备份区的头部信息和尾部信息,判断备份区的有效性;如果是,执行步骤S408;如果否,执行步骤S410。
同理,可以判断备份区的头部信息和尾部信息是否相等;如果是,则确定备份区有效;如果否,则确定备份区无效。
步骤S408,判断数据区的头部信息是否大于备份区的头部信息;如果否,执行步骤S410,如果是,执行步骤S414。
步骤S410,从数据区读取数据。
当数据区的头部信息晓于备份区的头部信息时,从数据区读取数据。当数据区的头部信息大于备份区的头部信息时,从备份区读取数据。即从头部信息较小的区域读取数据。因为头部信息较小的区域的数据为最后写入的数据,即最新数据,因此读取时,从头部信息较小的区域读取数据。
步骤S412,根据备份区的头部信息和尾部信息,判断备份区的有效性;如果是,执行步骤S414;如果否,结束。
步骤S414,从备份区读取数据。
如果数据区无效,备份区有效,从备份区读取数据。
本实施例提供的数据备份方法,在存储器的数据区和备份区添加了头部信息和尾部信息,根据头部信息和尾部信息,来确定数据区和备份区的有效性,将数据写入有效区域或从有效区域读取数据,通过头部信息和尾部信息,还可以检测出写入不完全等错误,保证写入和读出数据的完整性和有效性。
实施例三
与上述方法实施例相对应地,本实施例提供了一种数据备份装置,如图5所示,该装置包括:
获取模块51,用于当向存储器中写入预存数据时,获取存储器的数据区和备份区的头部信息和尾部信息;
判断模块52,用于根据数据区的头部信息和尾部信息,确定数据区的有效性;根据备份区的头部信息和尾部信息,确定备份区的有效性;
写入模块53,用于当数据区有效,备份区无效时,将预存数据写入所述数据区;当数据区无效,备份区有效时,则将预存数据写入备份区;当数据区和备份区均有效时,则比较数据区的头部信息和备份区的头部信息的大小;根据比较结果确定将预存数据写入数据区或备份区,并修改写入预存数据的数据区或备份区的头部信息和尾部信息。
其中,所述获取模块51还可以用于:读取存储器的数据区和备份区中存储的数据;从数据区中存储的数据中,提取数据区的头部信息和尾部信息;从备份区中存储的数据中,提取备份区的头部信息和尾部信息。或者用于:从数据区中的指定区域中,读取数据区的头部信息和尾部信息;从备份区的指定区域中,读取备份区的头部信息和尾部信息。
所述判断模块52,还可以用于:判断数据区的头部信息和尾部信息是否相等;如果是,则确定数据区有效;如果否,则确定数据区无效;判断备份区的头部信息和尾部信息是否相等;如果是,则确定备份区有效;如果否,则确定备份区无效。
可选地,所述获取模块51还可以用于:当从存储器中读取数据时,获取存储器的数据区和备份区的头部信息和尾部信息。
该装置还包括读取模块,用于当数据区有效,备份区无效时,从数据区读取数据;当数据区无效,备份区有效时,则从备份区读取数据;当数据区和备份区均有效时,则读取头部信息较大的区域的数据。
本发明实施例提供的数据备份装置,在存储器的数据区和备份区添加了头部信息和尾部信息,根据头部信息和尾部信息,来确定数据区和备份区的有效性,将数据写入有效区域,通过头部信息和尾部信息,还可以检测写入不完全等错误,保证写入和读出数据的完整性和有效性。
进一步地,本发明实施例还提供了一种机器可读存储介质,该机器可读存储介质存储有机器可执行指令,该机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现上述的数据备份方法。
本发明实施例提供的数据备份方法、装置和存储介质具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。
需要说明的是,在本发明所提供的实施例中,应该理解到,所揭露系统和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (9)
1.一种数据备份方法,其特征在于,包括:
当向存储器中写入预存数据时,获取所述存储器的数据区和备份区的头部信息和尾部信息;
根据所述数据区的头部信息和尾部信息,确定所述数据区的有效性;根据所述备份区的头部信息和尾部信息,确定所述备份区的有效性;
如果所述数据区有效,所述备份区无效,则将所述预存数据写入所述数据区;
如果所述数据区无效,所述备份区有效,则将所述预存数据写入所述备份;
如果所述数据区和所述备份区均有效,则比较所述数据区的头部信息和所述备份区的头部信息的大小;根据所述比较结果确定将所述预存数据写入数据区或备份区,并修改写入预存数据的数据区或备份区的头部信息和尾部信息;
其中,根据所述数据区的头部信息和尾部信息,确定所述数据区的有效性的步骤,包括:
判断所述数据区的头部信息和尾部信息是否相等;
如果是,则确定所述数据区有效;
如果否,则确定所述数据区无效;
根据所述备份区的头部信息和尾部信息,确定所述备份区的有效性的步骤,包括:
判断所述备份区的头部信息和尾部信息是否相等;
如果是,则确定所述备份区有效;
如果否,则确定所述备份区无效。
2.根据权利要求1所述的方法,其特征在于,获取所述存储器的数据区和备份区的头部信息和尾部信息的步骤,包括:
读取所述存储器的数据区和备份区中存储的数据;
从所述数据区中存储的数据中,提取所述数据区的头部信息和尾部信息;
从所述备份区中存储的数据中,提取所述备份区的头部信息和尾部信息。
3.根据权利要求1所述的方法,其特征在于,获取所述存储器的数据区和备份区的头部信息和尾部信息的步骤,包括:
从所述数据区中的指定区域中,读取所述数据区的头部信息和尾部信息;
从所述备份区的指定区域中,读取所述备份区的头部信息和尾部信息。
4.根据权利要求1所述的方法,其特征在于,根据所述比较结果确定将所述预存数据写入数据区或备份区,并修改写入预存数据的数据区或备份区的头部信息和尾部信息的步骤,包括:
将所述预存数据写入头部信息较小的区域;
增加写入预存数据的区域的头部信息和尾部信息的数值。
5.根据权利要求4所述的方法,其特征在于,所述增加写入预存数据的区域的头部信息和尾部信息的数值的步骤,包括:
增加所述数据区和备份区中较大的头部信息的数值,作为写入预存数据的区域的头部信息和尾部信息。
6.根据权利要求1所述的方法,其特征在于,根据所述比较结果确定将所述预存数据写入数据区或备份区,并修改写入预存数据的数据区或备份区的头部信息和尾部信息的步骤,包括:
将所述预存数据写入头部信息较大的区域;
减小写入预存数据的区域的头部信息和尾部信息的数值。
7.根据权利要求4所述的方法,其特征在于,所述方法还包括:
当从存储器中读取数据时,获取所述存储器的数据区和备份区的头部信息和尾部信息;
根据所述数据区的头部信息和尾部信息,确定所述数据区的有效性;根据所述备份区的头部信息和尾部信息,确定所述备份区的有效性;
如果所述数据区有效,所述备份区无效,则从所述数据区读取数据;
如果所述数据区无效,所述备份区有效,则从所述备份区读取数据;
如果所述数据区和所述备份区均有效,则读取头部信息较大的区域的数据。
8.一种数据备份装置,其特征在于,包括:
获取模块,用于当向存储器中写入预存数据时,获取所述存储器的数据区和备份区的头部信息和尾部信息;
判断模块,用于根据所述数据区的头部信息和尾部信息,确定所述数据区的有效性;根据所述备份区的头部信息和尾部信息,确定所述备份区的有效性;
写入模块,用于当所述数据区有效,所述备份区无效时,将所述预存数据写入所述数据区;当所述数据区无效,所述备份区有效时,则将所述预存数据写入所述备份;当所述数据区和所述备份区均有效时,则比较所述数据区的头部信息和所述备份区的头部信息的大小;根据所述比较结果确定将所述预存数据写入数据区或备份区,并修改写入预存数据的数据区或备份区的头部信息和尾部信息;
其中,所述判断模块还用于:
判断所述数据区的头部信息和尾部信息是否相等;
如果是,则确定所述数据区有效;
如果否,则确定所述数据区无效;
所述判断模块还用于:
判断所述备份区的头部信息和尾部信息是否相等;
如果是,则确定所述备份区有效;
如果否,则确定所述备份区无效。
9.一种计算机可读存储介质,其特征在于,存储有为实现所述权利要求1~7中任一项所述的数据备份方法所使用的计算机程序指令。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810287504.4A CN108459930B (zh) | 2018-04-02 | 2018-04-02 | 数据备份方法、装置和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810287504.4A CN108459930B (zh) | 2018-04-02 | 2018-04-02 | 数据备份方法、装置和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108459930A CN108459930A (zh) | 2018-08-28 |
CN108459930B true CN108459930B (zh) | 2020-09-11 |
Family
ID=63238128
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810287504.4A Expired - Fee Related CN108459930B (zh) | 2018-04-02 | 2018-04-02 | 数据备份方法、装置和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108459930B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10884654B2 (en) * | 2018-12-31 | 2021-01-05 | Alibaba Group Holding Limited | System and method for quality of service assurance of multi-stream scenarios in a hard disk drive |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1492362A (zh) * | 2002-10-25 | 2004-04-28 | 联想(北京)有限公司 | 一种嵌入式数据库的数据备份和恢复方法 |
CN102789475A (zh) * | 2012-05-08 | 2012-11-21 | 华为技术有限公司 | 数据库服务器端结果集缓存的数据同步方法及装置 |
CN103531234A (zh) * | 2012-07-06 | 2014-01-22 | 河南思维自动化设备股份有限公司 | 一种NandFlash存储器写操作过程掉电防护方法 |
CN105354109A (zh) * | 2015-10-09 | 2016-02-24 | 浙江宇视科技有限公司 | 视频监控索引数据的备份方法和装置 |
CN107329850A (zh) * | 2017-05-26 | 2017-11-07 | 杭州赫智电子科技有限公司 | 一种满足海量读写次数操作的存储器及数据存储方法 |
CN107748705A (zh) * | 2017-11-08 | 2018-03-02 | 厦门市美亚柏科信息股份有限公司 | 系统evt日志碎片恢复的方法、终端设备及存储介质 |
-
2018
- 2018-04-02 CN CN201810287504.4A patent/CN108459930B/zh not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1492362A (zh) * | 2002-10-25 | 2004-04-28 | 联想(北京)有限公司 | 一种嵌入式数据库的数据备份和恢复方法 |
CN102789475A (zh) * | 2012-05-08 | 2012-11-21 | 华为技术有限公司 | 数据库服务器端结果集缓存的数据同步方法及装置 |
CN103531234A (zh) * | 2012-07-06 | 2014-01-22 | 河南思维自动化设备股份有限公司 | 一种NandFlash存储器写操作过程掉电防护方法 |
CN105354109A (zh) * | 2015-10-09 | 2016-02-24 | 浙江宇视科技有限公司 | 视频监控索引数据的备份方法和装置 |
CN107329850A (zh) * | 2017-05-26 | 2017-11-07 | 杭州赫智电子科技有限公司 | 一种满足海量读写次数操作的存储器及数据存储方法 |
CN107748705A (zh) * | 2017-11-08 | 2018-03-02 | 厦门市美亚柏科信息股份有限公司 | 系统evt日志碎片恢复的方法、终端设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN108459930A (zh) | 2018-08-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110442473B (zh) | 一种非易失性数据存储方法、装置、电子设备及介质 | |
KR20090063025A (ko) | 플래시 메모리를 복구하는 임베디드 시스템 및 그 방법 | |
CN109801668B (zh) | 数据储存装置及应用于其上的操作方法 | |
CN112199053B (zh) | 一种应用于小容量存储区的日志记录方法、装置及介质 | |
CN107992268B (zh) | 一种坏块标记的方法及相关装置 | |
CN114780298B (zh) | 文件数据处理方法、装置、计算机终端及存储介质 | |
CN108459930B (zh) | 数据备份方法、装置和存储介质 | |
CN111459708B (zh) | 坏块处理方法及装置 | |
CN110377276B (zh) | 源代码文件管理方法及设备 | |
CN114327258B (zh) | 一种固态硬盘处理方法、系统、设备及计算机存储介质 | |
CN113204383B (zh) | 一种bmc配置参数存储的方法、装置、系统及存储介质 | |
CN114385418A (zh) | 通信设备的保护方法、装置、设备和存储介质 | |
CN109857708B (zh) | 一种嵌入式系统的数据存取方法及计算机可读存储介质 | |
CN111782605A (zh) | 一种芯片卡文件管理方法、装置、终端及存储介质 | |
CN111399857A (zh) | 一种fru数据烧录方法、系统、设备及计算机存储介质 | |
CN107908500B (zh) | 一种坏块识别方法及装置 | |
CN113050888B (zh) | 一种快速剔除Flash不稳定块的方法、系统、装置及存储介质 | |
CN111949604A (zh) | 一种文件存储方法、装置、电子设备及可读存储介质 | |
CN110647455A (zh) | 一种存储设备重启记录方法和系统 | |
CN108038035A (zh) | 一种闪存读写状态的检测方法及相关装置 | |
CN114155906A (zh) | 一种数据块修复方法、装置、设备及存储介质 | |
CN110688084B (zh) | 一种先入先出的flash数据存储方法、系统及终端 | |
CN113867823A (zh) | 车载终端配置参数的设置方法、装置及电子设备 | |
CN112882659A (zh) | 一种信息获得方法、装置、电子设备及存储介质 | |
JP2007323167A (ja) | メモリテスト方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20200911 |