存储系统.pdf

上传人:1** 文档编号:965385 上传时间:2018-03-21 格式:PDF 页数:22 大小:691.26KB
返回 下载 相关 举报
摘要
申请专利号:

CN200980157264.5

申请日:

2009.08.20

公开号:

CN102326151A

公开日:

2012.01.18

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):G06F 12/00申请日:20090820|||公开

IPC分类号:

G06F12/00

主分类号:

G06F12/00

申请人:

日本电气株式会社

发明人:

野口善昭

地址:

日本东京都

优先权:

2009.02.27 JP 2009-045232

专利代理机构:

北京市金杜律师事务所 11256

代理人:

吴立明

PDF下载: PDF下载
内容摘要

一种存储系统,包括:数据存储装置,其配置用于存储存储目标数据,并且还存储用以成为树型结构的地址数据、基于内容并且存储有待指向数据的位置的地址数据、以及指向存储目标数据或其他地址数据的地址数据;操作日志生成装置,其配置用于生成说明将所述存储目标数据存储至所述数据存储装置的操作内容,以及将指向存储目标数据的树型结构地址数据存储至所述数据存储装置的操作内容的操作日志;以及文件系统提交装置,其配置用于基于所述操作日志将所述存储目标数据和所述树型结构地址数据存储至所述数据存储装置。

权利要求书

1: 一种存储系统, 包括 : 数据存储装置, 其配置用于存储存储目标数据, 并且还存储用以成为树型结构的地址 数据、 基于内容并且存储有待指向数据的位置的地址数据、 以及指向存储目标数据或其他 地址数据的地址数据 ; 操作日志生成装置, 其配置用于生成说明将所述存储目标数据存储至所述数据存储装 置的操作内容, 以及将指向所述存储目标数据的树型结构地址数据存储至所述数据存储装 置的操作内容的操作日志 ; 以及 文件系统提交装置, 其配置用于基于所述操作日志, 将所述存储目标数据和所述树型 结构地址数据存储至所述数据存储装置。
2: 根据权利要求 1 所述的存储系统, 其中所述操作日志生成装置配置用于执行将所述 存储目标数据和所述树型结构地址数据存储至作为不同于所述数据存储装置的存储区域 的高速缓存存储器中的操作, 并且还基于所述存储操作生成所述操作日志并且将所述操作 日志存储至所述高速缓存存储器。
3: 根据权利要求 2 所述的存储系统, 其中所述文件系统提交装置配置用于基于所述操 作日志, 将所述存储目标数据存储至所述数据存储装置, 并且还基于所述操作日志, 使用通 过将所述存储目标数据存储至所述数据存储装置而指定的地址数据, 将所述树型结构地址 数据存储至所述数据存储装置。
4: 根据权利要求 3 所述的存储系统, 其中所述文件系统提交装置配置用于基于所述操 作日志, 按照从所述树型结构地址数据的较低层级向较高层级的顺序, 将所述地址数据存 储至所述数据存储装置。
5: 根据权利要求 3 或 4 所述的存储系统, 其中所述文件系统提交装置配置用于基于所 述操作日志, 将多个存储目标数据存储至所述数据存储装置, 然后将所述地址数据存储至 所述数据存储装置。
6: 根据权利要求 5 所述的存储系统, 其中所述文件系统提交装置配置用于将组成相同 文件的所述多个存储目标数据存储至所述数据存储装置。
7: 根据权利要求 6 所述的存储系统, 其中所述文件系统提交装置配置用于将组成所述 相同文件的所有所述多个存储目标数据和指向所述多个存储目标数据的所述树型结构地 址数据存储至所述高速缓存存储器, 然后将所述多个存储目标数据和所述树型结构地址数 据存储至所述数据存储装置。
8: 一种包括指令的计算机程序, 用于使得包括数据存储装置的信息处理设备实现 : 操作日志生成装置, 其配置用于生成说明将所述存储目标数据存储至所述数据存储装 置的操作内容, 以及将指向所述存储目标数据的树型结构地址数据存储至所述数据存储装 置的操作内容的操作日志 ; 以及 文件系统提交装置, 其配置用于基于所述操作日志, 将所述存储目标数据和所述树型 结构地址数据存储至所述数据存储装置 ; 其中所述数据存储装置配置用于存储存储目标数据, 并且还存储用以成为树型结构的 地址数据、 基于内容并且存储有待指向数据的位置的地址数据、 以及指向存储目标数据或 其他地址数据的地址数据。
9: 根据权利要求 8 所述的计算机程序, 其中所述操作日志生成装置配置用于执行将所 2 述存储目标数据和所述树型结构地址数据存储至作为不同于所述数据存储装置的存储区 域的高速缓存存储器的操作, 并且还基于所述存储操作, 生成所述操作日志并且将所述操 作日志存储至所述高速缓存存储器。
10: 一种数据存储方法, 包括 : 在包括数据存储装置的信息处理设备中 : 生成说明将所述存储目标数据存储至所述数据存储装置的操作内容, 以及将指向所述 存储目标数据的树型结构地址数据存储至所述数据存储装置的操作内容的操作日志 ; 以及 基于所述操作日志, 将所述存储目标数据和所述树型结构地址数据存储至所述数据存 储装置 ; 其中所述数据存储装置配置用于存储存储目标数据, 并且还存储用以成为树型结构的 地址数据、 基于内容并且存储有待指向数据的位置的地址数据、 以及指向存储目标数据或 其他地址数据的地址数据。
11: 根据权利要求 10 所述的数据存储方法, 包括 : 在生成所述操作日志时, 执行将所述 存储目标数据和所述树型结构地址数据存储至作为不同于所述数据存储装置的存储区域 的高速缓存存储器中的操作, 并且还基于所述存储操作, 生成所述操作日志以及将所述操 作日志存储至所述高速缓存存储器。

说明书


存储系统

    技术领域 本发明涉及存储系统, 并且更具体地, 涉及通过依赖于所存储数据的内容指定的 唯一地址来指定在其中存储有数据的存储位置的内容地址类型的存储系统。
     背景技术 近些年来, 随着计算机的发展以及变得普及, 数字数据中注入了各种类型的信息。 作为用于存储此类数字数据的设备, 存在以下存储设备, 诸如磁带和磁盘。 因为待存储的数 据与日俱增并且其数量已经变得庞大, 因此需要大容量存储系统。 此外, 要求在减少用于存 储设备的成本的同时保持可靠性。另外, 要求稍后能够容易地对数据进行检索。因此, 期望 如下存储系统, 该存储系统能够自动实现存储容量及其性能的提升、 消除存储副本以减少 存储成本以及具有高度冗余。
     在此类环境下, 近些年来, 已经研发了如专利文献 1 中所示的内容地址存储系统。 该内容地址存储系统将数据分发并存储至多个存储设备, 并且基于依赖于数据的内容而指
     定的唯一内容地址来指定存储有数据的存储位置。具体而言, 内容地址存储系统将预定数 据划分成多个片段、 添加片段作为冗余数据以及将这些片段分别存储至多个存储设备。
     稍后, 通过指派内容地址, 可以检索数据, 即检索存储在由内容地址指定的存储位 置的片段, 以及在从这些片段分离之前重新存储预定数据。
     此外, 将内容地址生成为依赖于数据的内容而是唯一的。例如, 使用数据的哈希 值。因此, 在重复数据的情况下, 可以在同一存储位置取得关于数据具有相同内容的数据。 因此, 没有必要单独存储重复数据, 从而可以消除重复记录并减少数据容量。
     此外, 在内容地址存储系统中, 使用树型文件系统。在该系统中, 指向所存储数据 的内容地址由位于更高层级的内容地址所指向, 由此内容地址被存储为树结构。 因此, 通过 遵循从较高层级到较低层级的内容地址的参考目的地, 可以访问目标存储数据。
     参考图 1, 将描述存储在内容地址存储系统中的数据的一方面。具体而言, 将描述 在存储数据之后指向所存储数据的内容地址的树型结构 ( 层级式结构 ) 的变化。
     图 1 示出了存储在内容地址存储系统的数据存储装置中的数据。由 “ca00” 和 “ca01” 表示的框是数据块, 并且 “ca00” 和 “ca01” 是表示依赖于数据的内容而指定的存储 位置的内容地址。
     作为特定数据块指向另一数据块的方法, 存在使用以 “ca” 开始的直接地址的方法 和使用间接地址如 “#1” 的方法。地址对应表 “ca100” 将内容地址存储为间接地址的参考 目的地。例如, “文件 1” 的存储目的地是 “#3” , 并且使用间接地址而不记录直接内容地址 “ca30” 。这是因为, 当使用直接地址时, 在作为树型结构末端的叶子中的变化被传播至根。 例如, “ca30” 的变化改变 “ca11” , 并且还改变更高层级中的 “ca10” 。然而, 当使用间接地 址时, 对应于间接地址的内容地址可以在地址对应表中进行改变, 并且可以禁止如上文所 述的地址变化的传播。将用于遵循树型结构的源存储为路由信息, 并且可以遵循树型结构 中的更低层级从路由信息到所存储数据。接下来, 将示出将树型结构存储至内容地址存储系统中的操作, 并且将描述其中 的问题。在初始状态, 根目录 “/” 其下具有目录 “/dir1” 和 “/dir2” 。将描述当目录 “/dir1” 其下具有目录 “/dir1/ 文件 1” 和 “/dir1/ 文件 2” 时创建目录 “/dir2/ 文件 3” 的操作。
     首先, 为了创建目录 “/dir2/ 文件 3” , 文件被 “打开” 并且在 “dir2” 中创建针对 “文件 3” 的入口。然后, “文件= #5” 作为 “文件 3” 的入口被存储至数据存储装置, 并且获 取地址 “ca21-1” (1-1)。然后, 将该地址 “ca21-1” 存储为由 “dir2” 指向的地址 (1-2), 并 且获取指向数据块 “dir2, ca21-1” 的地址 “ca20-1” 。在这之后, 地址与作为 “dir2” 的间 接参考地址的 “#2” 相关联, 并且被注册至地址对应表 (1-3)。因此, 提交 (commit) 地址数 据的树型结构。
     随后, 假设数据块 “数据 31” 被存储至数据存储装置 (2-1)。然后, 获取数据块的 地址 “ca51” , 并且将内容地址记录至 “文件 3” 的数据块列表 “ca50(ca50-n)” 中 (2-2)。因 此, 数据块列表的地址 “ca50-1” 被获取并且与 “文件 3” 的间接参考地址 “#5” 相关联, 并且 “#5 = ca50-1” 被记录在地址对应表中 (2-3)。因此, “文件 3” 的状态被提交。
     随后, 将描述假设数据块 “数据 32” 还被存储至数据存储装置中 (3-1)。 然后, 数据 块的内容地址 “ca52” 被获取并记录至 “文件 3” 的数据块列表 “ca50(ca50-n)” 中 (3-2)。 因此, 数据块列表的地址被改变成 “ca50-2” 并且与 “文件 #” 的间接参考地址 “#5” 相关联, 并且 “#5 = ca50-2” 被记录至地址对应表 (3-3)。
     [ 专利文献 1] 日本未审查专利申请公开 No.JP-A 2005-235171。
     然而, 在上文所述的内容地址存储系统中, 树型结构不仅在创建目录或文件时改 变, 还在写入文件时改变, 并且其量可以与文件大小成比例。然后, 实质上不需要被存储的 内容地址的中间状态被存储至数据存储装置。因此, 浪费地使用了在准备将来存储相同数 据期间不删除数据的内容地址存储系统的存储范围。此外, 在与一般文件系统相比在从数 据获取哈希值方面花费更长时间的内容地址存储系统中, 存在写入时间延迟的问题。 发明内容
     因此, 本发明的目的是减少存储容量以及缩短上文提到任务的存储处理时间, 并 且提供高性能存储系统。
     为了实现该目的, 本发明实施方式的存储系统包括 :
     数据存储装置, 其配置用于存储存储目标数据, 并且还存储用以成为树型结构的 地址数据、 基于内容并且存储有待指向数据的位置的地址数据、 以及指向存储目标数据或 其他地址数据的地址数据 ;
     操作日志生成装置, 其配置用于生成说明将存储目标数据存储至数据存储装置的 操作内容, 以及将指向存储目标数据的树型结构地址数据存储至数据存储装置的操作内容 的操作日志 ; 以及
     文件系统提交装置, 其配置用于基于操作日志将存储目标数据和树型结构地址数 据存储至数据存储装置。
     此外, 本发明另一示例性实施方式的程序是一种计算机程序, 该计算机程序包括 指令用于使得包括数据存储装置 ( 该数据存储装置配置用于存储存储目标数据并且还存 储用以成为树型结构的地址数据、 基于内容并且存储有待指向数据的位置的地址数据、 以及指向存储目标数据或其他地址数据的地址数据 ) 的信息处理设备实现 :
     操作日志生成装置, 其配置用于生成说明将存储目标数据存储至数据存储装置的 操作内容以及将指向存储目标数据的树型结构地址数据存储至数据存储装置的操作内容 的操作日志 ; 以及
     文件系统提交装置, 其配置用于基于操作日志将存储目标数据和树型结构地址数 据存储至数据存储装置。
     此外, 本发明另一示例性实施方式的数据存储方法包括, 在包括数据存储装置 ( 该数据存储装置配置用于存储存储目标数据并且还存储用以成为树型结构的地址数据、 基于内容并且存储有待指向数据的位置的地址数据、 以及指向存储目标数据或其他地址数 据的地址数据 ) 的信息处理设备中 :
     生成说明将存储目标数据存储至数据存储装置的操作内容, 以及将指向存储目标 数据的树型结构地址数据存储至数据存储装置的操作内容的操作日志 ; 以及
     基于操作日志将存储目标数据和树型结构地址数据存储至数据存储装置。
     通过上文所述的配置, 本发明可以减少存储容量并且缩短存储处理时间, 并且可 以提供高性能存储系统。 附图说明
     图 1 是示出存储在与本发明有关的存储系统中的数据方面的视图 ; 图 2 是示出本发明存储系统的示意性配置的框图 ; 图 3 是示出本发明第一示例性实施方式的存储系统配置的功能框图 ; 图 4 是示出图 3 中公开的存储系统操作的流程图 ; 图 5 是示出存储在图 3 中公开的存储系统中的数据方面的视图 ; 图 6 是示出存储在图 3 中公开的存储系统中的数据方面的视图 ; 图 7 是示出存储在图 3 中公开的存储系统中的数据方面的视图 ; 图 8 是示出存储在图 3 中公开的存储系统中的数据方面的视图 ; 以及 图 9 是示出本发明第二示例性实施方式的存储系统配置的功能框图。具体实施方式
     < 第一示例性实施方式 >
     本发明的第一示例性实施方式将参考图 2 至图 8 进行描述。图 2 是示意性地示出 存储系统的框图。图 3 是示出存储系统配置的功能框图。图 4 是示出存储系统操作的流程 图。图 5 至图 8 是示出存储在存储系统中的数据方面的视图。
     该示例性实施方式示出了稍后描述的在第二示例性实施方式中公开的存储系统 的特定示例。下文将描述通过连接多个服务器计算机来配置存储系统的情况。然而, 本发 明的存储系统并不限于由多个计算机配置, 并且可以由一个计算机配置。
     [ 配置 ]
     本发明的存储系统 10 例如经由在附图中未示出的网络 N 连接至控制备份过程的 备份系统。然后, 备份系统获得存储在经由网络连接的备份目标设备中的备份目标数据 ( 存储目标数据 ), 并且请求存储系统 10 进行存储。因此, 存储系统 10 存储请求存储为备份的备份目标数据。在图 3 中, 例示了用户应用 30, 其作为请求存储系统 10 存储数据的备 份系统。
     此外, 如图 2 中所示, 该示例性实施方式的存储系统 10 通过连接多个服务器计算 机进行配置。具体而言, 存储系统 10 配备有作为通过存储系统 10 来控制存储和复制操作 的服务器计算机的加速器节点 10A, 以及作为配备有存储数据的存储设备的服务器计算机 的存储节点 10B。加速节点 10A 的数目和存储节点 10B 的数目不限于图 2 中所示的数目, 并 且存储系统可以通过连接更多节点 10A 和更多节点 10B 进行配置。
     此外, 该示例性实施方式的存储系统 10 是内容地址存储系统, 该内容地址存储系 统划分数据并且使得数据冗余分发并存储至多个存储设备, 并且通过依赖于数据内容而指 定的唯一内容地址指定数据的存储位置。
     假设存储系统 10 是单个系统, 下文将描述存储系统 10 的配置和功能。即, 下文描 述的存储系统 10 的配置和功能可以在加速器节点 10A 或存储节点 10B 中提供。存储系统 10 不限于必须包括加速器节点 10A 和存储节点 10B 的配置, 而是可以具有任何配置。
     图 3 示出了存储系统 10 的配置。如该附图中所示, 存储系统 10 配备有文件系统 访问单元 11、 树型结构复制单元 12、 数据复制单元 13、 操作日志 14、 文件系统提交单元 15 和数据存储单元 20。然后, 以上配置通过将程序安装至存储系统 10 的运算设备来实现, 或 者通过形成为存储设备中的数据存储区域来实现。下文将详细描述每个配置。以例如存储 在存储介质 ( 诸如 CD-ROM) 的状态向存储系统 10 提供上述程序。备选地, 上述程序可以存 储在网络上的另一服务器计算机的存储设备中, 并且经由网络从其他服务器计算机向存储 系统 10 提供。 数据存储单元 20( 数据存储装置 ) 是用于存储数据的存储区域, 并且具有用于执 行数据存储过程的功能。具体而言, 当给定存储目标数据用于从文件系统提交单元 15 等进 行存储时, 数据存储单元 20 如稍后所述存储存储目标数据。同时, 数据存储单元 20 基于所 存储的存储目标数据的数据内容计算哈希值, 并且返回作为指向存储目标数据的地址数据 的内容地址。此外, 数据存储单元 20 存储指向存储目标数据的树型结构的内容地址和其他 内容地址。此时, 指向另一内容地址的内容地址变成基于将要指向的其他内容地址的数据 内容指定其他内容地址的存储位置的值。因此, 内容地址是基于将要指向的数据存储位置 和内容的地址数据, 较高层级的内容地址指向较低层级的内容地址, 并且最终, 以树型结构 形成内容地址以便指向所存储的存储目标数据。稍后将描述数据存储单元 20 中的数据存 储状态的示例。
     此外, 文件系统访问单元 11 提供一种装置, 该装置配置用于访问执行数据存储请 求等的用户应用 30。例如, 假设该示例性实施方式的文件系统访问单元 11 与等同于由作 TM 为一种操作系统的 UNIX 使用的系统调用 ( 诸如 “open” 、 “read” 、 “write” 和 “close” )的 操作兼容。然而, 由系统文件访问单元 11 提供的访问装置不限于上文所述的系统调用, 并 且可以是任何接口。此外, 用户应用 30 可以使用网络文件系统接口 ( 诸如 NFS( 网络文件 系统 ) 和 CIFS( 通用因特网文件系统 )), 或者可以是同一机器中的本地文件系统。总之, 来自用户应用表 30 的请求可以被分成两类 : 与树型结构有关的操作诸如 “open” “close” 、 、 “mkdir” 和 “unlink” ; 与数据有关的操作 “data” 和 “write” 。文件系统访问单元 10 向树 型结构复制单元 12 分发与该树型结构有关的操作, 并且向数据复制单元 13 分发与数据有
     关的操作。
     此外, 树型结构复制单元 12 从文件系统访问单元 11 接受树型结构操作请求, 从数 据存储单元 20 检索树型结构操作所必须的数据, 并且临时生成并保持树型结构。由于该生 成的树型结构需要最终作为文件系统存储在数据存储单元 20 中, 因此用于生成树型结构 的操作内容被存储至操作日志 14。
     此外, 数据复制单元 13 从文件系统访问单元 11 接受数据传送请求, 并且执行 “read” 和 “write” 。例如, 当接受请求以写入数据时, 首先, 数据复制单元 13 临时保持与写 入请求有关的存储目标数据, 并且此后将所保持的数据存储至数据存储单元 20。 然后, 当数 据存储单元 20 返回内容地址时, 数据复制单元 13 向文件系统访问单元 11 发送写入已经完 成的响应。 具体地, 由于若针对故障采取动作则可以异步执行数据的写入, 因此在数据被临 时保持的时间点经由文件系统访问单元 11 向用户应用 30 通知写入完成, 并且可以顺序处 理随后的写入请求。此时, 如 “flush log( 刷新日志 )” 的用于将临时保持的存储目标数据 写入数据存储单元 20 的需求之后被存储至操作日志 14。 在读取数据的过程中, 指定内容地 址并从数据存储单元 20 进行检索是基本的, 但是还可以期望从所保持的数据检索的高速 缓存效果。 此外, 树型操作和数据写入的记录被顺序记录至操作日志 14( 高速缓存存储器 )。 为了提交树型结构, 必须完成数据的写入, 并且因此树型结构和数据写入两者的信息是必 须的。然后, 操作日志 14 可以实现为可以由存储器上的树型结构复制单元 12 和数据复制 单元 13 两者访问的共享存储器, 或者可以实现为共享的文件。此外, 为了保障容错, 操作日 志 14 可以实现为用于数据库的事务。
     操作日志 14 形成在不同于在其中形成数据存储单元 20 的存储设备 ( 诸如硬盘 ) 的存储区域中。 例如, 操作日志 14 形成在以更高速度记录和复制数据的刷新存储器 (flush memory) 中。
     因此, 树型结构复制单元 12、 数据复制单元 13 和操作日志 14 起到操作日志生成 装置的作用, 该操作日志生成装置配置用于生成和临时存储表示在存储至数据存储单元 20 时存储目标数据和地址数据的操作内容的操作日志。此时, 特别地, 数据复制单元 13 用于 临时存储待存储至数据存储单元 20 的存储目标数据, 并且树型结构复制单元 12 用于临时 存储指向存储目标数据的地址数据的树型结构。
     此外, 文件系统提交单元 15( 文件系统提交装置 ) 顺序读取存储在操作日志 14 中 的 “commit log” 和 “flush log” , 并且将已经由树型结构复制单元 12 和数据复制单元 13 临时更新的树型结构和存储目标数据存储至数据存储单元 20。 虽然图 3 示出了所有数据经 由文件系统提交单元 15 进入数据存储单元 20, 但是文件系统提交单元 15 可以配置用于提 示树型结构复制单元 12 和数据复制单元 13 将数据存储至数据存储单元 20 并且执行数据 的实际传送而不经由文件系统提交单元 15。
     例如, 指示最后的文件操作 ( 诸如 “close” ) 的请求可以使得树型复制单元 12 向 文件系统提交单元 15 发送用以提交文件系统的请求。文件系统提交单元 15 基于存储在操 作日志 14 中的数据在数据存储单元 20 中以正确的顺序提交树型操作和数据传送, 由此提 交从中消除中间状态的文件系统变得可能。提交文件系统还可以按照预定时间间隔 ( 例 如, 每两分钟 ) 来执行, 而不考虑上文提到的请求 ( 诸如 “close” ) 的时间。在此情况下, 中
     间状态没有被完全消除, 但是可以限制记录发生在间隔之间的树型结构的变化。
     [ 操作 ]
     接下来, 将参考图 4 至图 8 描述上文描述的存储系统 10 的操作。首先, 图 5 示出 了存储在数据存储单元 20 中的数据、 由树型结构复制单元 12 高速缓存的数据以及由数据 复制单元 13 从文件创建到写入存储目标数据所高速缓存的数据。
     如图 5 的数据存储单元 20 中所示, 在初始状态, 根目录 “/” 其下具有目录 “/dir1” 和 “/dir2” , 并且目录 “/dir1” 其下具有 “/dir1/ 文件 1” 和 “/dir1/ 文件 2” 。此后, 将示 出创建 “/dir2/ 文件 3” 的操作。
     首先, 当用户应用 30 提出 “open” “/dir2/ 文件 3” 的请求时, 该请求被传至树型 结构复制单元 12。在访问树型结构之前, 树型结构复制单元 12 使得目录 “/dir2” 在高速缓 存区域 “&20” 中可参考, 并且将其反映在树型结构复制单元 12 的地址对应表上。然后, 树 型结构复制单元 12 为此指派存储关于 “文件 3” 的信息的区域 “&21” 和区域 “&50” (1-1)、 将地址 “&21” 存储至高速缓存区域 “&20” 从而使得可以通过 “#5” 对它们进行访问以及更 新关于文件的信息 (1-2)。此时, 由于未提交树结构留在 “&20” 、 “&21” 和 “&50” 中, 记录操 作日志 14 以供之后执行 “commit” 以提交树结构。具体而言, 记录包括 “commit&21” ( 提交 &21) 和 “commit&22at close&50” ( 当 &50 关闭时提交 &20) 的操作日志 14。
     随后, 当执行数据写入时, 数据复制单元 13 将存储目标数据 “数据 31” 存储至临时 区域 “&51” (2-1)。然后, 数据复制单元 13 向树型结构复制单元 12 通知存储地址 “&51” , 由 此地址 “&51” 被存储至区域 “&50” 的第一区域 (2-2)。通过类似的方式, 数据复制单元 13 将存储目标数据 “数据 32” 存储至临时区域 “&52” (3-1)、 向树型结构复制单元 12 通知存储 地址 “&52” 以及将地址 “&52” 存储至区域 “&50” (3-2)。由于未提交数据留在区域 “&51” 和 “&52” 中, 因此记录操作日志 14 以供之后执行 “刷新” 以提交存储目标数据。具体而言, 记录 包括 “flush&51 at close&50” ( 当 &50 关闭时写入 &51) 和 “flush&52 at close&50” (当 &50 关闭时写入 &52) 的操作日志 14。此时, 在操作日志 14 中记录的是 “&51” 、 “&52”和 “&50” 相关联。这用于当在 “刷新” 完成之前执行 “commit” 过程时, 搜索要预先 “commit” 的内容。
     因此, 存储目标数据被存储至数据复制单元 13, 并且生成指向该存储目标数据的 地址数据的树型结构并且将其存储至树型结构复制单元 12( 图 4 的步骤 S1), 并且在此时记 录操作日志 ( 图 4 的步骤 S2)。
     从消除中间状态的角度, 优选地尽可能长地保持树型复制单元 12 中的树型结构, 并且等待该结构的提交。另一方面, 可以在数据的大小超过数据存储单元 20 中可存储的大 小的时间点开始将数据存储为数据块。
     接下来, 图 6 示出了提交数据的操作。当执行 “文件 3” 的 “close” 时, 数据复制 单元 13 执行记录在操作日志 14 中的 “flush&51” 和 “flush&52” 。具体而言, 数据复制单 元 13 将其中保持的数据 “数据 31” 存储至数据存储单元 20( 图 4 的步骤 S3), 并且获取所 存储的存储目标数据的内容地址 “ca51” (4-1)。响应于获取内容地址, 数据复制单元 13 将 其反映在树型结构复制单元 12 的树型结构上 ( 图 4 的步骤 S4)(4-2)。换言之, 数据复制单 元 13 将地址 “ca51” 存储至树型结构复制单元 12 中的区域 “&50” 。通过相似的方式, 数据 复制单元 13 按需将保持的数据 “数据 32” 存储至数据存储单元 20, 并且获取所存储的存储目标数据的内容地址 “ca52” (5-1)。响应于获取内容地址, 数据复制单元 13 将其反映在树 型结构复制单元 12 的树型结构上 (5-2)。具体而言, 数据复制单元 13 将地址 “ca52” 存储 至树型结构复制单元 12 中的区域 “&50” 。
     图 7 示出了当完成文件写入并且提交树型结构时的操作。当执行 “文件 3”的 “close” 时, 如上文所述, “&50” 的数据被提交并且内容地址 “ca51” 和 “ca52” 被存储至数 据存储单元 20(6-1)。然后, 文件系统提交单元 15 将 “#5 = ca50” 反映在数据存储单元 20 的地址对应表上 (6-2)。
     然 后, 基 于 操 作 日 志 14, 执行随后留下的 “commit”过 程。 换 言 之, 执行 “commit&21” , 将 “&21” 作为包括指向上文所述提交的 “ca50” 的间接地址 “#5” 的数据记录 至数据存储单元 20, 并且提交内容地址 “ca21” (7-1)。因此, 内容地址 “ca21” 被存储至树 型结构复制单元 12 的区域 “&20” (7-2)。此外, 执行 “commit&20” , 树型结构复制单元 12 中 的 “&20” 被存储至数据存储单元 20, 并且提交内容地址 “ca20-1” (8-1)。响应于此, “#2 = ca20-1” 被反映在数据存储单元 20 的地址对应表上 (8-2)。
     因此, 如图 8 中所示, 存储存储目标数据, 并且存储指向该数据的内容地址的树型 结构 ( 图 4 的步骤 S5)。 因此, 在树型结构文件系统的存储中关于树型结构变化的不必要中 间状态没有被存储至数据存储单元 20。因此, 有可能减少存储容量并且缩短存储处理时间 并且提供高性能存储系统。 在此, 特别地, 在组成相同文件 “文件 3” 的多个存储目标数据 ( 数据 31、 数据 32) 被存储至数据存储单元 20 之后, 通过使用由此指定的内容地址, 按照上文所述的从较低层 级向较高层级的顺序提交树型结构。因此, 可以限制数据存储单元 20 上地址数据的树型结 构的变化, 并且可以限制存储地址数据的次数。 因此, 可以根据树型结构的变化更有效地限 制表示内容地址的中间状态的数据的存储。此时, 通过将组成相同文件的所有存储目标数 据、 并且继而将树型结构存储至数据存储单元 20, 可以实现更高效地存储地址数据的树型 结构。 然而, 在存储了部分组成相同文件的存储目标数据之后, 还可能存储指向存储目标数 据的地址数据的树型结构。
     由于在以上示例中内容地址的树型结构和存储目标数据被临时保持在树型结构 复制单元 12 和数据复制单元 13 中, 因此可以重用此类数据, 并且可以提高高速缓存效率。 相应地, 还可以进一步提高存储和复制过程。
     < 第二示例性实施方式 >
     接下来, 将参考图 9 描述本发明的第二示例性实施方式。图 9 是示出该示例性实 施方式的存储系统配置的功能框图。在该示例性实施方式中, 将示意性地描述上述存储系 统。
     如图 9 中所示, 该示例性实施方式的存储系统 1 包括 :
     数据存储装置 2, 其配置用于存储存储目标数据, 并且还存储用以成为树型结构的 地址数据、 基于内容并且存储有待指向数据的位置的地址数据、 以及指向存储目标数据或 其他地址数据的地址数据。
     操作日志生成装置 3, 其配置用于生成说明将存储目标数据存储至数据存储装置 的操作内容, 以及将指向存储目标数据的树型结构地址数据存储至数据存储装置的操作内 容的操作日志 ; 以及
     文件系统提交装置 4, 其配置用于基于操作日志将存储目标数据和树型结构地址 数据存储至数据存储装置。
     然后, 在存储系统中, 操作日志生成装置配置用于执行将存储目标数据和树型结 构地址数据存储至高速缓存存储器的操作 ( 该高速缓存存储器是不同于数据存储装置的 存储区域 ), 并且还基于该存储操作生成操作日志并且将该操作日志存储至高速缓存存储 器。
     此外, 在存储系统中, 文件系统提交装置配置用于基于操作日志将存储目标数据 存储至数据存储装置, 并且还基于操作日志使用通过将该存储目标数据存储至数据存储装 置所指定的地址数据将树型结构地址数据存储至数据存储装置。
     此外, 在存储系统中, 文件系统提交装置配置用于基于操作日志, 按照从树型结构 地址数据的较低层级向较高层级的顺序将地址数据存储至数据存储装置。
     根据本发明, 首先, 当将存储目标数据和指向该存储目标数据的树型结构地址数 据存储至数据存储装置时, 存储系统生成表示存储每个数据的操作内容的操作日志。具体 而言, 存储系统执行如下过程 : 将存储目标数据和指向其的树型结构地址数据存储至高速 缓存存储器、 基于存储过程生成操作日志并且存储至高速缓存存储器。 此时, 存储目标数据 或树型结构地址数据还没有存储在数据存储装置中。 在此之后, 基于操作日志, 存储系统将 存储目标数据和树型结构地址数据存储至数据存储装置。具体而言, 存储系统首先将存储 目标数据存储至数据存储装置, 然后将由此指定的地址数据按照从树型结构的较低层级向 较高层级的顺序存储至数据存储装置。 因此, 可以减少写入树型结构地址数据的次数, 并且可以限制树型结构的变化。 因 此, 可以限制将根据树型结构变化表示中间状态的数据存储至数据存储装置。 因而, 可以减 少存储容量并且缩短存储处理时间, 并且可以提供高性能存储系统。
     此外, 在存储系统中, 文件系统提交装置配置用于基于操作日志将多个存储目标 数据存储至数据存储装置, 然后将地址数据存储至数据存储装置。
     此外, 在存储系统中, 文件系统提交装置配置用于将组成相同文件的多个存储目 标数据存储至数据存储装置。
     此外, 在存储系统中, 文件系统提交装置配置用于将组成相同文件的所有多个存 储目标数据和指向该多个存储目标数据的树型结构地址数据存储至高速缓存存储器, 然 后, 将多个存储目标数据和树型结构地址数据存储至数据存储装置。
     因此, 通过将多个存储目标数据写入数据存储装置并且然后存储由此指定的地址 数据, 可以限制数据存储装置上地址数据的树型结构的变化, 并且可以限制存储地址数据 的次数。因此, 可以更有效地减少存储容量并且缩短存储处理时间。
     此外, 上述存储系统可以通过将计算机程序安装至信息处理设备来实现。具体而 言, 本发明另一示例性实施方式的计算机程序包括指令用于使得包括数据存储装置 ( 该数 据存储装置配置用于存储存储目标数据, 并且还存储用以成为树型结构的地址数据、 基于 内容并且存储有待指向数据的位置的地址数据、 以及指向存储目标数据或其他地址数据的 地址数据 ) 的信息处理设备实现 :
     操作日志生成装置, 其配置用于生成说明将存储目标数据存储至数据存储装置的 操作内容, 以及将指向存储目标数据的树型结构地址数据存储至数据存储装置的操作内容
     的操作日志 ; 以及
     文件系统提交装置, 其配置用于基于操作日志将存储目标数据和树型结构地址数 据存储至数据存储装置。
     然后, 在计算机程序中, 操作日志生成装置配置用于执行将存储目标数据和树型 结构地址数据存储至高速缓存存储器的操作 ( 该高速缓存存储器是不同于数据存储装置 的存储区域 ), 并且还基于所述存储操作生成操作日志并且将操作日志存储至高速缓存存 储器。
     此外, 由上述存储系统的操作执行的本发明另一示例性实施方式的数据存储方法 包括, 在包括数据存储装置 ( 该数据存储装置配置用于存储存储目标数据并且还存储用以 成为树型结构的地址数据、 基于内容并且存储有待指向数据的位置的地址数据、 以及指向 存储目标数据或其他地址数据的地址数据 ) 的信息处理设备中 :
     生成说明将存储目标数据存储至数据存储装置的操作内容, 以及将指向存储目标 数据的树型结构地址数据存储至数据存储装置的操作内容的操作日志 ; 以及
     基于操作日志将存储目标数据和树型结构地址数据存储至数据存储装置。
     然后, 数据存储方法包括 : 在生成操作日志时, 执行将存储目标数据和树型结构地 址数据存储至高速缓存存储器中的操作 ( 该高速缓存存储器是不同于数据存储装置的存 储区域 ), 并且还基于所述存储操作生成操作日志以及将该操作日志存储至高速缓存存储 器。 具有上述配置的数据存储方法和计算机程序的发明具有与上述存储系统相似的 动作, 并且因此可以达到上文提到的本发明的目的。
     虽然已经参考上文描述的相应示例性实施方式描述了本发明, 但是本发明不限于 上述示例性实施方式。 本发明的配置和细节可以在本发明的范围内通过本领域技术人员能 够理解的各种方式进行变化。
     本发明基于并要求 2009 年 2 月 27 递交的日本专利申请 No.2009-045232 的优先 权权益, 通过引用将其公开的全部内容并入于此。
     工业适用性
     本发明可以用于内容地址类型的存储系统, 其配置用于由依赖于存储数据的内容 而指定的唯一地址指定在其中存储了数据的存储位置, 并且具有工业适用性。
     参考标号的描述
     1 存储系统
     2 数据存储装置
     3 操作日志生成装置
     4 文件系统提交装置
     10 存储系统
     10A 加速器节点
     10B 存储节点
     11 文件系统访问单元
     12 树型结构复制单元
     13 数据复制单元
     14 15 20操作日志 文件系统提交单元 数据存储单元

存储系统.pdf_第1页
第1页 / 共22页
存储系统.pdf_第2页
第2页 / 共22页
存储系统.pdf_第3页
第3页 / 共22页
点击查看更多>>
资源描述

《存储系统.pdf》由会员分享,可在线阅读,更多相关《存储系统.pdf(22页珍藏版)》请在专利查询网上搜索。

1、10申请公布号CN102326151A43申请公布日20120118CN102326151ACN102326151A21申请号200980157264522申请日20090820200904523220090227JPG06F12/0020060171申请人日本电气株式会社地址日本东京都72发明人野口善昭74专利代理机构北京市金杜律师事务所11256代理人吴立明54发明名称存储系统57摘要一种存储系统,包括数据存储装置,其配置用于存储存储目标数据,并且还存储用以成为树型结构的地址数据、基于内容并且存储有待指向数据的位置的地址数据、以及指向存储目标数据或其他地址数据的地址数据;操作日志生成装置,。

2、其配置用于生成说明将所述存储目标数据存储至所述数据存储装置的操作内容,以及将指向存储目标数据的树型结构地址数据存储至所述数据存储装置的操作内容的操作日志;以及文件系统提交装置,其配置用于基于所述操作日志将所述存储目标数据和所述树型结构地址数据存储至所述数据存储装置。30优先权数据85PCT申请进入国家阶段日2011081986PCT申请的申请数据PCT/JP2009/0039652009082087PCT申请的公布数据WO2010/097848JA2010090251INTCL19中华人民共和国国家知识产权局12发明专利申请权利要求书2页说明书10页附图9页CN102326164A1/2页21。

3、一种存储系统,包括数据存储装置,其配置用于存储存储目标数据,并且还存储用以成为树型结构的地址数据、基于内容并且存储有待指向数据的位置的地址数据、以及指向存储目标数据或其他地址数据的地址数据;操作日志生成装置,其配置用于生成说明将所述存储目标数据存储至所述数据存储装置的操作内容,以及将指向所述存储目标数据的树型结构地址数据存储至所述数据存储装置的操作内容的操作日志;以及文件系统提交装置,其配置用于基于所述操作日志,将所述存储目标数据和所述树型结构地址数据存储至所述数据存储装置。2根据权利要求1所述的存储系统,其中所述操作日志生成装置配置用于执行将所述存储目标数据和所述树型结构地址数据存储至作为不。

4、同于所述数据存储装置的存储区域的高速缓存存储器中的操作,并且还基于所述存储操作生成所述操作日志并且将所述操作日志存储至所述高速缓存存储器。3根据权利要求2所述的存储系统,其中所述文件系统提交装置配置用于基于所述操作日志,将所述存储目标数据存储至所述数据存储装置,并且还基于所述操作日志,使用通过将所述存储目标数据存储至所述数据存储装置而指定的地址数据,将所述树型结构地址数据存储至所述数据存储装置。4根据权利要求3所述的存储系统,其中所述文件系统提交装置配置用于基于所述操作日志,按照从所述树型结构地址数据的较低层级向较高层级的顺序,将所述地址数据存储至所述数据存储装置。5根据权利要求3或4所述的存。

5、储系统,其中所述文件系统提交装置配置用于基于所述操作日志,将多个存储目标数据存储至所述数据存储装置,然后将所述地址数据存储至所述数据存储装置。6根据权利要求5所述的存储系统,其中所述文件系统提交装置配置用于将组成相同文件的所述多个存储目标数据存储至所述数据存储装置。7根据权利要求6所述的存储系统,其中所述文件系统提交装置配置用于将组成所述相同文件的所有所述多个存储目标数据和指向所述多个存储目标数据的所述树型结构地址数据存储至所述高速缓存存储器,然后将所述多个存储目标数据和所述树型结构地址数据存储至所述数据存储装置。8一种包括指令的计算机程序,用于使得包括数据存储装置的信息处理设备实现操作日志生。

6、成装置,其配置用于生成说明将所述存储目标数据存储至所述数据存储装置的操作内容,以及将指向所述存储目标数据的树型结构地址数据存储至所述数据存储装置的操作内容的操作日志;以及文件系统提交装置,其配置用于基于所述操作日志,将所述存储目标数据和所述树型结构地址数据存储至所述数据存储装置;其中所述数据存储装置配置用于存储存储目标数据,并且还存储用以成为树型结构的地址数据、基于内容并且存储有待指向数据的位置的地址数据、以及指向存储目标数据或其他地址数据的地址数据。9根据权利要求8所述的计算机程序,其中所述操作日志生成装置配置用于执行将所权利要求书CN102326151ACN102326164A2/2页3述。

7、存储目标数据和所述树型结构地址数据存储至作为不同于所述数据存储装置的存储区域的高速缓存存储器的操作,并且还基于所述存储操作,生成所述操作日志并且将所述操作日志存储至所述高速缓存存储器。10一种数据存储方法,包括在包括数据存储装置的信息处理设备中生成说明将所述存储目标数据存储至所述数据存储装置的操作内容,以及将指向所述存储目标数据的树型结构地址数据存储至所述数据存储装置的操作内容的操作日志;以及基于所述操作日志,将所述存储目标数据和所述树型结构地址数据存储至所述数据存储装置;其中所述数据存储装置配置用于存储存储目标数据,并且还存储用以成为树型结构的地址数据、基于内容并且存储有待指向数据的位置的地。

8、址数据、以及指向存储目标数据或其他地址数据的地址数据。11根据权利要求10所述的数据存储方法,包括在生成所述操作日志时,执行将所述存储目标数据和所述树型结构地址数据存储至作为不同于所述数据存储装置的存储区域的高速缓存存储器中的操作,并且还基于所述存储操作,生成所述操作日志以及将所述操作日志存储至所述高速缓存存储器。权利要求书CN102326151ACN102326164A1/10页4存储系统技术领域0001本发明涉及存储系统,并且更具体地,涉及通过依赖于所存储数据的内容指定的唯一地址来指定在其中存储有数据的存储位置的内容地址类型的存储系统。背景技术0002近些年来,随着计算机的发展以及变得普及。

9、,数字数据中注入了各种类型的信息。作为用于存储此类数字数据的设备,存在以下存储设备,诸如磁带和磁盘。因为待存储的数据与日俱增并且其数量已经变得庞大,因此需要大容量存储系统。此外,要求在减少用于存储设备的成本的同时保持可靠性。另外,要求稍后能够容易地对数据进行检索。因此,期望如下存储系统,该存储系统能够自动实现存储容量及其性能的提升、消除存储副本以减少存储成本以及具有高度冗余。0003在此类环境下,近些年来,已经研发了如专利文献1中所示的内容地址存储系统。该内容地址存储系统将数据分发并存储至多个存储设备,并且基于依赖于数据的内容而指定的唯一内容地址来指定存储有数据的存储位置。具体而言,内容地址存。

10、储系统将预定数据划分成多个片段、添加片段作为冗余数据以及将这些片段分别存储至多个存储设备。0004稍后,通过指派内容地址,可以检索数据,即检索存储在由内容地址指定的存储位置的片段,以及在从这些片段分离之前重新存储预定数据。0005此外,将内容地址生成为依赖于数据的内容而是唯一的。例如,使用数据的哈希值。因此,在重复数据的情况下,可以在同一存储位置取得关于数据具有相同内容的数据。因此,没有必要单独存储重复数据,从而可以消除重复记录并减少数据容量。0006此外,在内容地址存储系统中,使用树型文件系统。在该系统中,指向所存储数据的内容地址由位于更高层级的内容地址所指向,由此内容地址被存储为树结构。因。

11、此,通过遵循从较高层级到较低层级的内容地址的参考目的地,可以访问目标存储数据。0007参考图1,将描述存储在内容地址存储系统中的数据的一方面。具体而言,将描述在存储数据之后指向所存储数据的内容地址的树型结构层级式结构的变化。0008图1示出了存储在内容地址存储系统的数据存储装置中的数据。由“CA00”和“CA01”表示的框是数据块,并且“CA00”和“CA01”是表示依赖于数据的内容而指定的存储位置的内容地址。0009作为特定数据块指向另一数据块的方法,存在使用以“CA”开始的直接地址的方法和使用间接地址如“1”的方法。地址对应表“CA100”将内容地址存储为间接地址的参考目的地。例如,“文件。

12、1”的存储目的地是“3”,并且使用间接地址而不记录直接内容地址“CA30”。这是因为,当使用直接地址时,在作为树型结构末端的叶子中的变化被传播至根。例如,“CA30”的变化改变“CA11”,并且还改变更高层级中的“CA10”。然而,当使用间接地址时,对应于间接地址的内容地址可以在地址对应表中进行改变,并且可以禁止如上文所述的地址变化的传播。将用于遵循树型结构的源存储为路由信息,并且可以遵循树型结构中的更低层级从路由信息到所存储数据。说明书CN102326151ACN102326164A2/10页50010接下来,将示出将树型结构存储至内容地址存储系统中的操作,并且将描述其中的问题。在初始状态,。

13、根目录“/”其下具有目录“/DIR1”和“/DIR2”。将描述当目录“/DIR1”其下具有目录“/DIR1/文件1”和“/DIR1/文件2”时创建目录“/DIR2/文件3”的操作。0011首先,为了创建目录“/DIR2/文件3”,文件被“打开”并且在“DIR2”中创建针对“文件3”的入口。然后,“文件5”作为“文件3”的入口被存储至数据存储装置,并且获取地址“CA211”11。然后,将该地址“CA211”存储为由“DIR2”指向的地址12,并且获取指向数据块“DIR2,CA211”的地址“CA201”。在这之后,地址与作为“DIR2”的间接参考地址的“2”相关联,并且被注册至地址对应表13。因。

14、此,提交COMMIT地址数据的树型结构。0012随后,假设数据块“数据31”被存储至数据存储装置21。然后,获取数据块的地址“CA51”,并且将内容地址记录至“文件3”的数据块列表“CA50CA50N”中22。因此,数据块列表的地址“CA501”被获取并且与“文件3”的间接参考地址“5”相关联,并且“5CA501”被记录在地址对应表中23。因此,“文件3”的状态被提交。0013随后,将描述假设数据块“数据32”还被存储至数据存储装置中31。然后,数据块的内容地址“CA52”被获取并记录至“文件3”的数据块列表“CA50CA50N”中32。因此,数据块列表的地址被改变成“CA502”并且与“文件。

15、”的间接参考地址“5”相关联,并且“5CA502”被记录至地址对应表33。0014专利文献1日本未审查专利申请公开NOJPA2005235171。0015然而,在上文所述的内容地址存储系统中,树型结构不仅在创建目录或文件时改变,还在写入文件时改变,并且其量可以与文件大小成比例。然后,实质上不需要被存储的内容地址的中间状态被存储至数据存储装置。因此,浪费地使用了在准备将来存储相同数据期间不删除数据的内容地址存储系统的存储范围。此外,在与一般文件系统相比在从数据获取哈希值方面花费更长时间的内容地址存储系统中,存在写入时间延迟的问题。发明内容0016因此,本发明的目的是减少存储容量以及缩短上文提到任。

16、务的存储处理时间,并且提供高性能存储系统。0017为了实现该目的,本发明实施方式的存储系统包括0018数据存储装置,其配置用于存储存储目标数据,并且还存储用以成为树型结构的地址数据、基于内容并且存储有待指向数据的位置的地址数据、以及指向存储目标数据或其他地址数据的地址数据;0019操作日志生成装置,其配置用于生成说明将存储目标数据存储至数据存储装置的操作内容,以及将指向存储目标数据的树型结构地址数据存储至数据存储装置的操作内容的操作日志;以及0020文件系统提交装置,其配置用于基于操作日志将存储目标数据和树型结构地址数据存储至数据存储装置。0021此外,本发明另一示例性实施方式的程序是一种计算。

17、机程序,该计算机程序包括指令用于使得包括数据存储装置该数据存储装置配置用于存储存储目标数据并且还存储用以成为树型结构的地址数据、基于内容并且存储有待指向数据的位置的地址数据、以说明书CN102326151ACN102326164A3/10页6及指向存储目标数据或其他地址数据的地址数据的信息处理设备实现0022操作日志生成装置,其配置用于生成说明将存储目标数据存储至数据存储装置的操作内容以及将指向存储目标数据的树型结构地址数据存储至数据存储装置的操作内容的操作日志;以及0023文件系统提交装置,其配置用于基于操作日志将存储目标数据和树型结构地址数据存储至数据存储装置。0024此外,本发明另一示例。

18、性实施方式的数据存储方法包括,在包括数据存储装置该数据存储装置配置用于存储存储目标数据并且还存储用以成为树型结构的地址数据、基于内容并且存储有待指向数据的位置的地址数据、以及指向存储目标数据或其他地址数据的地址数据的信息处理设备中0025生成说明将存储目标数据存储至数据存储装置的操作内容,以及将指向存储目标数据的树型结构地址数据存储至数据存储装置的操作内容的操作日志;以及0026基于操作日志将存储目标数据和树型结构地址数据存储至数据存储装置。0027通过上文所述的配置,本发明可以减少存储容量并且缩短存储处理时间,并且可以提供高性能存储系统。附图说明0028图1是示出存储在与本发明有关的存储系统。

19、中的数据方面的视图;0029图2是示出本发明存储系统的示意性配置的框图;0030图3是示出本发明第一示例性实施方式的存储系统配置的功能框图;0031图4是示出图3中公开的存储系统操作的流程图;0032图5是示出存储在图3中公开的存储系统中的数据方面的视图;0033图6是示出存储在图3中公开的存储系统中的数据方面的视图;0034图7是示出存储在图3中公开的存储系统中的数据方面的视图;0035图8是示出存储在图3中公开的存储系统中的数据方面的视图;以及0036图9是示出本发明第二示例性实施方式的存储系统配置的功能框图。具体实施方式00370038本发明的第一示例性实施方式将参考图2至图8进行描述。。

20、图2是示意性地示出存储系统的框图。图3是示出存储系统配置的功能框图。图4是示出存储系统操作的流程图。图5至图8是示出存储在存储系统中的数据方面的视图。0039该示例性实施方式示出了稍后描述的在第二示例性实施方式中公开的存储系统的特定示例。下文将描述通过连接多个服务器计算机来配置存储系统的情况。然而,本发明的存储系统并不限于由多个计算机配置,并且可以由一个计算机配置。0040配置0041本发明的存储系统10例如经由在附图中未示出的网络N连接至控制备份过程的备份系统。然后,备份系统获得存储在经由网络连接的备份目标设备中的备份目标数据存储目标数据,并且请求存储系统10进行存储。因此,存储系统10存储。

21、请求存储为备说明书CN102326151ACN102326164A4/10页7份的备份目标数据。在图3中,例示了用户应用30,其作为请求存储系统10存储数据的备份系统。0042此外,如图2中所示,该示例性实施方式的存储系统10通过连接多个服务器计算机进行配置。具体而言,存储系统10配备有作为通过存储系统10来控制存储和复制操作的服务器计算机的加速器节点10A,以及作为配备有存储数据的存储设备的服务器计算机的存储节点10B。加速节点10A的数目和存储节点10B的数目不限于图2中所示的数目,并且存储系统可以通过连接更多节点10A和更多节点10B进行配置。0043此外,该示例性实施方式的存储系统10。

22、是内容地址存储系统,该内容地址存储系统划分数据并且使得数据冗余分发并存储至多个存储设备,并且通过依赖于数据内容而指定的唯一内容地址指定数据的存储位置。0044假设存储系统10是单个系统,下文将描述存储系统10的配置和功能。即,下文描述的存储系统10的配置和功能可以在加速器节点10A或存储节点10B中提供。存储系统10不限于必须包括加速器节点10A和存储节点10B的配置,而是可以具有任何配置。0045图3示出了存储系统10的配置。如该附图中所示,存储系统10配备有文件系统访问单元11、树型结构复制单元12、数据复制单元13、操作日志14、文件系统提交单元15和数据存储单元20。然后,以上配置通过。

23、将程序安装至存储系统10的运算设备来实现,或者通过形成为存储设备中的数据存储区域来实现。下文将详细描述每个配置。以例如存储在存储介质诸如CDROM的状态向存储系统10提供上述程序。备选地,上述程序可以存储在网络上的另一服务器计算机的存储设备中,并且经由网络从其他服务器计算机向存储系统10提供。0046数据存储单元20数据存储装置是用于存储数据的存储区域,并且具有用于执行数据存储过程的功能。具体而言,当给定存储目标数据用于从文件系统提交单元15等进行存储时,数据存储单元20如稍后所述存储存储目标数据。同时,数据存储单元20基于所存储的存储目标数据的数据内容计算哈希值,并且返回作为指向存储目标数据。

24、的地址数据的内容地址。此外,数据存储单元20存储指向存储目标数据的树型结构的内容地址和其他内容地址。此时,指向另一内容地址的内容地址变成基于将要指向的其他内容地址的数据内容指定其他内容地址的存储位置的值。因此,内容地址是基于将要指向的数据存储位置和内容的地址数据,较高层级的内容地址指向较低层级的内容地址,并且最终,以树型结构形成内容地址以便指向所存储的存储目标数据。稍后将描述数据存储单元20中的数据存储状态的示例。0047此外,文件系统访问单元11提供一种装置,该装置配置用于访问执行数据存储请求等的用户应用30。例如,假设该示例性实施方式的文件系统访问单元11与等同于由作为一种操作系统的UNI。

25、XTM使用的系统调用诸如“OPEN”、“READ”、“WRITE”和“CLOSE”的操作兼容。然而,由系统文件访问单元11提供的访问装置不限于上文所述的系统调用,并且可以是任何接口。此外,用户应用30可以使用网络文件系统接口诸如NFS网络文件系统和CIFS通用因特网文件系统,或者可以是同一机器中的本地文件系统。总之,来自用户应用表30的请求可以被分成两类与树型结构有关的操作诸如“OPEN”、“CLOSE”、“MKDIR”和“UNLINK”;与数据有关的操作“DATA”和“WRITE”。文件系统访问单元10向树型结构复制单元12分发与该树型结构有关的操作,并且向数据复制单元13分发与数据有说明书。

26、CN102326151ACN102326164A5/10页8关的操作。0048此外,树型结构复制单元12从文件系统访问单元11接受树型结构操作请求,从数据存储单元20检索树型结构操作所必须的数据,并且临时生成并保持树型结构。由于该生成的树型结构需要最终作为文件系统存储在数据存储单元20中,因此用于生成树型结构的操作内容被存储至操作日志14。0049此外,数据复制单元13从文件系统访问单元11接受数据传送请求,并且执行“READ”和“WRITE”。例如,当接受请求以写入数据时,首先,数据复制单元13临时保持与写入请求有关的存储目标数据,并且此后将所保持的数据存储至数据存储单元20。然后,当数据存。

27、储单元20返回内容地址时,数据复制单元13向文件系统访问单元11发送写入已经完成的响应。具体地,由于若针对故障采取动作则可以异步执行数据的写入,因此在数据被临时保持的时间点经由文件系统访问单元11向用户应用30通知写入完成,并且可以顺序处理随后的写入请求。此时,如“FLUSHLOG刷新日志”的用于将临时保持的存储目标数据写入数据存储单元20的需求之后被存储至操作日志14。在读取数据的过程中,指定内容地址并从数据存储单元20进行检索是基本的,但是还可以期望从所保持的数据检索的高速缓存效果。0050此外,树型操作和数据写入的记录被顺序记录至操作日志14高速缓存存储器。为了提交树型结构,必须完成数据。

28、的写入,并且因此树型结构和数据写入两者的信息是必须的。然后,操作日志14可以实现为可以由存储器上的树型结构复制单元12和数据复制单元13两者访问的共享存储器,或者可以实现为共享的文件。此外,为了保障容错,操作日志14可以实现为用于数据库的事务。0051操作日志14形成在不同于在其中形成数据存储单元20的存储设备诸如硬盘的存储区域中。例如,操作日志14形成在以更高速度记录和复制数据的刷新存储器FLUSHMEMORY中。0052因此,树型结构复制单元12、数据复制单元13和操作日志14起到操作日志生成装置的作用,该操作日志生成装置配置用于生成和临时存储表示在存储至数据存储单元20时存储目标数据和地。

29、址数据的操作内容的操作日志。此时,特别地,数据复制单元13用于临时存储待存储至数据存储单元20的存储目标数据,并且树型结构复制单元12用于临时存储指向存储目标数据的地址数据的树型结构。0053此外,文件系统提交单元15文件系统提交装置顺序读取存储在操作日志14中的“COMMITLOG”和“FLUSHLOG”,并且将已经由树型结构复制单元12和数据复制单元13临时更新的树型结构和存储目标数据存储至数据存储单元20。虽然图3示出了所有数据经由文件系统提交单元15进入数据存储单元20,但是文件系统提交单元15可以配置用于提示树型结构复制单元12和数据复制单元13将数据存储至数据存储单元20并且执行数。

30、据的实际传送而不经由文件系统提交单元15。0054例如,指示最后的文件操作诸如“CLOSE”的请求可以使得树型复制单元12向文件系统提交单元15发送用以提交文件系统的请求。文件系统提交单元15基于存储在操作日志14中的数据在数据存储单元20中以正确的顺序提交树型操作和数据传送,由此提交从中消除中间状态的文件系统变得可能。提交文件系统还可以按照预定时间间隔例如,每两分钟来执行,而不考虑上文提到的请求诸如“CLOSE”的时间。在此情况下,中说明书CN102326151ACN102326164A6/10页9间状态没有被完全消除,但是可以限制记录发生在间隔之间的树型结构的变化。0055操作0056接下。

31、来,将参考图4至图8描述上文描述的存储系统10的操作。首先,图5示出了存储在数据存储单元20中的数据、由树型结构复制单元12高速缓存的数据以及由数据复制单元13从文件创建到写入存储目标数据所高速缓存的数据。0057如图5的数据存储单元20中所示,在初始状态,根目录“/”其下具有目录“/DIR1”和“/DIR2”,并且目录“/DIR1”其下具有“/DIR1/文件1”和“/DIR1/文件2”。此后,将示出创建“/DIR2/文件3”的操作。0058首先,当用户应用30提出“OPEN”“/DIR2/文件3”的请求时,该请求被传至树型结构复制单元12。在访问树型结构之前,树型结构复制单元12使得目录“/。

32、DIR2”在高速缓存区域“20”中可参考,并且将其反映在树型结构复制单元12的地址对应表上。然后,树型结构复制单元12为此指派存储关于“文件3”的信息的区域“21”和区域“50”11、将地址“21”存储至高速缓存区域“20”从而使得可以通过“5”对它们进行访问以及更新关于文件的信息12。此时,由于未提交树结构留在“20”、“21”和“50”中,记录操作日志14以供之后执行“COMMIT”以提交树结构。具体而言,记录包括“COMMIT21”提交21和“COMMIT22ATCLOSE50”当50关闭时提交20的操作日志14。0059随后,当执行数据写入时,数据复制单元13将存储目标数据“数据31”。

33、存储至临时区域“51”21。然后,数据复制单元13向树型结构复制单元12通知存储地址“51”,由此地址“51”被存储至区域“50”的第一区域22。通过类似的方式,数据复制单元13将存储目标数据“数据32”存储至临时区域“52”31、向树型结构复制单元12通知存储地址“52”以及将地址“52”存储至区域“50”32。由于未提交数据留在区域“51”和“52”中,因此记录操作日志14以供之后执行“刷新”以提交存储目标数据。具体而言,记录包括“FLUSH51ATCLOSE50”当50关闭时写入51和“FLUSH52ATCLOSE50”当50关闭时写入52的操作日志14。此时,在操作日志14中记录的是“。

34、51”、“52”和“50”相关联。这用于当在“刷新”完成之前执行“COMMIT”过程时,搜索要预先“COMMIT”的内容。0060因此,存储目标数据被存储至数据复制单元13,并且生成指向该存储目标数据的地址数据的树型结构并且将其存储至树型结构复制单元12图4的步骤S1,并且在此时记录操作日志图4的步骤S2。0061从消除中间状态的角度,优选地尽可能长地保持树型复制单元12中的树型结构,并且等待该结构的提交。另一方面,可以在数据的大小超过数据存储单元20中可存储的大小的时间点开始将数据存储为数据块。0062接下来,图6示出了提交数据的操作。当执行“文件3”的“CLOSE”时,数据复制单元13执行。

35、记录在操作日志14中的“FLUSH51”和“FLUSH52”。具体而言,数据复制单元13将其中保持的数据“数据31”存储至数据存储单元20图4的步骤S3,并且获取所存储的存储目标数据的内容地址“CA51”41。响应于获取内容地址,数据复制单元13将其反映在树型结构复制单元12的树型结构上图4的步骤S442。换言之,数据复制单元13将地址“CA51”存储至树型结构复制单元12中的区域“50”。通过相似的方式,数据复制单元13按需将保持的数据“数据32”存储至数据存储单元20,并且获取所存储的存储说明书CN102326151ACN102326164A7/10页10目标数据的内容地址“CA52”51。

36、。响应于获取内容地址,数据复制单元13将其反映在树型结构复制单元12的树型结构上52。具体而言,数据复制单元13将地址“CA52”存储至树型结构复制单元12中的区域“50”。0063图7示出了当完成文件写入并且提交树型结构时的操作。当执行“文件3”的“CLOSE”时,如上文所述,“50”的数据被提交并且内容地址“CA51”和“CA52”被存储至数据存储单元2061。然后,文件系统提交单元15将“5CA50”反映在数据存储单元20的地址对应表上62。0064然后,基于操作日志14,执行随后留下的“COMMIT”过程。换言之,执行“COMMIT21”,将“21”作为包括指向上文所述提交的“CA50。

37、”的间接地址“5”的数据记录至数据存储单元20,并且提交内容地址“CA21”71。因此,内容地址“CA21”被存储至树型结构复制单元12的区域“20”72。此外,执行“COMMIT20”,树型结构复制单元12中的“20”被存储至数据存储单元20,并且提交内容地址“CA201”81。响应于此,“2CA201”被反映在数据存储单元20的地址对应表上82。0065因此,如图8中所示,存储存储目标数据,并且存储指向该数据的内容地址的树型结构图4的步骤S5。因此,在树型结构文件系统的存储中关于树型结构变化的不必要中间状态没有被存储至数据存储单元20。因此,有可能减少存储容量并且缩短存储处理时间并且提供高。

38、性能存储系统。0066在此,特别地,在组成相同文件“文件3”的多个存储目标数据数据31、数据32被存储至数据存储单元20之后,通过使用由此指定的内容地址,按照上文所述的从较低层级向较高层级的顺序提交树型结构。因此,可以限制数据存储单元20上地址数据的树型结构的变化,并且可以限制存储地址数据的次数。因此,可以根据树型结构的变化更有效地限制表示内容地址的中间状态的数据的存储。此时,通过将组成相同文件的所有存储目标数据、并且继而将树型结构存储至数据存储单元20,可以实现更高效地存储地址数据的树型结构。然而,在存储了部分组成相同文件的存储目标数据之后,还可能存储指向存储目标数据的地址数据的树型结构。0。

39、067由于在以上示例中内容地址的树型结构和存储目标数据被临时保持在树型结构复制单元12和数据复制单元13中,因此可以重用此类数据,并且可以提高高速缓存效率。相应地,还可以进一步提高存储和复制过程。00680069接下来,将参考图9描述本发明的第二示例性实施方式。图9是示出该示例性实施方式的存储系统配置的功能框图。在该示例性实施方式中,将示意性地描述上述存储系统。0070如图9中所示,该示例性实施方式的存储系统1包括0071数据存储装置2,其配置用于存储存储目标数据,并且还存储用以成为树型结构的地址数据、基于内容并且存储有待指向数据的位置的地址数据、以及指向存储目标数据或其他地址数据的地址数据。。

40、0072操作日志生成装置3,其配置用于生成说明将存储目标数据存储至数据存储装置的操作内容,以及将指向存储目标数据的树型结构地址数据存储至数据存储装置的操作内容的操作日志;以及说明书CN102326151ACN102326164A8/10页110073文件系统提交装置4,其配置用于基于操作日志将存储目标数据和树型结构地址数据存储至数据存储装置。0074然后,在存储系统中,操作日志生成装置配置用于执行将存储目标数据和树型结构地址数据存储至高速缓存存储器的操作该高速缓存存储器是不同于数据存储装置的存储区域,并且还基于该存储操作生成操作日志并且将该操作日志存储至高速缓存存储器。0075此外,在存储系统。

41、中,文件系统提交装置配置用于基于操作日志将存储目标数据存储至数据存储装置,并且还基于操作日志使用通过将该存储目标数据存储至数据存储装置所指定的地址数据将树型结构地址数据存储至数据存储装置。0076此外,在存储系统中,文件系统提交装置配置用于基于操作日志,按照从树型结构地址数据的较低层级向较高层级的顺序将地址数据存储至数据存储装置。0077根据本发明,首先,当将存储目标数据和指向该存储目标数据的树型结构地址数据存储至数据存储装置时,存储系统生成表示存储每个数据的操作内容的操作日志。具体而言,存储系统执行如下过程将存储目标数据和指向其的树型结构地址数据存储至高速缓存存储器、基于存储过程生成操作日志。

42、并且存储至高速缓存存储器。此时,存储目标数据或树型结构地址数据还没有存储在数据存储装置中。在此之后,基于操作日志,存储系统将存储目标数据和树型结构地址数据存储至数据存储装置。具体而言,存储系统首先将存储目标数据存储至数据存储装置,然后将由此指定的地址数据按照从树型结构的较低层级向较高层级的顺序存储至数据存储装置。0078因此,可以减少写入树型结构地址数据的次数,并且可以限制树型结构的变化。因此,可以限制将根据树型结构变化表示中间状态的数据存储至数据存储装置。因而,可以减少存储容量并且缩短存储处理时间,并且可以提供高性能存储系统。0079此外,在存储系统中,文件系统提交装置配置用于基于操作日志将。

43、多个存储目标数据存储至数据存储装置,然后将地址数据存储至数据存储装置。0080此外,在存储系统中,文件系统提交装置配置用于将组成相同文件的多个存储目标数据存储至数据存储装置。0081此外,在存储系统中,文件系统提交装置配置用于将组成相同文件的所有多个存储目标数据和指向该多个存储目标数据的树型结构地址数据存储至高速缓存存储器,然后,将多个存储目标数据和树型结构地址数据存储至数据存储装置。0082因此,通过将多个存储目标数据写入数据存储装置并且然后存储由此指定的地址数据,可以限制数据存储装置上地址数据的树型结构的变化,并且可以限制存储地址数据的次数。因此,可以更有效地减少存储容量并且缩短存储处理时。

44、间。0083此外,上述存储系统可以通过将计算机程序安装至信息处理设备来实现。具体而言,本发明另一示例性实施方式的计算机程序包括指令用于使得包括数据存储装置该数据存储装置配置用于存储存储目标数据,并且还存储用以成为树型结构的地址数据、基于内容并且存储有待指向数据的位置的地址数据、以及指向存储目标数据或其他地址数据的地址数据的信息处理设备实现0084操作日志生成装置,其配置用于生成说明将存储目标数据存储至数据存储装置的操作内容,以及将指向存储目标数据的树型结构地址数据存储至数据存储装置的操作内容说明书CN102326151ACN102326164A9/10页12的操作日志;以及0085文件系统提交。

45、装置,其配置用于基于操作日志将存储目标数据和树型结构地址数据存储至数据存储装置。0086然后,在计算机程序中,操作日志生成装置配置用于执行将存储目标数据和树型结构地址数据存储至高速缓存存储器的操作该高速缓存存储器是不同于数据存储装置的存储区域,并且还基于所述存储操作生成操作日志并且将操作日志存储至高速缓存存储器。0087此外,由上述存储系统的操作执行的本发明另一示例性实施方式的数据存储方法包括,在包括数据存储装置该数据存储装置配置用于存储存储目标数据并且还存储用以成为树型结构的地址数据、基于内容并且存储有待指向数据的位置的地址数据、以及指向存储目标数据或其他地址数据的地址数据的信息处理设备中0。

46、088生成说明将存储目标数据存储至数据存储装置的操作内容,以及将指向存储目标数据的树型结构地址数据存储至数据存储装置的操作内容的操作日志;以及0089基于操作日志将存储目标数据和树型结构地址数据存储至数据存储装置。0090然后,数据存储方法包括在生成操作日志时,执行将存储目标数据和树型结构地址数据存储至高速缓存存储器中的操作该高速缓存存储器是不同于数据存储装置的存储区域,并且还基于所述存储操作生成操作日志以及将该操作日志存储至高速缓存存储器。0091具有上述配置的数据存储方法和计算机程序的发明具有与上述存储系统相似的动作,并且因此可以达到上文提到的本发明的目的。0092虽然已经参考上文描述的相。

47、应示例性实施方式描述了本发明,但是本发明不限于上述示例性实施方式。本发明的配置和细节可以在本发明的范围内通过本领域技术人员能够理解的各种方式进行变化。0093本发明基于并要求2009年2月27递交的日本专利申请NO2009045232的优先权权益,通过引用将其公开的全部内容并入于此。0094工业适用性0095本发明可以用于内容地址类型的存储系统,其配置用于由依赖于存储数据的内容而指定的唯一地址指定在其中存储了数据的存储位置,并且具有工业适用性。0096参考标号的描述00971存储系统00982数据存储装置00993操作日志生成装置01004文件系统提交装置010110存储系统010210A加速。

48、器节点010310B存储节点010411文件系统访问单元010512树型结构复制单元010613数据复制单元说明书CN102326151ACN102326164A10/10页13010714操作日志010815文件系统提交单元010920数据存储单元说明书CN102326151ACN102326164A1/9页14图1说明书附图CN102326151ACN102326164A2/9页15图2说明书附图CN102326151ACN102326164A3/9页16图3说明书附图CN102326151ACN102326164A4/9页17图4说明书附图CN102326151ACN102326164A5/9页18图5说明书附图CN102326151ACN102326164A6/9页19图6说明书附图CN102326151ACN102326164A7/9页20图7说明书附图CN102326151ACN102326164A8/9页21图8说明书附图CN102326151ACN102326164A9/9页22图9说明书附图CN102326151A。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1