管理对存储数据单元的操作的制作方法_2

文档序号:9291628阅读:来源:国知局
操作不同,该第二读取操作至少部分基于包含待读取数据单元 的数据块的地址来检索该待读取数据单元;以及删除操作,该删除操作以不包括已删除数 据单元的第二数据块来替代包括待删除数据单元的第一数据块。
[0051] 在另一个方案中,通常,一种用于管理数据单元存储的方法包括将多个数据块存 储在数据存储系统中,至少一些所述数据块包括多个数据单元,至少一组数据块是连续存 储的,从而支持第一读取操作,该第一读取操作从所述组中至少两个相邻数据块中检索数 据单元。所述方法还包括使用至少一个处理器针对多个数据单元执行两项或更多项操作。 所述操作包括:第二读取操作,与所述第一读取操作不同,该第二读取操作至少部分基于包 含待读取数据单元的数据块的地址来检索该待读取数据单元;以及删除操作,该删除操作 以不包括已删除数据单元的第二数据块来替代包括待删除数据单元的第一数据块。
[0052] 在另一个方案中,通常,软件存储在计算机可读介质上以管理数据单元的存储。所 述软件包括用于使计算系统执行以下操作的指令:将多个数据块存储在数据存储系统中, 至少一些所述数据块包括多个数据单元,至少一组数据块是连续存储的,从而支持第一读 取操作,该第一读取操作从所述组中至少两个相邻数据块中检索数据单元;以及针对多个 数据单元执行两项或更多项操作。所述操作包括:第二读取操作,与所述第一读取操作不 同,该第二读取操作至少部分基于包含待读取数据单元的数据块的地址来检索该待读取数 据单元;以及删除操作,该删除操作以不包括已删除数据单元的第二数据块来替代包括待 删除数据单元的第一数据块。
[0053] 在另一个方案中,通常,一种用于管理数据单元存储的系统包括被配置为存储多 个数据块的数据存储系统,至少一些所述数据块包括多个数据单元,所述数据存储系统还 被配置为针对至少一些所述数据块存储与之前从该数据块删除一个或多个数据单元有关 的相应历史信息,所述删除会影响该数据块中多个数据单元的至少一些地址。该系统还包 括接口,该接口包括至少一个处理器,耦接至所述数据存储系统,且被配置为根据地址信息 来执行至少一种访问存储在第一数据块中的至少一第一数据单元的操作,所述地址信息基 于对应于所述第一数据块的任何存储的历史信息来解读。
[0054] 这些方案可包括一个或多个以下特征。
[0055] 对应于所述第一数据块的所述历史信息包括与之前从所述第一数据块删除一个 或多个数据单元有关的信息,所述删除会影响已从所述第一数据块中解压缩的数据单元的 相对偏移量。
[0056] 至少一些所述数据块是已压缩数据块。
[0057] 该接口被配置为针对多个数据单元执行两项或更多项操作,所述操作包括:读取 操作,该读取操作至少部分基于地址信息来检索待读取数据单元,所述地址信息相对于参 考地址来定位所述数据单元;以及删除操作,该删除操作删除待删除数据单元,并存储用来 针对其他数据单元解读地址信息的与所述已删除数据单元相关的历史信息,以考虑到由于 删除所述待删除数据单元而造成的相对于所述参考地址的任何偏移量。
[0058] 该接口还被配置为针对多个数据单元执行两项或更多项操作,所述操作包括:第 一读取操作,该第一读取操作至少部分基于对应于已压缩数据块的历史信息来检索待读取 数据单元;以及删除操作,该删除操作以不包括所述已删除数据单元的第二已压缩数据块 来替代包括待删除数据单元的第一已压缩数据块,并将与所述已删除数据单元有关的信息 存储在对应于所述第二已压缩数据块的历史信息中。
[0059] 所述第一读取操作解压缩一特定的已压缩数据块以恢复一已解压缩数据单元集 合,并至少部分基于对应于该特定的已压缩数据块的所述历史信息在距一参考位置特定的 偏移量处检索所述待读取数据单元。
[0060] 所述第一读取操作确定所述历史信息是否包括与一个或多个先前已删除数据单 元有关的信息。
[0061] 如果所述历史信息包括与一个或多个先前已删除数据单元有关的信息,所述第一 读取操作基于对所述特定的偏移量和历史信息中的值的比较来确定是否调整所述特定的 偏移量,所述历史信息指出至少一个先前已删除数据单元的偏移量。
[0062] 如果要调整所述特定的偏移量,所述第一读取操作基于一个或多个先前已删除数 据单元的偏移量和大小来调整所述特定的偏移量。
[0063] 所述删除操作对所述第二已压缩数据块的存储大小进行扩展,以负责所述第二已 压缩数据块和所述第一已压缩数据块之间的大小差异。
[0064] 所述第二已压缩数据块的存储大小通过存储除对应于所述第二已压缩数据块的 历史信息之外的与所述第二已压缩数据块相关联的附加信息来进行扩展。
[0065] 所述删除操作存储与所述第二已压缩数据块相关联的新检错码以替代与所述第 一已压缩数据块相关联的检错码。
[0066] 所述操作包括添加操作,该添加操作存储与一最近添加的数据单元集合相关联的 待添加数据单元。
[0067] 所述处理器还被配置为将所述最近添加的数据单元集合压缩为存储在所述存储 介质中的已压缩数据块。
[0068] 所述操作包括第二读取操作,与所述第一读取操作不同,所述第二读取操作解压 缩一个或多个已压缩数据块并相继读取多个已解压缩数据单元。
[0069] 所述操作包括第三读取操作,与所述第一读取操作和所述第二读取操作不同,该 第三读取操作解压缩由索引指出为包括具有特定标识符的数据单元的特定的已压缩数据 块,以恢复已解压缩数据单元集合,并在所述多个已解压缩数据单元内搜索所述具有所述 特定标识符的数据单元。
[0070] 至少一些所述历史信息存储在所述数据存储系统中。
[0071] 至少一部分所述历史信息在不同数据块之间交叉存取。
[0072] 对应于一特定数据块的至少一部分历史信息存储在该特定数据块的预定部分中。
[0073] 在另一个方案中,通常,一种用于管理数据单元存储的系统包括用于存储多个数 据块的装置,至少一些所述数据块包括多个数据单元,所述用于存储多个数据块的装置被 配置为针对至少一些所述数据块存储与之前从该数据块删除一个或多个数据单元有关的 相应历史信息,所述删除会影响该数据块中多个数据单元的至少一些地址。该系统还包括 用于执行至少一种操作的装置,该操作根据基于对应于所述第一数据块的任何存储的历史 信息解读的地址信息来访问存储在所述第一数据块中的至少一第一数据单元。
[0074] 在另一个方案中,通常,一种用于管理数据单元存储的方法包括将多个数据块存 储在数据存储系统中,至少一些所述数据块包括多个数据单元,所述数据存储系统被配置 为针对至少一些所述数据块存储与之前从该数据块删除一个或多个数据单元有关的相应 历史信息,所述删除会影响该数据块中多个数据单元的至少一些地址。该方法还包括使用 至少一个处理器来执行至少一种操作,所述操作根据基于对应于所述第一数据块的任何存 储的历史信息解读的地址信息来访问存储在所述第一数据块中的至少一第一数据单元。
[0075] 在另一个方案中,通常,软件存储在计算机可读介质上,以管理数据单元的存储。 所述软件包括用于使计算系统执行以下操作的指令:将多个数据块存储在数据存储系统 中,至少一些所述数据块包括多个数据单元,该数据存储系统被配置为针对至少一些所述 数据块存储与之前从该数据块删除一个或多个数据单元有关的相应历史信息,所述删除会 影响该数据块中多个数据单元的至少一些地址;以及执行至少一种操作,所述操作根据基 于对应于所述第一数据块的任何存储的历史信息解读的地址信息来访问存储在所述第一 数据块中的至少一第一数据单元。
[0076] 这些方案可包括一个或多个以下优点。
[0077] 提供一可彻底从已压缩数据存储部中删除数据单元的删除操作,该删除操作可能 是有用的,例如,用于遵守应客户要求而删除数据的隐私法。删除所述已删除数据单元可能 会影响在特定地址或在距参考地址相对偏移量处定位数据单元的指针。然而,这些指针不 需要改动,甚至不需要在执行所述删除操作时加以定位。不过,如果要实际访问那些数据单 元,必要时,随后可以对指针进行改正。对于许多所述数据存储的使用而言,按需改正指针 比在删除时定位并改正该指针更加有效。从多块已压缩数据存储部的已压缩块删除已删除 数据单元也可以这样一种方式来执行:即,保存所述删除操作和多种操作的兼容性,所述多 种操作通过扫描从一个或多个已压缩数据块恢复的多个数据单元来读取数据单元。例如, 所述删除操作可能与扫描读取操作相兼容,该扫描读取操作将标准的解压缩功能(例如 gzcat)应用于以已知压缩格式(例如gzip)存储的文件中,并解读已解压缩数据(例如,根 据记录格式)以不必依赖于索引或其他地址信息而相继将单独记录恢复为数据单元。通过 确保在所述删除操作之后所述文件在已压缩数据块之间没有间隙,扫描读取操作仍然能够 正确地解析所述压缩格式,无需移动或重写整个文件。此外,通过使用所述历史信息,可以 执行所述删除操作,这样,不管是否有数据单元先前已从已压缩数据存储部中删除,依赖于 地址信息的读取操作都继续正常运行。
[0078] 通过以下说明书和权利要求书,本发明的其它特征和优点将变得显而易见。
【附图说明】
[0079] 图1是数据存储系统的框图。
[0080] 图2是数据存储格式的示意图。
[0081] 图3A-3D是数据操作的流程图。
【具体实施方式】
[0082] 图1所示的是数据处理系统100的一个示例,数据存储技术可应用于该数据处理 系统。执行环境102包括存储接口模块104,该存储接口模块被配置为针对存储在数据存 储系统106中的数据单元执行数据操作。所述执行环境102可能被托管在例如受一合适的 操作系统(比如UNIX操作系统的一个版本)控制的一个或多个通用计算机。例如,所述执 行环境102还可包括多节点并行计算环境,该多节点并行计算环境包括使用多个中央处理 器(CPU)或处理器内核的计算机系统的配置,这些CPU或处理器内核可以是本地(例如多 处理器系统,如对称多处理(SMP)计算机),或本地分布式(例如多个处理器耦合为群集或 大规模并行处理(MPP)系统),或者远程,或远程分布式(例如通过局域网(LAN)和/或广 域网(WAN)来耦合的多个处理器),或其组合。所述数据存储系统106包括一个或多个存储 设备,所述存储设备可能是所述执行环境102本地的存储设备,例如,连接到托管所述执行 环境102的计算机;或可能是所述执行环境102远程的存储设备,例如,通过远程连接与托 管所述执行环境102的计算机进行通讯。所述一个或多个存储设备可包括:例如,易失性存 储器,比如随机存取存储器(R
当前第2页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1