会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
热词
    • 3. 发明授权
    • Apparatus and method for providing data redundancy and reconstruction
for redundant arrays of disk drives
    • 用于为磁盘驱动器的冗余阵列提供数据冗余和重建的装置和方法
    • US5671349A
    • 1997-09-23
    • US350743
    • 1994-12-06
    • Ebrahim HashemiMartin E. Schulze
    • Ebrahim HashemiMartin E. Schulze
    • G06F11/10G06F11/00
    • G06F11/1076G06F2211/1054
    • The present invention provides a system of hardware and software that combine to form a redundant array of disk drives. This array provides a double means of redundancy that can reconstruct data from two simultaneously failed disks. The double redundancy means is implemented by two separate algorithms, DRR1 and DRR2. DRR1 takes the exclusive-or of all the commercial data and stores the result as redundancy data. DRR2 is similar to the algorithm described in Patel's article. As an additional feature, the implementation of DRR1 and DRR2 in the present invention is flexible enough to support either on-the-fly or read-modify-write level operation. Although both algorithms are in the prior art, the present invention improves on the run-time and space requirements of the algorithm. This improvement arises because of a novel relationship, discussed below, that exist between the individual T.sup.1 matrices and their column vectors that allows for a savings in computing the mapping of the commercial data to the redundancy data. This unique relationship is incorporated into the present systems hardware and software.
    • 本发明提供一种硬件和软件系统,其组合以形成磁盘驱动器的冗余阵列。 该阵列提供了双重冗余的方式,可以从两个同时发生故障的磁盘重建数据。 双重冗余装置由两个独立的算法DRR1和DRR2来实现。 DRR1采用专有或所有商业数据,并将结果存储为冗余数据。 DRR2类似于Patel文章中描述的算法。 作为附加特征,本发明中DRR1和DRR2的实现是足够灵活的,以支持即时或读 - 修改 - 写入电平操作。 虽然这两种算法都在现有技术中,但本发明改进了算法的运行时间和空间要求。 这种改进是由于下面讨论的新颖的关系,存在于各个T1矩阵和它们的列向量之间,这允许节省将商业数据映射到冗余数据的映射。 这种独特的关系被并入现有的系统硬件和软件。
    • 4. 发明授权
    • Method and system for leveraging spares in a data storage system including a plurality of disk drives
    • 用于在包括多个磁盘驱动器的数据存储系统中利用备件的方法和系统
    • US06845465B2
    • 2005-01-18
    • US09955527
    • 2001-09-17
    • Ebrahim Hashemi
    • Ebrahim Hashemi
    • G06F11/00G06F11/10G06F11/20H04L1/22
    • G06F11/2094G06F11/1084G06F11/1662G06F11/2069G06F2211/1004
    • A method and apparatus for leveraging spare disks in a data storage system. Specifically the present invention describes a method for data recovery and redundancy in a data storage system having a plurality of disk drives. The data storage system is grouped into a plurality of arrays having data redundancy. The plurality of arrays is arranged in an optimum combination of arrays of mirrored pairs of disk drives, arrays of three disk drives in a redundant array of independent disks (RAID) configuration, and arrays of more than three disk drives in a RAID configuration to maximize performance while providing data redundancy. For every failure of one of said plurality of arrays due to a failed disk drive, a new array having data redundancy in a RAID configuration is dynamically created in said plurality of arrays. The new array is optimized for best performance and contains information from the failed disk drive.
    • 一种用于利用数据存储系统中的备用磁盘的方法和装置。 具体地说,本发明描述了一种具有多个磁盘驱动器的数据存储系统中的数据恢复和冗余的方法。 数据存储系统被分组成具有数据冗余的多个阵列。 多个阵列以镜像对磁盘驱动器阵列,独立磁盘(RAID)配置的冗余阵列中的三个磁盘驱动器阵列以及RAID配置中的三个以上磁盘驱动器的阵列的最佳组合进行排列,以使 同时提供数据冗余。 对于由于磁盘驱动器故障导致的所述多个阵列中的一个阵列的每个故障,在所述多个阵列中动态地创建具有RAID配置中的数据冗余的新阵列。 新阵列经过优化,以获得最佳性能,并包含故障磁盘驱动器的信息。
    • 5. 发明授权
    • Storage array having multiple erasure correction and sub-stripe writing
    • 具有多个擦除校正和子条纹写入的存储阵列
    • US06748488B2
    • 2004-06-08
    • US09966842
    • 2001-09-28
    • James ByrdEbrahim HashemiManuel CisnerosAlex UminoJohn Schell
    • James ByrdEbrahim HashemiManuel CisnerosAlex UminoJohn Schell
    • G06F1200
    • G06F11/1076G06F2211/1057G06F2211/1066
    • A data storage subsystem including an array of storage devices and a storage controller is disclosed. In one embodiment, the array of storage devices stores information in multiple stripes. Each stripe may include a plurality of data blocks and redundancy information in the form of plurality of redundancy blocks. The redundancy information may be generated using an nth order generator polynomial such as a Reed Solomon code. The storage controller may be configured to perform modified read/write stripe updates by: (a) reading original data from a subset of data blocks in a target stripe; (b) reading the original redundancy information for that stripe; (c) comparing the original data with the new data to determine a data difference; (d) calculating a redundancy difference from the data difference; (e) applying the redundancy difference to the original redundancy information to obtain updated redundancy information, (f) writing the new data and updated redundancy information to the target stripe. Multiple erasure correction is also contemplated.
    • 公开了一种包括存储设备阵列和存储控制器的数据存储子系统。 在一个实施例中,存储设备阵列存储多条信息。 每个条带可以包括多个数据块和多个冗余块形式的冗余信息。 可以使用诸如里德所罗门码的第n阶生成多项式来生成冗余信息。 存储控制器可以被配置为通过以下操作来执行修改的读/写条带更新:(a)从目标条带中的数据块的子集读取原始数据; (b)读取该条纹的原始冗余信息; (c)将原始数据与新数据进行比较以确定数据差异; (d)从所述数据差计算冗余差; (e)将冗余差应用于原始冗余信息以获得更新的冗余信息,(f)将新数据和更新的冗余信息写入目标条带。 还设想了多次擦除校正。
    • 6. 发明授权
    • Method and system for striping spares in a data storage system including an array of disk drives
    • 在包括磁盘驱动器阵列的数据存储系统中分割备件的方法和系统
    • US06934804B2
    • 2005-08-23
    • US10157333
    • 2002-05-28
    • Ebrahim Hashemi
    • Ebrahim Hashemi
    • G06F11/10G06F12/00G06F12/16
    • G06F11/1076G06F2211/1028
    • Method and apparatus for striping spare storage in a data storage system. Specifically the present invention describes a method and apparatus for storing data and spare storage in a data storage system having a plurality of physical storage devices. The plurality of physical storage devices is partitioned into a plurality of slices. Logical units of storage (LUNs) are created, wherein each LUN contains data, spare, and data redundancy. Each of the plurality of slices is assigned to one of the plurality of LUNs so as to distribute storage of data, data redundancy, and spare across all of the plurality of physical storage devices. Distribution of spare storage is concentrated at the inner zone of each of the plurality of physical storage devices. The data and spare storage can be distributed uniformly or with varying granularities across all of the plurality of physical storage devices.
    • 用于在数据存储系统中划分备用存储的方法和装置。 具体地,本发明描述了一种用于在具有多个物理存储设备的数据存储系统中存储数据和备用存储的方法和装置。 多个物理存储设备被分割成多个片。 创建逻辑单元(LUN),其中每个LUN包含数据,备用和数据冗余。 将多个切片中的每一个分配给多个LUN中的一个,以便分配所有多个物理存储设备中的数据,数据冗余和备用存储。 备用存储器的分配集中在多个物理存储设备中的每一个的内部区域。 可以在所有多个物理存储设备中均匀地或以不同的粒度分布数据和备用存储器。
    • 7. 发明授权
    • Load balancing configuration for storage arrays employing mirroring and striping
    • 使用镜像和条带的存储阵列的负载平衡配置
    • US06425052B1
    • 2002-07-23
    • US09429687
    • 1999-10-28
    • Ebrahim Hashemi
    • Ebrahim Hashemi
    • G06F1200
    • G06F11/1076G06F3/0601G06F11/2087G06F2003/0697G06F2211/1028
    • An array of storage devices may be provided in which data is both striped and mirrored across the array. Data may be organized in stripes in which each stripe is divided into a plurality of stripe units. The stripe units may be mapped sequentially to consecutive storage devices in the array for each data stripe. Each data stripe is also mirrored within the array as a mirrored data stripe. Each mirrored data stripe is also divided into a plurality of stripe units. The stripe units of the mirrored stripes are distributed throughout the array according to a mapping that provides for load balancing during a reconstruction operation. According to one embodiment, stripe units for mirrored stripes are distributed according to a rotational group such that each mirrored stripe is rotated on the array by one more position than the previous mirrored stripe and wherein the rotational group is repeated as necessary. Alternatively, the mirrored stripe units may be distributed according to other permutations to improve load balancing during reconstruction of a failed device. In other embodiments, in addition to mapping mirrored stripe units to balance read operations during reconstruction, one or more spare storage devices may be striped throughout the array to improve load balancing for write operations during reconstruction.
    • 可以提供一组阵列的存储设备,其中的数据都是跨数组进行条带化和镜像的。 数据可以以条带组织,其中每个条纹被分成多个条带单元。 条带单元可以被顺序地映射到阵列中的每个数据条带上的连续存储设备。 每个数据条带也作为镜像数据条带在阵列中进行镜像。 每个镜像数据条带也被划分成多个条带单元。 根据在重建操作期间提供负载平衡的映射,镜像条纹的条带单元分布在整个阵列中。 根据一个实施例,用于镜像条纹的条带单元根据旋转组分布,使得每个镜像条纹在阵列上比先前镜像条纹多一个位置旋转,并且其中根据需要重复旋转组。 或者,可以根据其他排列来分布镜像条带单元,以在重建故障设备期间改善负载平衡。 在其他实施例中,除了映射镜像条带单元以在重建期间平衡读取操作之外,一个或多个备用存储设备可以在整个阵列中被条带化,以改善重建期间的写入操作的负载平衡。
    • 9. 发明授权
    • Data storage array employing block verification information to invoke initialization procedures
    • 数据存储阵列采用块验证信息来调用初始化过程
    • US06981171B2
    • 2005-12-27
    • US09875241
    • 2001-06-05
    • Ebrahim Hashemi
    • Ebrahim Hashemi
    • G06F11/00G06F11/10
    • G06F11/1076
    • A data storage array employing block verification information to invoke initialization procedures. In one embodiment, a data storage subsystem includes a plurality of storage devices configured in an array and a storage controller coupled to the storage devices. The storage controller is configured to store data in the form of stripes where each stripe includes a plurality of data blocks stored across the plurality of storage devices. Each of the data blocks is associated with block verification information. Upon certain write operations, the storage controller is configured to initialize a given stripe in response to detecting a mismatch in the block verification information in at least one data block of the given stripe. In one particular implementation, the block verification contained in each of the data blocks includes a logical block address and/or a cyclic redundancy code.
    • 一种使用块验证信息来调用初始化过程的数据存储阵列。 在一个实施例中,数据存储子系统包括配置在阵列中的多个存储设备和耦合到存储设备的存储控制器。 存储控制器被配置为以条纹的形式存储数据,其中每个条带包括跨多个存储设备存储的多个数据块。 每个数据块与块验证信息相关联。 在某些写入操作时,存储控制器被配置为响应于检测给定条带的至少一个数据块中的块验证信息的不匹配而初始化给定条带。 在一个具体实现中,包含在每个数据块中的块验证包括逻辑块地址和/或循环冗余码。
    • 10. 发明授权
    • Methods for addressing extended number of peripheral devices over peripheral bus
    • 通过外设总线寻址扩展数量的外围设备的方法
    • US06708242B1
    • 2004-03-16
    • US09636038
    • 2000-08-09
    • Charles A. MoniaLawrence J. LamersEbrahim HashemiAndrew J. Roy
    • Charles A. MoniaLawrence J. LamersEbrahim HashemiAndrew J. Roy
    • G06F1300
    • G06F13/4226
    • The present invention provides methods for addressing an extended number of peripheral devices over a bus. A bus having an N-bit datapath is provided in a computer system. An extended address space is defined for a set of extended peripheral devices by assigning a bus ID to each extended peripheral device. Each bus ID includes a group ID and a group member ID. Each group ID and group member ID also indicates a priority of said associated device. One or more peripheral devices arbitrate for the bus. In this process, a peripheral device having the highest priority group ID and the highest priority group member ID among the arbitrating devices wins the arbitration. After arbitration, the winning device selects, for transferring data, a device by placing on the bus the bus IDs of the selecting and selected devices.
    • 本发明提供了用于通过总线寻址扩展数量的外围设备的方法。 在计算机系统中提供具有N位数据通路的总线。 通过为每个扩展的外围设备分配总线ID,为一组扩展的外围设备定义扩展地址空间。 每个总线ID包括组ID和组成员ID。 每个组ID和组成员ID还指示所述相关设备的优先级。 一个或多个外围设备仲裁总线。 在该处理中,仲裁装置中具有最高优先级组ID和优先级最高的组成员ID的外围设备获胜。 在仲裁之后,获胜装置通过在总线上放置选择和选择的装置的总线ID来选择用于传送数据的装置。