Multi-level parallelism of process execution in a mutual exclusion domain of a processing system
    541.
    发明授权
    Multi-level parallelism of process execution in a mutual exclusion domain of a processing system 有权
    处理系统的互斥域中的进程执行的多级并行性

    公开(公告)号:US08627331B1

    公开(公告)日:2014-01-07

    申请号:US12771988

    申请日:2010-04-30

    Abstract: A technique is described for improving throughput in a processing system, such as a network storage server. The technique provides multiple levels (e.g., a hierarchy) of parallelism of process execution within a single mutual exclusion domain, in a manner which allows certain operations on metadata to be parallelized as well as certain operations on user data. The specific parallelization scheme used in any given embodiment is based at least partly on the underlying metadata structures used by the processing system. Consequently, a high degree of parallelization possible, which improves the throughput of the processing system.

    Abstract translation: 描述了一种用于提高诸如网络存储服务器的处理系统中的吞吐量的技术。 该技术以允许对元数据进行某些操作并行化以及对用户数据的某些操作的方式在单个互斥域内提供过程执行的并行性的多个级别(例如,层级)。 在任何给定实施例中使用的特定并行化方案至少部分地基于处理系统使用的底层元数据结构。 因此,可以进行高度并行化,这提高了处理系统的吞吐量。

    Storage and recovery of cryptographic key identifiers
    542.
    发明授权
    Storage and recovery of cryptographic key identifiers 有权
    加密密钥标识符的存储和恢复

    公开(公告)号:US08621241B1

    公开(公告)日:2013-12-31

    申请号:US12109693

    申请日:2008-04-25

    Inventor: David Stephenson

    CPC classification number: G06F12/1408 G06F12/14 H04L29/06 H04L63/04 H04L67/28

    Abstract: Example embodiments provide various techniques for storing and recovering a cryptographic key identifier that may be used to recover encrypted data. The cryptographic key identifier may be stored with the encrypted data itself. In an example, the cryptographic key identifier may be stored in particular blocks on a logical disk that are specifically designated to store the cryptographic key identifier. To store the cryptographic key identifiers in the designated blocks, the data within the blocks is compressed to fit the cryptographic key identifiers within the blocks. This cryptographic key identifier can be recovered at a later time by locating the designated blocks and retrieving the cryptographic key identifier from the blocks.

    Abstract translation: 示例性实施例提供了用于存储和恢复可用于恢复加密数据的加密密钥标识符的各种技术。 加密密钥标识符可以与加密数据本身一起存储。 在一个示例中,密码密钥标识符可以被存储在专门指定用于存储加密密钥标识符的逻辑盘上的特定块中。 为了将加密密钥标识符存储在指定的块中,块内的数据被压缩以适应块内的加密密钥标识符。 可以在稍后时间通过定位指定块并从块中检索加密密钥标识符来恢复该加密密钥标识符。

    Effective scheduling of producer-consumer processes in a multi-processor system
    543.
    发明授权
    Effective scheduling of producer-consumer processes in a multi-processor system 有权
    在多处理器系统中有效地调度生产者 - 消费者流程

    公开(公告)号:US08621184B1

    公开(公告)日:2013-12-31

    申请号:US12262338

    申请日:2008-10-31

    Abstract: A novel technique for improving throughput in a multi-core system in which data is processed according to a producer-consumer relationship by eliminating latencies caused by compulsory cache misses. The producer and consumer entities run as multiple slices of execution. Each such slice has an associated execution context that comprises of the code and data that particular slice would access. The execution contexts of the producer and consumer slices are small enough to fit in the processor caches simultaneously. When a producer entity scheduled on a first core completed production of data elements as constrained by the size of cache memories, a consumer entity is scheduled on that same core to consume the produced data elements. Meanwhile, a second slice of the producer entity is moved to another core and a second slice of a consumer entity is scheduled to consume elements produced by the second slice of the producer.

    Abstract translation: 一种用于提高多核系统中吞吐量的新技术,其中通过消除由强制高速缓存未命中引起的延迟,根据生产者 - 消费者关系处理数据。 生产者和消费者实体作为多个执行片段运行。 每个这样的片具有相关联的执行上下文,其包括特定切片将访问的代码和数据。 生产者和消费者片段的执行上下文足够小以同时适应处理器高速缓存。 当调度在第一核心上的生产者实体完成数据元素的生产受到高速缓冲存储器大小的约束时,消费者实体被调度在同一个核心上以消耗生成的数据元素。 同时,生成器实体的第二片段被移动到另一个核心,消费者实体的第二片段被调度为消耗由生成器的第二片段产生的元素。

    Concurrent content management and wear optimization for a non-volatile solid-state cache

    公开(公告)号:US08621145B1

    公开(公告)日:2013-12-31

    申请号:US12697129

    申请日:2010-01-29

    CPC classification number: G06F12/12 G06F12/0246 G06F2212/222 G06F2212/7211

    Abstract: Described is a technique for managing the content of a nonvolatile solid-state memory data cache to improve cache performance while at the same time, and in a complementary manner, providing for automatic wear leveling. A modified circular first-in first-out (FIFO) log/algorithm is generally used to determine cache content replacement. The algorithm is used as the default mechanism for determining cache content to be replaced when the cache is full but is subject to modification in some instances. In particular, data are categorized according to different data classes prior to being written to the cache, based on usage. Once cached, data belonging to certain classes are treated differently than the circular FIFO replacement algorithm would dictate. Further, data belonging to each class are localized to designated regions within the cache.

    Modeler for predicting storage metrics
    545.
    发明授权
    Modeler for predicting storage metrics 有权
    用于预测存储指标的建模器

    公开(公告)号:US08620921B1

    公开(公告)日:2013-12-31

    申请号:US13016892

    申请日:2011-01-28

    CPC classification number: G06N99/005 G06F11/3409 G06F17/30294 G06F17/30587

    Abstract: Described herein is a system and method for dynamically managing service-level objectives (SLOs) for workloads of a cluster storage system. Proposed states/solutions of the cluster may be produced and evaluated to select one that achieves the SLOs for each workload. A planner engine may produce a state tree comprising nodes, each node representing a proposed state/solution. New nodes may be added to the state tree based on new solution types that are permitted, or nodes may be removed based on a received time constraint for executing a proposed solution or a client certification of a solution. The planner engine may call an evaluation engine to evaluate proposed states, the evaluation engine using an evaluation function that considers SLO, cost, and optimization goal characteristics to produce a single evaluation value for each proposed state. The planner engine may call a modeler engine that is trained using machine learning techniques.

    Abstract translation: 这里描述了用于动态管理用于集群存储系统的工作负载的服务级目标(SLO)的系统和方法。 可以生成和评估集群的建议状态/解决方案,以选择为每个工作负载实现SLO的状态/解决方案。 计划器引擎可以产生包括节点的状态树,每个节点表示提出的状态/解。 可以基于允许的新解决方案类型将新节点添加到状态树,或者可以基于接收到的时间约束来移除节点,以执行解决方案或解决方案的客户端认证。 计划器引擎可以调用评估引擎来评估提出的状态,评估引擎使用考虑SLO,成本和优化目标特征的评估函数,以产生每个建议状态的单个评估值。 计划器引擎可以调用使用机器学习技术训练的建模者引擎。

    Application recovery from network-induced data corruption
    546.
    发明授权
    Application recovery from network-induced data corruption 有权
    应用程序从网络引发的数据损坏中恢复

    公开(公告)号:US08620874B1

    公开(公告)日:2013-12-31

    申请号:US13164558

    申请日:2011-06-20

    CPC classification number: G06F11/08 H04L1/1809

    Abstract: A source application reads a body of data in data block sized units and calculates a checksum value for each data block before sending the data block, the calculated checksum value and the identifier. Upon receipt, a destination application independently calculates a checksum value for each received data block and compares the two checksums. Non-matching checksums indicate a network-induced error in the data block. Identifiers for the erroneous data blocks are transmitted to the source application after all of the data blocks have been initially transmitted. The source application thereafter resends only those data blocks identified. The destination application repeats the process of comparing checksums and transmitting identifiers to the source application until all of the data blocks of the body of data have been correctly received, and then uses the data blocks to recreate the body of data.

    Abstract translation: 源应用程序以数据块大小的单位读取数据体,并在发送数据块,计算的校验和值和标识符之前计算每个数据块的校验和值。 一旦接收到,目的地应用程序独立地计算每个接收的数据块的校验和值并比较两个校验和。 非匹配校验和表示数据块中的网络引起的错误。 在所有的数据块都被最初传输之后,错误数据块的标识符被传送到源应用程序。 之后的源应用程序仅重新发送所识别的那些数据块。 目的地应用程序重复将校验和和发送标识符与源应用程序进行比较的过程,直到正确接收到数据体的所有数据块,然后使用数据块重新创建数据体。

    Method and system for path selection in a network
    547.
    发明授权
    Method and system for path selection in a network 有权
    网络中路径选择的方法和系统

    公开(公告)号:US08619555B2

    公开(公告)日:2013-12-31

    申请号:US12948498

    申请日:2010-11-17

    Abstract: Method and system for handling error events on a current path for processing an I/O request for reading information from and writing information to a storage space is provided. A system is able to communicate with the storage space via more than one path. If the current path reports an error event, then an alternate path quality is determined to ascertain whether the alternate path will generate an error similar to the current path. The alternate path quality is determined based on a plurality of factors which are assigned certain weights. The weights are determined based on a likely contribution of each factor to a repetition of the error reported by the current path. If the alternate path quality is equal to or exceeds a programmable threshold value, then the alternate path is selected.

    Abstract translation: 提供了用于处理当前路径上的错误事件以处理从存储空间读取信息并将信息写入存储空间的I / O请求的方法和系统。 系统能够通过多个路径与存储空间进行通信。 如果当前路径报告错误事件,则确定替代路径质量以确定备用路径是否将生成类似于当前路径的错误。 基于被分配了某些权重的多个因素确定备用路径质量。 基于每个因素对当前路径报告的错误的重复的可能贡献来确定权重。 如果备用路径质量等于或超过可编程阈值,则选择备用路径。

    Creating logical disk drives for raid subsystems
    548.
    发明授权
    Creating logical disk drives for raid subsystems 有权
    为raid子系统创建逻辑磁盘驱动器

    公开(公告)号:US08612678B2

    公开(公告)日:2013-12-17

    申请号:US12112686

    申请日:2008-04-30

    Abstract: A computer storage system includes multiple disk trays, each disk tray holding two or more physical disks. The disks on a single tray are virtualized into a single logical disk. The single logical disk reports to the RAID (redundant array of inexpensive disks) subsystem, creating the impression that there is one large capacity disk. In one implementation, each disk in the tray is allocated to a different RAID group. By allocating the disks in a tray to different RAID groups, if the tray is removed, only a portion of several different RAID groups are removed. This arrangement permits a simple reconstruction of the RAID groups if a disk tray is removed from the system.

    Abstract translation: 计算机存储系统包括多个盘托盘,每个托盘盘托有两个或多个物理盘。 单个托盘上的磁盘虚拟化为单个逻辑磁盘。 单个逻辑磁盘向RAID(廉价磁盘的冗余阵列)子系统报告,从而产生一个大容量磁盘的印象。 在一个实现中,托盘中的每个磁盘分配给不同的RAID组。 通过将托盘中的磁盘分配到不同的RAID组,如果托盘被移除,则只会删除几个不同RAID组的一部分。 如果磁盘托盘从系统中移除,则这种布置允许对RAID组进行简单重建。

    MANAGING AN ABSTRACTION OF MULTIPLE LOGICAL DATA STORAGE CONTAINERS
    549.
    发明申请
    MANAGING AN ABSTRACTION OF MULTIPLE LOGICAL DATA STORAGE CONTAINERS 有权
    管理多个逻辑数据存储容器的摘要

    公开(公告)号:US20130332694A1

    公开(公告)日:2013-12-12

    申请号:US13490925

    申请日:2012-06-07

    Inventor: Michael Reissner

    Abstract: Various systems and methods are described for configuring a logical data storage container. In one embodiment, an instruction to perform an operation to modify an attribute of the logical data storage container that is an abstraction of a plurality of pertinent storage containers is received. A translated instruction to perform a sub-operation associated with the operation is transmitted to each of a number of the plurality of pertinent storage containers. A level of success of the performing of the operation on the logical data storage container is detected based on a comparison of a threshold value to a level of success of the performing of the sub-operation on each of the number of the plurality of pertinent storage containers. A report of the detected level of success is communicated.

    Abstract translation: 描述了用于配置逻辑数据存储容器的各种系统和方法。 在一个实施例中,接收执行修改作为多个相关存储容器的抽象的逻辑数据存储容器的属性的操作的指令。 用于执行与操作相关联的子操作的转换指令被发送到多个相关存储容器中的每一个。 基于对多个相关存储器中的每一个的每个数量的阈值进行子操作的成功的级别的比较来检测对逻辑数据存储容器执行操作的成功程度 容器 传达了检测到的成功水平的报告。

    Deduplication in an extent-based architecture
    550.
    发明授权
    Deduplication in an extent-based architecture 有权
    基于范围的架构中的重复数据删除

    公开(公告)号:US08600949B2

    公开(公告)日:2013-12-03

    申请号:US13165631

    申请日:2011-06-21

    CPC classification number: G06F17/30156 G06F3/0608 G06F3/0641

    Abstract: A request is received to remove duplicate data. A log data container associated with a storage volume in a storage server is accessed. The log data container includes a plurality of entries. Each entry is identified by an extent identifier in a data structures stored in a volume associated with the storage server. For each entry in the log data container, a determination is made if the entry matches another entry in the log data container. If the entry matches another entry in the log data container, a determination is made of a donor extent and a recipient extent. If an external reference count associated with the recipient extent equals a first predetermined value, block sharing is performed for the donor extent and the recipient extent. A determination is made if the reference count of the donor extent equals a second predetermined value. If the reference count of the donor extent equals the second predetermined value, the donor extent is freed.

    Abstract translation: 收到请求以删除重复的数据。 访问与存储服务器中的存储卷相关联的日志数据容器。 日志数据容器包括多个条目。 每个条目由存储在与存储服务器相关联的卷中的数据结构中的盘区标识符标识。 对于日志数据容器中的每个条目,确定条目是否匹配日志数据容器中的另一个条目。 如果条目与日志数据容器中的另一个条目匹配,则确定捐赠者范围和受众范围。 如果与接收者范围相关联的外部参考计数等于第一预定值,则对捐赠者范围和接受者范围执行块共享。 如果供体范围的参考计数等于第二预定值,则确定。 如果供体范围的参考计数等于第二预定值,则供体范围被释放。

Patent Agency Ranking