Partial-maximum distance separable (PMDS) erasure correcting codes for storage arrays
    11.
    发明授权
    Partial-maximum distance separable (PMDS) erasure correcting codes for storage arrays 有权
    用于存储阵列的部分最大距离可分离(PMDS)擦除校正码

    公开(公告)号:US08869006B2

    公开(公告)日:2014-10-21

    申请号:US13552271

    申请日:2012-07-18

    IPC分类号: G11C29/00 G06F11/10

    摘要: Embodiments of the invention relate to correcting erasures in a storage array. A read stripe is received from a plurality of n storage devices. The read stripe includes an array of entries arranged in m rows and n columns with each column corresponding to one of the storage devices. The entries include data entries and mr+s parity entries. Each row contains at least r parity entries generated from the data entries according to a partial maximum distance separable (PMDS) code. It is determined that the read stripe includes at least one erased entry, at most mr+s erased entries and that no row has more than r+s erased entries. The erased entries are reconstructed from the non-erased entries, resulting in a recovered read stripe.

    摘要翻译: 本发明的实施例涉及校正存储阵列中的擦除。 从多个n个存储设备接收读取条带。 读取的条带包括以m行和n列排列的条目数组,每列对应于一个存储设备。 条目包括数据条目和mr + s奇偶校验条目。 每行至少包含根据部分最大距离可分离(PMDS)代码从数据条目生成的r个奇偶校验项。 确定读取的条带包括至少一个被擦除的条目,至多mr + s个擦除条目,并且没有行具有多于r + s个擦除的条目。 从未擦除的条目重建已擦除的条目,导致恢复的读取条带。

    Full-stripe-write protocol for maintaining parity coherency in a write-back distributed redundancy data storage system
    12.
    发明授权
    Full-stripe-write protocol for maintaining parity coherency in a write-back distributed redundancy data storage system 失效
    用于在写回分布式冗余数据存储系统中维持奇偶校验一致性的全条带写协议

    公开(公告)号:US08578094B2

    公开(公告)日:2013-11-05

    申请号:US13585198

    申请日:2012-08-14

    IPC分类号: G06F12/00 G06F13/00 G06F13/28

    摘要: Data storage reliability is maintained in a write-back distributed data storage system including multiple nodes. Information is stored as a stripe including a collection of a data strips and associated parity strips, the stripe distributed across data and parity nodes. Each data node maintains the data strip holding a first copy of data, and each parity node maintains a parity strip holding a parity for the collection of data strips. A driver node initiates a full-stripe-write parity update protocol for maintaining parity coherency in conjunction with other nodes, to keep the relevant parity strips coherent. Parity is determined directly by computing parity strips for all data strips of a stripe. Any node may function as a driver node.

    摘要翻译: 在包括多个节点的回写式分布式数据存储系统中保持数据存储可靠性。 信息存储为条带,包括数据条和相关联的奇偶校验条的集合,条带分布在数据和奇偶校验节点之间。 每个数据节点保持数据条带保存数据的第一副本,并且每个奇偶校验节点保持一个奇偶校验条带,用于收集数据条带的奇偶校验。 驱动器节点启动全条带写入奇偶校验更新协议,以便与其他节点一起保持奇偶校验一致性,以保持相关奇偶校验条的一致。 直接通过计算条带的所有数据条带的奇偶校验条来确定奇偶校验。 任何节点都可以用作驱动程序节点。

    STORAGE SYSTEM CACHE USING FLASH MEMORY WITH DIRECT BLOCK ACCESS
    13.
    发明申请
    STORAGE SYSTEM CACHE USING FLASH MEMORY WITH DIRECT BLOCK ACCESS 有权
    使用具有直接块访问的闪存存储系统缓存

    公开(公告)号:US20130054873A1

    公开(公告)日:2013-02-28

    申请号:US13220256

    申请日:2011-08-29

    IPC分类号: G06F12/02

    摘要: Embodiments of the invention enable a storage cache, comprising flash memory devices, to have direct block access to the flash such that the physical block addresses are presented to the storage system's cache layer, which thereby controls the storage cache data stream. An aspect of the invention includes a caching storage system. The caching storage system comprises a plurality of flash memory units organized in an array configuration. Each of the plurality of flash memory units includes at least one flash memory device and a flash unit controller. Each flash unit controller provides the caching storage system with direct physical block access to its corresponding at least one flash memory device. The caching storage system further comprises a storage cache controller. The storage cache controller selects physical block address locations (within a flash memory device) to be erased where data are to be written, issues erase commands to a flash unit controller corresponding to the selected physical block address locations, and issues page write operations to a set of erase blocks.

    摘要翻译: 本发明的实施例使得包括闪速存储器设备的存储高速缓存具有对闪存的直接块访问,使得物理块地址被呈现给存储系统的高速缓存层,从而控制存储高速缓存数据流。 本发明的一个方面包括缓存存储系统。 缓存存储系统包括以阵列配置组织的多个闪存单元。 多个闪存单元中的每一个包括至少一个闪存设备和闪存单元控制器。 每个闪存单元控制器为缓存存储系统提供对其至少一个闪存设备的直接物理块访问。 高速缓存存储系统还包括存储高速缓存控制器。 存储高速缓存控制器选择要写入数据的要擦除的物理块地址位置,向与所选择的物理块地址位置对应的闪存单元控制器发出擦除命令,并将页写入操作发布到 一组擦除块。

    Rebuilding lost data in a distributed redundancy data storage system
    14.
    发明授权
    Rebuilding lost data in a distributed redundancy data storage system 有权
    在分布式冗余数据存储系统中重建丢失的数据

    公开(公告)号:US08156368B2

    公开(公告)日:2012-04-10

    申请号:US12710101

    申请日:2010-02-22

    IPC分类号: G06F11/00

    摘要: Rebuilding lost data in a distributed redundancy data storage system including multiple nodes, is provided. User data is stored as a collection of stripes, each stripe comprising a collection of data strips and associated parity strips, the stripes distributed across multiple corresponding data owner nodes and multiple corresponding parity owner nodes. A data owner node maintains the associated data strip holding a first copy of data, and a parity owner node maintains a parity strip holding a parity for the collection of data strips. Upon detecting a failure condition, the owner node initiates a rebuilding protocol for recovery of lost data and/or parity it owns. The protocol includes reconstruction of lost data or parity by a computation involving data and/or parity from a recovery strip set in a stripe, wherein a recovery strip set contains at least one surviving data or parity strip. The recovery strip set for a lost data strip contains at least one surviving parity strip.

    摘要翻译: 提供了在包括多个节点的分布式冗余数据存储系统中重建丢失的数据。 用户数据被存储为条带集合,每个条带包括数据条带和相关联的奇偶校验条的集合,条带分布在多个对应的数据所有者节点和多个对应的奇偶校验所有者节点上。 数据所有者节点维护保存数据的第一副本的相关联的数据条,并且奇偶校验所有者节点保持用于收集数据条的奇偶校验条。 在检测到故障条件时,所有者节点启动用于恢复丢失数据和/或其拥有的奇偶校验的重建协议。 该协议包括通过涉及在条带中设置的恢复条带的数据和/或奇偶校验的计算来重建丢失数据或奇偶校验,其中恢复条带集包含至少一个存活数据或奇偶校验条。 为丢失的数据条设置的恢复条包含至少一个存活的奇偶校验条。

    Storage redundant array of independent drives
    15.
    发明授权
    Storage redundant array of independent drives 有权
    存储独立驱动器的冗余阵列

    公开(公告)号:US08060772B2

    公开(公告)日:2011-11-15

    申请号:US11969601

    申请日:2008-01-04

    IPC分类号: G06F11/00

    摘要: A computer implemented method, apparatus, and computer usable program product for managing redundant array of independent drives. In response to a failure of a hard disk in a first RAID array, the process calculates an amount of free capacity available across a set of remaining hard disks in the first RAID array. The set of remaining hard disks comprises every hard disk associated with the first RAID array except the failed disk. In response to a determination that the amount of free capacity is sufficient to re-create the first RAID array at a same RAID level, the process reconstructs the first RAID array using an amount of space in the set of remaining drives utilized by the first RAID array and the free capacity to form a new RAID array without utilizing a spare hard disk.

    摘要翻译: 用于管理独立驱动器的冗余阵列的计算机实现的方法,装置和计算机可用程序产品。 为了响应第一个RAID阵列中的硬盘故障,该进程计算第一个RAID阵列中的一组剩余硬盘可用的可用容量。 该组剩余的硬盘包括除故障磁盘之外与第一个RAID阵列相关联的每个硬盘。 响应于确定可用容量的量足以在相同的RAID级别重新创建第一RAID阵列,该过程使用第一RAID使用的剩余驱动器集合中的空间量来重构第一RAID阵列 阵列和可用容量,以形成新的RAID阵列,而不使用备用硬盘。

    Data integrity validation in storage systems
    16.
    发明授权
    Data integrity validation in storage systems 失效
    存储系统中的数据完整性验证

    公开(公告)号:US08006126B2

    公开(公告)日:2011-08-23

    申请号:US12777446

    申请日:2010-05-11

    IPC分类号: G06F11/00

    摘要: Data validation systems and methods are provided. Data is recorded in N data chunks on one or more storage mediums. A first validation chunk independently associated with said N data chunks comprises first validation information for verifying accuracy of data recorded in said N data chunks. The first validation chunk is associated with a first validation appendix comprising second validation information, wherein the first validation appendix is stored on a first storage medium independent of said one or more storage mediums.

    摘要翻译: 提供数据验证系统和方法。 数据记录在一个或多个存储介质上的N个数据块中。 独立地与所述N个数据块相关联的第一验证块包括用于验证记录在所述N个数据块中的数据的精度的第一验证信息。 第一验证块与包括第二验证信息的第一验证附录相关联,其中第一验证附录存储在独立于所述一个或多个存储介质的第一存储介质上。

    System and method for packing heat producing devices in an array to
prevent local overheating
    17.
    发明授权
    System and method for packing heat producing devices in an array to prevent local overheating 失效
    用于在阵列中包装发热装置以防止局部过热的系统和方法

    公开(公告)号:US5530658A

    公开(公告)日:1996-06-25

    申请号:US350923

    申请日:1994-12-07

    摘要: A configuration management subsystem of a subsystem array system assigns heat producing devices to clusters such that the number of devices activated will not create overheating, regardless of which limited set of clusters is activated. The subsystem receives the dimensions of the disk array, the number of devices, the number of cluster groups and the maximum number of clusters that can be operated substantially simultaneously, and the dimensions of a critical box that defines an arrangement of the devices into cells such that, if a device is assigned to each cell of the critical box and all devices are operated simultaneously, then thermal operating restrictions of the devices will be exceeded. The system first executes simple numbering loop operations to determine, if they exist, dimensions of a building block subarray that meet certain requirements relative to the input parameters. Using this building block subarray, the system then executes other simple numbering loop operations in which number labels are assigned to the disk devices (representing assignment of devices to disjoint clusters) such that if the maximum number of clusters are operating simultaneously, in every critical box subarray at least one device will not be operated.

    摘要翻译: 子系统阵列系统的配置管理子系统将发热设备分配给群集,使得激活的设备的数量不会产生过热,而不管哪个有限的集群被激活。 子系统接收磁盘阵列的维度,设备数量,群集组数量和可以基本同时运行的群集的最大数量,以及将设备排列为单元格的关键框的尺寸,如 如果将设备分配给关键盒的每个单元,并且所有设备都同时运行,则会超出设备的热操作限制。 系统首先执行简单的编号循环操作以确定(如果存在)操作符合相对于输入参数的某些要求的构建块子阵列的维度。 使用该构建块子阵列,系统然后执行其他简单的编号循环操作,其中将数字标签分配给磁盘设备(表示将设备分配给不相交的集群),使得如果最大数量的集群同时运行,则在每个关键框中 至少一个设备的子阵列将不被操作。

    Prefetching tracks using multiple caches
    19.
    发明授权
    Prefetching tracks using multiple caches 有权
    使用多个缓存预取轨道

    公开(公告)号:US08762650B2

    公开(公告)日:2014-06-24

    申请号:US13480255

    申请日:2012-05-24

    IPC分类号: G06F13/28 G06F12/12

    CPC分类号: G06F12/12 G06F12/0862

    摘要: Provided are a computer program product, sequential access storage device, and method for managing data in a sequential access storage device receiving read requests and write requests from a system with respect to tracks stored in a sequential access storage medium. A prefetch request indicates prefetch tracks in the sequential access storage medium to read from the sequential access storage medium. The accessed prefetch tracks are cached in a non-volatile storage device integrated with the sequential access storage device, wherein the non-volatile storage device is a faster access device than the sequential access storage medium. A read request is received for the prefetch tracks following the caching of the prefetch tracks, wherein the prefetch request is designated to be processed at a lower priority than the read request with respect to the sequential access storage medium. The prefetch tracks are returned from the non-volatile storage device to the read request.

    摘要翻译: 提供了一种计算机程序产品,顺序访问存储设备和用于管理顺序访问存储设备中的数据的方法,该顺序访问存储设备接收关于存储在顺序访问存储介质中的轨道的系统的读取请求和写入请求。 预取请求指示顺序访问存储介质中的预取轨迹,以从顺序访问存储介质读取。 所访问的预取轨道被缓存在与顺序存取存储设备集成的非易失性存储设备中,其中非易失性存储设备是比顺序访问存储介质更快的访问设备。 在预取磁道的缓存之后,为预取磁道接收读取请求,其中,预取请求被指定为以相对于顺序访问存储介质的读请求低的优先级来处理。 预取轨迹从非易失性存储设备返回到读取请求。

    Prefetching tracks using multiple caches

    公开(公告)号:US08650354B2

    公开(公告)日:2014-02-11

    申请号:US13189271

    申请日:2011-07-22

    IPC分类号: G06F13/10

    CPC分类号: G06F12/12 G06F12/0862

    摘要: Provided are a computer program product, sequential access storage device, and method for managing data in a sequential access storage device receiving read requests and write requests from a system with respect to tracks stored in a sequential access storage medium. A prefetch request indicates prefetch tracks in the sequential access storage medium to read from the sequential access storage medium. The accessed prefetch tracks are cached in a non-volatile storage device integrated with the sequential access storage device, wherein the non-volatile storage device is a faster access device than the sequential access storage medium. A read request is received for the prefetch tracks following the caching of the prefetch tracks, wherein the prefetch request is designated to be processed at a lower priority than the read request with respect to the sequential access storage medium. The prefetch tracks are returned from the non-volatile storage device to the read request.