CN111045856A - 用于管理应用系统的方法、设备和计算机程序产品 - Google Patents

用于管理应用系统的方法、设备和计算机程序产品 Download PDF

Info

Publication number
CN111045856A
CN111045856A CN201811192181.7A CN201811192181A CN111045856A CN 111045856 A CN111045856 A CN 111045856A CN 201811192181 A CN201811192181 A CN 201811192181A CN 111045856 A CN111045856 A CN 111045856A
Authority
CN
China
Prior art keywords
data
backup data
backup
application system
summary information
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
Application number
CN201811192181.7A
Other languages
English (en)
Inventor
周一舟
张宇霆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
EMC Corp
Original Assignee
EMC IP Holding Co LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by EMC IP Holding Co LLC filed Critical EMC IP Holding Co LLC
Priority to CN201811192181.7A priority Critical patent/CN111045856A/zh
Priority to US16/286,591 priority patent/US11269540B2/en
Publication of CN111045856A publication Critical patent/CN111045856A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开涉及用于管理应用系统的方法、设备和计算机程序产品。根据本公开的示例性实现,提供了一种用于管理应用系统的方法。在该方法中,响应于接收到针对应用系统的备份请求,生成应用系统的备份数据;基于预定摘要规则,获取备份数据的摘要信息;向与应用系统相关联的区块链系统传输摘要信息,以用于将摘要信息存储至区块链系统;以及基于区块链系统和备份数据来管理应用系统。进一步,提供了一种用于管理应用系统的设备和计算机程序产品。

Description

用于管理应用系统的方法、设备和计算机程序产品
技术领域
本公开的各实现方式涉及应用系统,更具体地,涉及用于管理应用系统的备份数据的方法、设备和计算机程序产品。
背景技术
随着计算机技术的发展,安全性管理技术已经被广泛地用于管理各种类型的应用系统。在各种应用环境中,经常会需要针对应用系统中的数据执行备份操作,以便当应用系统中出现故障或者其他情况时可以基于备份数据来恢复应用系统。由于备份数据是用于恢复应用系统的基础,如何以更为安全并且可靠的方式来管理应用系统的备份数据成为一个研究热点。
发明内容
因而,期望能够开发并实现一种以更为有效的方式来管理应用系统的技术方案。期望该技术方案能够与现有的应用环境相兼容,并且通过改造现有应用环境的各种配置,来以更为有效的方式管理应用系统。
根据本公开的第一方面,提供了一种用于管理应用系统的方法。在该方法中,响应于接收到针对应用系统的备份请求,生成应用系统的备份数据;基于预定摘要规则,获取备份数据的摘要信息;向与应用系统相关联的区块链系统传输摘要信息,以用于将摘要信息存储至区块链系统;以及基于区块链系统和备份数据来管理应用系统。
根据本公开的第二方面,提供了一种用于管理应用系统的设备。该设备包括:至少一个处理器;易失性存储器;以及与至少一个处理器耦合的存储器,存储器具有存储于其中的指令,指令在被至少一个处理器执行时使得设备执行动作。动作包括:响应于接收到针对应用系统的备份请求,生成应用系统的备份数据;基于预定摘要规则,获取备份数据的摘要信息;向与应用系统相关联的区块链系统传输摘要信息,以用于将摘要信息存储至区块链系统;以及基于区块链系统和备份数据来管理应用系统。
根据本公开的第三方面,提供了一种计算机程序产品,计算机程序产品被有形地存储在非瞬态计算机可读介质上并且包括机器可执行指令,机器可执行指令用于执行根据本公开的第一方面的方法。
附图说明
结合附图并参考以下详细说明,本公开各实现方式的特征、优点及其他方面将变得更加明显,在此以示例性而非限制性的方式示出了本公开的若干实现方式。在附图中:
图1示意性示出了本公开的实现方式可以被应用于其中的应用环境的框图;
图2示意性示出了根据本公开的一个实现方式的用于管理应用系统的框图;
图3示意性示出了根据本公开的一个实现方式的用于管理应用系统的方法的流程图;
图4A示意性示出了根据本公开的一个实现方式的备份数据以及相对应的摘要信息的数据结构的框图;
图4B示意性示出了根据本公开的一个实现方式的基于摘要信息生成元数据的框图;
图5示意性示出了根据本公开的一个实现方式的区块链系统的更多细节的框图;
图6示意性示出了根据本公开的一个实现方式的用于管理应用系统的过程的框图;
图7示意性示出了根据本公开的一个实现方式的用于管理应用系统的过程的框图;以及
图8示意性示出了根据本公开的示例性实现的用于管理应用系统的设备的框图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实现。虽然附图中显示了本公开的优选实现,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实现所限制。相反,提供这些实现是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实现”和“一个实现”表示“至少一个示例实现”。术语“另一实现”表示“至少一个另外的实现”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
图1示意性示出了本公开的实现方式可以被应用于其中的应用环境100的框图。如图1所示,应用系统110可以是用于实现各种功能的系统。例如,该应用系统110可以是数据存储系统、操作系统、游戏系统或者用于实现其他功能的系统。在下文中,将仅以数据存储系统作为示例来描述有关管理应用系统110的各个实现方式的细节。为了提高应用系统110的可靠性,如箭头112所示,可以针对应用系统110执行备份操作。例如,在应用系统110是存储系统的情况下,可以针对该存储系统中的各个文件、数据表或者其他对象来执行备份操作。
备份服务器120可以用于存储应用系统110的在不同时间点获取的多个备份:例如备份数据130-1、130-2、……、以及130-n。在此可以将各个备份数据统称为备份数据130。需要确保备份服务器120中的备份数据的安全,以便当备份服务器120遭到恶意程序或者黑客攻击的情况下可以将应用系统110恢复至指定的备份数据。
目前已经开发出了基于访问权限认证、加密/解密等技术来提高备份服务器120中的备份数据130的安全性的技术方案。然而,已有的技术方案并不能有效地保护备份服务器120的安全性。恶意程序或者黑客可能会篡改备份数据130,因而导致不能正确地恢复应用系统110。因而,如何以更为安全并且有效的方式来管理应用系统110以及相关联的备份数据130,成为一个研究热点。
为了至少部分地解决现有技术方案中的问题,根据本公开的示例性实现方式提出了一种用于管理应用系统110的方法、装置和计算机程序产品。在下文中将参见图2概括描述本公开的示例性实施方式。图2示意性示出了根据本公开的一个实现方式的用于管理应用系统110的框图300。在此实现方式中,可以设置区块链系统210来用于存储应用系统110的备份数据130的摘要信息220。由于区块链系统210具有防止篡改的特性,因而可以确保摘要信息220不会被篡改并且是可信的。继而可以基于该可信的摘要信息220来验证备份数据130是否被篡改。
如图2所示,如果接收到针对应用系统110的备份请求(如箭头112所示),可以生成应用系统110的备份数据130。具体地,可以在不同时间点对应用系统110执行备份操作,以便形成多个备份数据。将会理解,尽管在图2的备份服务器120中仅示意性示出了一个备份数据130,备份服务器120中还可以包括多个其他的备份数据。
基于预定规则,可以获取备份数据130的摘要信息。将会理解,在此并不限定以何种方式获取摘要信息,而是根据具体应用环境的需要,可以采用多种方式来获取摘要信息。例如,可以基于诸如MD5、SHA1、或者SHA256等算法来获取摘要信息。在获得摘要信息后,可以向与应用系统110相关联的区块链系统210传输摘要信息,以用于将摘要信息220存储至区块链系统210。如已知的,区块链技术是一种去中心化(decentralized)的存储技术,并且区块链的数据结构提供了可追踪、可验证完整性的性质。因而,通过将摘要信息220存储在区块链系统210中,可以利用区块链技术的可靠性来保证摘要信息220的可信性。继而,可以基于区块链系统210和备份数据130来管理应用系统110。
利用上述示例性实现,由于区块链系统210本身的高度可靠性,存储至该区块链系统210中的摘要信息220受到高度的保护并且不会被篡改。即使备份服务器120中的备份数据130被篡改,通过比较备份服务器120中的备份数据130的摘要信息以及预先存储在区块链系统210中的摘要信息220,即可确定备份数据130是否被篡改。以此方式,可以在现有备份服务器120的各种安全保护措施的基础上,提供进一步的安全保护。
在下文中,将参见图3描述本公开的示例性实现的更多细节。图3示意性示出了根据本公开的一个实现方式的用于管理应用系统110的方法300的流程图。在框310处,可以确定是否接收到针对所述应用系统110的备份请求。在此的备份请求可用是在预定时间间隔触发的请求,可以是响应于确定在应用系统110中出现潜在异常而触发的请求,或者是由应用系统110的管理员或者用户触发的请求。
如果接收到备份请求,则方法300前进至框320。在框320处,生成所述应用系统110的备份数据130。在此,可以基于数据拷贝操作来生成备份数据130。备选地和/或附加地,还可以对拷贝的数据执行例如压缩处理以便降低备份数据130的数据量。备选地和/或附加地,还可以对拷贝的数据执行加密操作以便提高数据的安全性。
根据本公开的示例性实现,还可以将备份数据划分为一组数据块,并且针对一组数据块中的各个数据块执行进一步处理。图4A示意性示出了根据本公开的一个实现方式的备份数据130以及相对应的摘要信息220的数据结构的框图400。如图4A所示,可以将备份数据130划分为多个数据块410、412、414和416等。继而,可以分别针对多个数据块410、412、414和416来生成相应的摘要420、422、424和426等。此时,摘要信息220可以包括多个摘要,并且其中的每个摘要分别对应于备份数据130中的一个数据块。
可以采用多种方式来划分数据块。例如,根据本公开的示例性实现,可以按照预定的大小的来划分数据块。假设预定大小为4MB,可以将整个备份数据130执行连续划分。此时,所获得的数据块的大小是相同的并且均为4MB。根据本公开的示例性实现,还可以按照其他方式来划分数据块。利用上述示例性实现,通过将备份数据130划分至较小的数据块,可以分别针对每个数据块来生成相应的摘要,进而以更精细的粒度来确保每个数据块的安全性。
将会理解,在备份数据130中可能会存在重复部分。例如,假设备份数据130包括同一图像文件的多个副本,则此时按照固定大小来划分数据块可能会将各个文件进行不适当的切分。根据本公开的示例性实现,还可以按照备份数据130中的文件的内容来进行划分。具体地,可以从备份数据130中提取包括相同内容的样本片段,在此样本片段例如可以是在备份数据130中的多个位置处出现的图像文件。此时,可以确定该图像文件所在的多个位置,并基于该多个位置来将备份数据130划分为一组数据块。
例如,假设在备份数据130中包括图像文件的3个副本,并且三个副本分别位于备份数据130中三个地址范围:[add1,add2]、[add3,add4]、以及[add5,add6]。则此时可以基于上述三个地址范围来生成三个相应的数据块。继而,还可以在备份数据130的其他部分中继续确定是否存在重复部分。如果存在,则可以基于重复部分所在的范围来划分数据块。备选地和/或附加地,还可以按照预定大小来将其余部分划分至多个数据块。
利用上述示例性实现,在存储备份数据130时,由于[add1,add2]、[add3,add4]、以及[add5,add6]内的数据是相同的,因而在存储时只需要存储一个地址范围内的数据即可。进一步,可以设置特殊标记来表示地址范围[add3,add4]以及[add5,add6]内的数据与[add1,add2]内的数据相同。以此方式,可以降低备份数据130所占据的存储空间。
返回图3,在框330处,可以基于预定摘要规则来获取所述备份数据130的摘要信息。例如,可以基于诸如MD5、SHA1、或者SHA256等算法来确定摘要信息。如上文所述,当备份数据130包括多个数据块时,可以分别针对每个数据块410、412、414和416来生成相应的摘要420、422、424和426。在下文中将参见表1至表3来详细描述如何生成针对各个数据块的摘要。参见表1,该表1示出了一个数据块的示意结构,其中第一列表示数据块中的数据,而第二列表示数据块所在的位置。表1示出了3个数据块,参见表1中的第一个数据块,该数据块的内容为“0xfa13bcd48abd”,而该数据块分别出现在备份数据130中的位置loc1、loc2、loc3和loc4。将会理解,在此的数据块还可以经历压缩、加密处理或者其他处理,以便降低数据块的存储空间和/或提高数据的安全性。
表1数据块的示意结构
数据块 数据块的位置
0xfa13bcd48abd loc1,loc2,loc3,loc4
0x449bdcafe39ecaff2947 loc5,loc6
0xabc2367fd2 loc7,loc8,loc9
根据本公开的示例性实现,可以针对如上文表1所示的各个数据块来生成相应的摘要。在表2中,第二列和第三列的内容与上文表1中的第一列和第二列相同,因而不再赘述。在下文的表2中,第一列表示数据块的摘要,其中该摘要可以是基于第二列的数据来生成的,例如可以是针对第二的数据执行SHA256操作来生成的。
表2摘要和数据块的示意结构
摘要 数据块 数据块的位置
7256a551… 0xfa13bcd48abd loc1,loc2,loc3,loc4
bc8d5832… 0x449bdcafe39ecaff2947 loc5,loc6
3d1e5e06… 0xabc2367fd2 loc7,loc8,loc9
根据本公开的示例性实现,上文表2中的第一列表示的摘要还可以基于第二列和第三列两者来生成。例如,该摘要可以是通过将第二、第三的数据进行连接,并且例如采用SHA256算法来生成的。此时,该摘要不但包括数据块本身的信息,而且还包括数据块的位置的信息。以此方式,可以以更为安全并且可靠的方式来保护备份数据130。
根据本公开的示例性实现,还可以基于上文表2中的三列的内容来生成总体摘要。如下文表3中,第二、第三和第四列的内容与表2中的第一、第二、和第三列的相同,并且表3中第一列的总体摘要例如可以是通过将第二、第三、第四列的数据进行连接并且例如采用SHA256算法来生成的。
表3摘要和数据块的示意结构
总体摘要 摘要 数据块 数据块的位置
594bf829… 7256a551… 0xfa13bcd48abd loc1,loc2,loc3,loc4
ef7af05d… bc8d5832… 0x449bdcafe39ecaff2947 loc5,loc6
2b470998… 3d1e5e06… 0xabc2367fd2 loc7,loc8,loc9
在上文中已经介绍了如何基于备份数据130中的各个数据块来生成相应的摘要,此时摘要信息220将包括各个数据块的摘要。继而,可以从备份服务器120向备份服务器传输摘要信息。返回图3,在框340处,向与所述应用系统110相关联的区块链系统210传输所述摘要信息,以用于将所述摘要信息存储至所述区块链系统210。如图4A所示,摘要信息220可以包括针对各个数据块410、412、414、416的摘要420、422、424、426。此时,可以从备份服务器120将针对每个数据块的摘要发送至区块链系统210,并且将各个摘要存储在该区块链系统210中。在下文中,将参见图4B详细描述有关基于摘要信息生成元数据的更多细节。
根据本公开的示例性实现,备份服务器120可以通知区块链系统210来基于接收到的摘要信息220创建元数据,进而生成区块链系统中的区块节点。图4B示意性示出了根据本公开的一个实现方式的基于摘要信息生成元数据的框图400B。在此示例性实现中,可以在区块链系统210处生成元数据440。
区块链系统210可以接收各个摘要420、422、424、426等。之后,区块链系统210可以基于接收到的摘要420、422、424、426来生成校验并将该校验存储在根430中。根据本公开的示例性实现,可以基于Merkle树来为创建校验。如已知的,Merkle是一种树结构,例如可以是二叉树,也可以多叉树。Merkle树的叶节点可以具有值(其中包括接收到的摘要420、422、424、426),而非叶子节点的值是根据它下层的所有叶节点的值计算而得的数据(例如,哈希432和434)。
为了基于Merkle树来创建校验,可以在叶节点中存储摘要420、422、424、426,继而可以基于叶节点中的数据来确定非叶结点中的数据。例如,可以将摘要420和422中的数据串联以形成字符串,继而基于预定的哈希函数来确定字符串的哈希432。类似地,可以将摘要424和426中的数据串联以形成字符串,继而基于预定的哈希函数来确定字符串的哈希434。进一步,还可以将哈希432和434进行串联,并基于哈希函数将串联后的字符串的哈希作为校验而存储在根430中。
将会理解,尽管在图4B中仅示意性示出了包括三层的Merkle树,在其他实现方式中,还可以包括更多或者更少的层级。将会理解,尽管在图4B中仅详细示出了区块链中的一个区块节点440的具体结构,其他区块节点442可以具有类似的结构。例如,区块节点442可以包括基于在更早的备份数据130的摘要信息而创建的Merkle树。
将会理解,由于在应用系统110的运行过程中可能会生成多个备份数据130,因而根据本公开的示例性实现,可以确定用于唯一地标识备份数据130的标识符。例如,可以基于生成备份数据130的时间戳来确定标识符,备选地和/或附加地,还可以基于生成备份数据130的全局唯一的进程号来确定标识符。备选地和/或附加地,还可以基于其他方式来确定标识符。
在已经确定标识符之后,可以向区块链系统210发送标识符,以便基于标识符444和利用摘要信息确定的根430相关联地存储至区块链系统210。具体地,可以基于标识符444和根430来生成元数据440。利用上述示例性实现,可以利用标识符来唯一地区分备份数据130,并且可以基于标识来在区块链系统210中找到与特定备份数据130相关联的摘要信息220被存储至区块链系统210中的何处。
根据本公开的示例性实现,还可以利用秘钥442来生成元数据440。在此的秘钥442用于表示与加密/解密过程相关联的秘钥的信息。以此方式,可以以更高的安全等级来保护元数据440。
图5示意性示出了根据本公开的一个实现方式的区块链系统的更多细节的框图500。如图5所示,区块链系统210可以包括多个区块节点540、542等,并且每个区块节点中可以存储与不同备份数据相关联的信息。在下文中,将以区块节点430为示例进行描述。如图5所示,叶节点处的元数据440-1、440-2、440-3和440-4是基于上文参见图4描述的方法生成的元数据。
进一步,可以基于各个元数据建立另一Merkle树。例如,可以基于元数据440-1和440-2来确定哈希510,基于元数据440-3和440-4来确定哈希520,并基于哈希510和520来确定Merkle树的根节点处的校验530。在此的校验530表示不同的备份数据的总体校验。通过将校验530存储至区块节点540,可以实现将有关多个备份数据的元数据链接至区块链系统210。
在上文中已经介绍了如何将摘要信息220存储至区块链系统210,在下文中,将返回图3描述有关如何基于备份服务器120和区块链系统210来管理应用系统110的更多细节。在图3中的框350处,可以基于所述区块链系统210中的摘要信息和所述备份服务器120中的备份数据130来管理所述应用系统110。具体地,如果接收到用于将110应用系统恢复至备份数据130的恢复请求,可以获取备份数据130的摘要信息。继而,可以在区块链系统210中查找是否存在与摘要信息相匹配的内容,并基于查找结果来管理应用系统110。
图6示意性示出了根据本公开的一个实现方式的用于管理应用系统110的过程的框图600。如图6所示,如箭头610所示,备份服务器130可以接收来自应用系统110的恢复请求。将会理解,尽管图6示出了由应用系统110来发送恢复请求,该恢复请求还可以在其他位置产生。例如,可以在检测到应用系统110中的潜在故障时,自动产生该恢复请求。在恢复请求中可以指定将应用系统110恢复至哪个版本(例如,通过备份数据的标识符来指定)。因而,如箭头612所示,备份服务器120可以基于恢复请求来确定备份数据130。继而,如箭头614所示,备份服务器120可以确定与该备份数据130相关联的摘要数据,并且如箭头616所示,可以将该摘要数据发送至区块链系统210。
在接收到摘要数据的情况下,如箭头618所示,区块链系统210可以确定接收到的来自备份服务器120的摘要数据与在自身处存储的摘要数据是否一致。如果判断结果为“是”,则如箭头620所示,备份服务器120从区块链系统210接收指示备份数据可信的消息。这意味着这在备份服务器120处的备份数据130是可靠的并且未被篡改。继而,如箭头622所示,备份服务器120可以基于备份数据130来恢复应用系统110(如箭头622所示)。
在下文中,将参见图4B详细描述如何确定来自备份服务器120的摘要数据与在自身处存储的摘要数据是否一致。如图4B所示,在区块链系统210处,可以按照前文描述的方法,基于接收到的摘要420、422、424和426来确定Merkle树的根节点的当前数据。通过将根节点的数据与在区块链系统210的区块节点440中存储的历史数据进行比较,即可确定备份服务器120处的备份数据是否被修改。
如果当前数据与历史数据相同(换言之,在区块链系统210中存在匹配于摘要信息的参考摘要),则可以确定,确定备份数据130未被篡改。如果当前数据与历史数据不同(换言之,在区块链系统210中不存在匹配于摘要信息的参考摘要),则可以确定,确定备份数据130已被篡改。在此实现方式中,摘要的数据量较小,并且确定Merkle树的根节点的数据涉及的计算量较小。因而,可以仅通过较小的计算量,并通过简单的比较即可确定备份数据130是否被篡改。
图7示意性示出了根据本公开的一个实现方式的用于管理应用系统110的过程的框图700。图7中在箭头610至618所示的操作于在图6中所示的操作相同,并且在箭头720和722处示出了不同于图7的操作。具体地,在箭头720处,如果确定备份数据130已经被篡改,则备份服务器120从区块链系统210接收指示备份数据130不可信的消息。继而,该备份服务器120可以通知应用系统110备份数据130已经被篡改。
根据本公开的示例性实现,针对一组数据块中的数据块,可以基于数据块和位置来恢复应用系统中的至少一部分。如上文表2所示,由于备份数据130中的各个数据块的内容(如表2第二列所示)以及各个数据块的位置(如表2第三列所示),可以将各个数据块的内容恢复至相对应的位置。例如,对于如表2所示的3个数据块而言,可以将第一个数据块恢复至位置loc1、loc2、loc3和loc4;可以将第二个数据块恢复至位置loc5和loc6;可以将第三个数据块恢复至位置loc7、loc8和loc9。利用上述示例性实现,可以利用被验证可靠的备份数据130来恢复应用系统110,以便确保应用系统110的可靠性。
在上文中已经参见图2至图7详细描述了根据本公开的方法的示例,在下文中将描述相应的设备的实现。根据本公开的示例性实现,提供了一种用于管理存储系统的装置。该装置包括:生成模块,配置用于响应于接收到针对应用系统的备份请求,生成应用系统的备份数据;获取模块,配置用于基于预定摘要规则,获取备份数据的摘要信息;传输模块,配置用于向与应用系统相关联的区块链系统传输摘要信息,以用于将摘要信息存储至区块链系统;以及管理模块,配置用于基于区块链系统和备份数据来管理应用系统。
根据本公开的示例性实现,获取模块进一步配置用于:将备份数据划分为一组数据块;针对一组数据块中的各个数据块来生成相应的摘要;以及基于相应的摘要来生成摘要信息。
根据本公开的示例性实现,获取模块进一步配置用于:从备份数据中提取样本片段,样本片段在备份数据中的多个位置处出现;以及基于多个位置,将备份数据划分为一组数据块。
根据本公开的示例性实现,获取模块进一步配置用于:按照与应用系统相关联的预定义大小,将备份数据划分为一组数据块。
根据本公开的示例性实现,获取模块进一步配置用于:针对一组数据块中的给定数据块,确定给定数据块在备份数据中的位置;以及基于给定数据块以及位置,生成针对给定数据块的摘要。
根据本公开的示例性实现,获取模块进一步配置用于:确定用于唯一地标识备份数据的标识符。
根据本公开的示例性实现,传输模块进一步配置用于:向区块链系统发送标识符,以用于将标识符与摘要信息相关联地存储至区块链系统。
根据本公开的示例性实现,传输模块进一步配置用于:通知区块链系统将基于标识符和摘要信息生成的元数据链接至区块链系统中的区块链。
根据本公开的示例性实现,管理模块进一步配置用于:响应于接收到用于将应用系统恢复至备份数据的恢复请求,获取备份数据的摘要信息;基于区块链系统和摘要信息,验证备份数据是否被篡改;以及响应于确定备份数据未被篡改,基于备份数据来恢复应用系统。
根据本公开的示例性实现,管理模块进一步配置用于:响应于区块链系统中存在匹配于摘要信息的参考摘要,确定备份数据未被篡改;以及响应于区块链系统中不存在匹配于摘要信息的参考摘要,确定备份数据已被篡改。
根据本公开的示例性实现,管理模块进一步配置用于:针对一组数据块中的数据块,基于数据块和位置来恢复应用系统中的至少一部分。
图8示意性示出了根据本公开的示例性实现的用于管理存储系统的设备800的框图。如图所示,设备800包括中央处理单元(CPU)801,其可以根据存储在只读存储器(ROM)802中的计算机程序指令或者从存储单元808加载到随机访问存储器(RAM)803中的计算机程序指令,来执行各种适当的动作和处理。在RAM 803中,还可存储设备800操作所需的各种程序和数据。CPU 801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
设备800中的多个部件连接至I/O接口805,包括:输入单元806,例如键盘、鼠标等;输出单元807,例如各种类型的显示器、扬声器等;存储单元808,例如磁盘、光盘等;以及通信单元809,例如网卡、调制解调器、无线通信收发机等。通信单元809允许设备800通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
上文所描述的各个过程和处理,例如方法300,可由处理单元801执行。例如,在一些实现中,方法300可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元808。在一些实现中,计算机程序的部分或者全部可以经由ROM 802和/或通信单元809而被载入和/或安装到设备800上。当计算机程序被加载到RAM 803并由CPU 801执行时,可以执行上文描述的方法400的一个或多个步骤。备选地,在其他实现中,CPU 801也可以以其他任何适当的方式被配置以实现上述过程/方法。
根据本公开的示例性实现,提供了一种用于管理应用系统的设备,包括:至少一个处理器;易失性存储器;以及与至少一个处理器耦合的存储器,存储器具有存储于其中的指令,指令在被至少一个处理器执行时使得设备执行动作。该动作包括:响应于接收到针对应用系统的备份请求,生成应用系统的备份数据;基于预定摘要规则,获取备份数据的摘要信息;向与应用系统相关联的区块链系统传输摘要信息,以用于将摘要信息存储至区块链系统;以及基于区块链系统和备份数据来管理应用系统。
根据本公开的示例性实现,获取摘要信息包括:将备份数据划分为一组数据块;针对一组数据块中的各个数据块来生成相应的摘要;以及基于相应的摘要来生成摘要信息。
根据本公开的示例性实现,将备份数据划分为一组数据块包括:从备份数据中提取样本片段,样本片段在备份数据中的多个位置处出现;以及基于多个位置,将备份数据划分为一组数据块。
根据本公开的示例性实现,将备份数据划分为一组数据块包括:按照与应用系统相关联的预定义大小,将备份数据划分为一组数据块。
根据本公开的示例性实现,针对一组数据块中的各个数据块来生成相应的摘要包括:针对一组数据块中的给定数据块,确定给定数据块在备份数据中的位置;以及基于给定数据块以及位置,生成针对给定数据块的摘要。
根据本公开的示例性实现,进一步包括:确定用于唯一地标识备份数据的标识符;向区块链系统发送标识符,以用于将标识符与摘要信息相关联地存储至区块链系统。
根据本公开的示例性实现,进一步包括:通知区块链系统将基于标识符和摘要信息生成的元数据链接至区块链系统中的区块链。
根据本公开的示例性实现,基于区块链系统和备份数据来管理应用系统包括:响应于接收到用于将应用系统恢复至备份数据的恢复请求,获取备份数据的摘要信息;基于区块链系统和摘要信息,验证备份数据是否被篡改;响应于确定备份数据未被篡改,基于备份数据来恢复应用系统。
根据本公开的示例性实现,验证备份数据是否被篡改包括:响应于区块链系统中存在匹配于摘要信息的参考摘要,确定备份数据未被篡改;以及响应于区块链系统中不存在匹配于摘要信息的参考摘要,确定备份数据已被篡改。
根据本公开的示例性实现,基于备份数据来恢复应用系统包括:针对一组数据块中的数据块,基于数据块和位置来恢复应用系统中的至少一部分。
根据本公开的示例性实现,提供了一种计算机程序产品,计算机程序产品被有形地存储在非瞬态计算机可读介质上并且包括机器可执行指令,机器可执行指令用于执行根据本公开的方法。
根据本公开的示例性实现,提供了一种计算机可读介质。计算机可读介质上存储有机器可执行指令,当机器可执行指令在被至少一个处理器执行时,使得至少一个处理器实现根据本公开方法。
本公开可以是方法、设备、系统和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本公开的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实现中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
这里参照根据本公开实现的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其他可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程数据处理装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其他可编程数据处理装置、或其他设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实现的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实现,上述说明是示例性的,并非穷尽性的,并且也不限于所公开的各实现。在不偏离所说明的各实现的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实现的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文公开的各实现。

Claims (21)

1.一种用于管理应用系统的方法,包括:
响应于接收到针对所述应用系统的备份请求,生成所述应用系统的备份数据;
基于预定摘要规则,获取所述备份数据的摘要信息;
向与所述应用系统相关联的区块链系统传输所述摘要信息,以用于将所述摘要信息存储至所述区块链系统;以及
基于所述区块链系统和所述备份数据来管理所述应用系统。
2.根据权利要求1所述的方法,其中获取所述摘要信息包括:
将所述备份数据划分为一组数据块;
针对所述一组数据块中的各个数据块来生成相应的摘要;以及
基于相应的摘要来生成所述摘要信息。
3.根据权利要求2所述的方法,其中将所述备份数据划分为一组数据块包括:
从所述备份数据中提取样本片段,所述样本片段在所述备份数据中的多个位置处出现;以及
基于所述多个位置,将所述备份数据划分为所述一组数据块。
4.根据权利要求2所述的方法,其中将所述备份数据划分为一组数据块包括:
按照与所述应用系统相关联的预定义大小,将所述备份数据划分为所述一组数据块。
5.根据权利要求2所述的方法,其中针对所述一组数据块中的各个数据块来生成相应的摘要包括:针对所述一组数据块中的给定数据块,
确定所述给定数据块在所述备份数据中的位置;以及
基于所述给定数据块以及所述位置,生成针对所述给定数据块的摘要。
6.根据权利要求2所述的方法,进一步包括:
确定用于唯一地标识所述备份数据的标识符;以及
向所述区块链系统发送所述标识符,以用于将所述标识符与所述摘要信息相关联地存储至所述区块链系统。
7.根据权利要求6所述的方法,进一步包括:
通知所述区块链系统将基于所述标识符和所述摘要信息生成的元数据链接至所述区块链系统中的区块链。
8.根据权利要求5所述的方法,其中基于所述区块链系统和所述备份数据来管理所述应用系统包括:
响应于接收到用于将所述应用系统恢复至所述备份数据的恢复请求,获取所述备份数据的所述摘要信息;
基于所述区块链系统和所述摘要信息,验证所述备份数据是否被篡改;以及
响应于确定所述备份数据未被篡改,基于所述备份数据来恢复所述应用系统。
9.根据权利要求8所述的方法,其中验证所述备份数据是否被篡改包括:
响应于所述区块链系统中存在匹配于所述摘要信息的参考摘要,确定所述备份数据未被篡改;以及
响应于所述区块链系统中不存在匹配于所述摘要信息的参考摘要,确定所述备份数据已被篡改。
10.根据权利要求9所述的方法,其中基于所述备份数据来恢复所述应用系统包括:针对所述一组数据块中的数据块,
基于所述数据块和所述位置来恢复所述应用系统中的至少一部分。
11.一种用于管理应用系统的设备,包括:
至少一个处理器;
易失性存储器;以及
与所述至少一个处理器耦合的存储器,所述存储器具有存储于其中的指令,所述指令在被所述至少一个处理器执行时使得所述设备执行动作,所述动作包括:
响应于接收到针对所述应用系统的备份请求,生成所述应用系统的备份数据;
基于预定摘要规则,获取所述备份数据的摘要信息;
向与所述应用系统相关联的区块链系统传输所述摘要信息,以用于将所述摘要信息存储至所述区块链系统;以及
基于所述区块链系统和所述备份数据来管理所述应用系统。
12.根据权利要求11所述的设备,其中获取所述摘要信息包括:
将所述备份数据划分为一组数据块;
针对所述一组数据块中的各个数据块来生成相应的摘要;以及
基于相应的摘要来生成所述摘要信息。
13.根据权利要求12所述的设备,其中将所述备份数据划分为一组数据块包括:
从所述备份数据中提取样本片段,所述样本片段在所述备份数据中的多个位置处出现;以及
基于所述多个位置,将所述备份数据划分为所述一组数据块。
14.根据权利要求12所述的设备,其中将所述备份数据划分为一组数据块包括:
按照与所述应用系统相关联的预定义大小,将所述备份数据划分为所述一组数据块。
15.根据权利要求12所述的设备,其中针对所述一组数据块中的各个数据块来生成相应的摘要包括:针对所述一组数据块中的给定数据块,
确定所述给定数据块在所述备份数据中的位置;以及
基于所述给定数据块以及所述位置,生成针对所述给定数据块的摘要。
16.根据权利要求12所述的设备,所述动作进一步包括:
确定用于唯一地标识所述备份数据的标识符;以及
向所述区块链系统发送所述标识符,以用于将所述标识符与所述摘要信息相关联地存储至所述区块链系统。
17.根据权利要求16所述的设备,所述动作进一步包括:
通知所述区块链系统将基于所述标识符和所述摘要信息生成的元数据链接至所述区块链系统中的区块链。
18.根据权利要求15所述的设备,其中基于所述区块链系统和所述备份数据来管理所述应用系统包括:
响应于接收到用于将所述应用系统恢复至所述备份数据的恢复请求,获取所述备份数据的所述摘要信息;
基于所述区块链系统和所述摘要信息,验证所述备份数据是否被篡改;以及
响应于确定所述备份数据未被篡改,基于所述备份数据来恢复所述应用系统。
19.根据权利要求18所述的设备,其中验证所述备份数据是否被篡改包括:
响应于所述区块链系统中存在匹配于所述摘要信息的参考摘要,确定所述备份数据未被篡改;以及
响应于所述区块链系统中不存在匹配于所述摘要信息的参考摘要,确定所述备份数据已被篡改。
20.根据权利要求19所述的方法,其中基于所述备份数据来恢复所述应用系统包括:针对所述一组数据块中的数据块,
基于所述数据块和所述位置来恢复所述应用系统中的至少一部分。
21.一种计算机程序产品,所述计算机程序产品被有形地存储在非瞬态计算机可读介质上并且包括机器可执行指令,所述机器可执行指令用于执行根据权利要求1-10中的任一项所述的方法。
CN201811192181.7A 2018-10-12 2018-10-12 用于管理应用系统的方法、设备和计算机程序产品 Pending CN111045856A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201811192181.7A CN111045856A (zh) 2018-10-12 2018-10-12 用于管理应用系统的方法、设备和计算机程序产品
US16/286,591 US11269540B2 (en) 2018-10-12 2019-02-27 Method, apparatus, and computer program product for managing application system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811192181.7A CN111045856A (zh) 2018-10-12 2018-10-12 用于管理应用系统的方法、设备和计算机程序产品

Publications (1)

Publication Number Publication Date
CN111045856A true CN111045856A (zh) 2020-04-21

Family

ID=70161753

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811192181.7A Pending CN111045856A (zh) 2018-10-12 2018-10-12 用于管理应用系统的方法、设备和计算机程序产品

Country Status (2)

Country Link
US (1) US11269540B2 (zh)
CN (1) CN111045856A (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10853341B2 (en) * 2019-06-28 2020-12-01 Advanced New Technologies Co., Ltd. Blockchain based hierarchical data storage
US11593316B2 (en) * 2019-10-16 2023-02-28 International Business Machines Corporation Database snapshot for managing state synchronization
CN112347456B (zh) * 2020-10-28 2023-09-01 达闼机器人股份有限公司 程序验证方法和装置、平台和用户终端及在线服务系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101820426A (zh) * 2010-04-22 2010-09-01 华中科技大学 一种在线备份服务软件中的数据压缩方法
US20130297570A1 (en) * 2012-05-04 2013-11-07 Huawei Technologies Co., Ltd. Method and apparatus for deleting duplicate data
CN103530201A (zh) * 2013-07-17 2014-01-22 华中科技大学 一种适用于备份系统的安全数据去重方法和系统
US20140289203A1 (en) * 2013-03-21 2014-09-25 Nextbit Systems Inc. Using mobile devices of a user as an edge cache to stream video files
CN108446407A (zh) * 2018-04-12 2018-08-24 北京百度网讯科技有限公司 基于区块链的数据库审计方法和装置
CN108573016A (zh) * 2017-12-25 2018-09-25 北京金山云网络技术有限公司 一种数据一致性检查方法、装置、设备和存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9740571B1 (en) * 2013-10-11 2017-08-22 EMC IP Holding Company LLC Intelligent continuous data protection snapshot based backups
US20200159624A1 (en) * 2018-04-25 2020-05-21 Cloud Daddy, Inc. System, Method and Process for Protecting Data Backup from Cyberattack
JP6884128B2 (ja) * 2018-09-20 2021-06-09 株式会社日立製作所 データ重複排除装置、データ重複排除方法、及びデータ重複排除プログラム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101820426A (zh) * 2010-04-22 2010-09-01 华中科技大学 一种在线备份服务软件中的数据压缩方法
US20130297570A1 (en) * 2012-05-04 2013-11-07 Huawei Technologies Co., Ltd. Method and apparatus for deleting duplicate data
US20140289203A1 (en) * 2013-03-21 2014-09-25 Nextbit Systems Inc. Using mobile devices of a user as an edge cache to stream video files
CN103530201A (zh) * 2013-07-17 2014-01-22 华中科技大学 一种适用于备份系统的安全数据去重方法和系统
CN108573016A (zh) * 2017-12-25 2018-09-25 北京金山云网络技术有限公司 一种数据一致性检查方法、装置、设备和存储介质
CN108446407A (zh) * 2018-04-12 2018-08-24 北京百度网讯科技有限公司 基于区块链的数据库审计方法和装置

Also Published As

Publication number Publication date
US11269540B2 (en) 2022-03-08
US20200117367A1 (en) 2020-04-16

Similar Documents

Publication Publication Date Title
US11113156B2 (en) Automated ransomware identification and recovery
CN111045855B (zh) 备份数据的方法、装置和计算机程序产品
US9256499B2 (en) Method and apparatus of securely processing data for file backup, de-duplication, and restoration
US9064133B2 (en) Method and apparatus of securely processing data for file backup, de-duplication, and restoration
US8428265B2 (en) Method and apparatus of securely processing data for file backup, de-duplication, and restoration
JP2017528037A (ja) 外部不揮発性メモリに記憶されたデータが有効かどうかを判定するための集積回路
US20200110905A1 (en) Security hardened software footprint in a computing environment
Sookhak et al. Towards dynamic remote data auditing in computational clouds
CN111008034B (zh) 一种补丁生成方法及装置
CN111858146B (zh) 用于恢复数据的方法、设备和计算机程序产品
CN109492049B (zh) 用于区块链网络的数据处理、区块生成及同步方法
CN112214519B (zh) 一种数据查询方法、装置、设备及可读介质
CN111045856A (zh) 用于管理应用系统的方法、设备和计算机程序产品
US11100217B1 (en) Leveraging a disaster recovery infrastructure to proactively manage cyber security threats to a production environment
US11238157B2 (en) Efficient detection of ransomware attacks within a backup storage environment
US11307790B2 (en) Method, device, and computer program product for managing data placement
US9054864B2 (en) Method and apparatus of securely processing data for file backup, de-duplication, and restoration
CN113312326A (zh) 用于存储管理的方法、电子设备和计算机程序产品
CN113590181A (zh) 配置文件的校验方法、装置、设备及存储介质
US20210240350A1 (en) Method, device, and computer program product for recovering based on reverse differential recovery
US11513913B2 (en) Method for storage management, electronic device, and computer program product
CN110674511A (zh) 基于椭圆曲线加密算法的离线数据保护方法及系统
CN111698227B (zh) 信息同步管理方法、装置、计算机系统及可读存储介质
CN114491661A (zh) 基于区块链的日志防篡改方法及系统
CN111949738A (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