Reservation persistence in distributed block storage systems

    公开(公告)号:US12271638B1

    公开(公告)日:2025-04-08

    申请号:US18414210

    申请日:2024-01-16

    Abstract: A storage object and an associated permissions record is stored at a storage server. The permissions record indicates that some storage consumers are not permitted to perform a type of I/O operation on the storage object. In response to detecting that an event of a deletion triggering type with respect to the records, a modified version of the permissions record is stored at the server, indicating that the storage consumers remain prohibited from performing the I/O operations. In response to receiving a command to perform a particular I/O at the server after the modified version has been stored, the modified version is used to process the command.

    Enhancing i/o performance using in-memory reservation state caching at block storage services

    公开(公告)号:US12216592B1

    公开(公告)日:2025-02-04

    申请号:US18478349

    申请日:2023-09-29

    Abstract: A thread of a storage server determines that a command to modify a reservation record which comprises access permissions of an object stored at the server has been received. A version of the record is stored in an in-memory cache. The thread acquires a first lock associated with the record in exclusive mode, and a second lock in shared mode. The thread reads the cached version, constructs a modified version indicated in the command, and releases the second lock without updating the cache. After entries representing the modified version are stored in an operations journal, the thread acquires the second lock in exclusive mode and updates the cache. The thread then releases both locks. An indication that the command has succeeded is provided without verifying that the second version is stored at a metadata store.

    Shared Volumes in Distributed RAID over Shared Multi-Queue Storage Devices

    公开(公告)号:US20200311046A1

    公开(公告)日:2020-10-01

    申请号:US16900607

    申请日:2020-06-12

    Abstract: A method for data storage, in a system that includes multiple servers, multiple multi-queue storage devices and at least one storage controller that communicate over a network, includes receiving in a server, from an application running on the server, a request to access data belonging to one or more stripes. The stripes are stored on the storage devices and are shared with one or more other servers. In response to the request, the following are performed at least partially in parallel: (i) requesting one or more global locks that prevent the other servers from accessing the stripes, and (ii) reading at least part of the stripes from the storage devices speculatively, irrespective of whether the global locks are granted. Execution of the request is completed upon verifying that the speculatively-read data is valid.

    Shared volumes in distributed RAID over shared multi-queue storage devices

    公开(公告)号:US11455289B2

    公开(公告)日:2022-09-27

    申请号:US16900607

    申请日:2020-06-12

    Abstract: A method for data storage, in a system that includes multiple servers, multiple multi-queue storage devices and at least one storage controller that communicate over a network, includes receiving in a server, from an application running on the server, a request to access data belonging to one or more stripes. The stripes are stored on the storage devices and are shared with one or more other servers. In response to the request, the following are performed at least partially in parallel: (i) requesting one or more global locks that prevent the other servers from accessing the stripes, and (ii) reading at least part of the stripes from the storage devices speculatively, irrespective of whether the global locks are granted. Execution of the request is completed upon verifying that the speculatively-read data is valid.

    Shared volumes in distributed RAID over shared multi-queue storage devices

    公开(公告)号:US10685010B2

    公开(公告)日:2020-06-16

    申请号:US16120263

    申请日:2018-09-02

    Abstract: A method for data storage, in a system that includes multiple servers, multiple multi-queue storage devices and at least one storage controller that communicate over a network, includes receiving in a server, from an application running on the server, a request to access data belonging to one or more stripes. The stripes are stored on the storage devices and are shared with one or more other servers. In response to the request, the following are performed at least partially in parallel: (i) requesting one or more global locks that prevent the other servers from accessing the stripes, and (ii) reading at least part of the stripes from the storage devices speculatively, irrespective of whether the global locks are granted. Execution of the request is completed upon verifying that the speculatively-read data is valid.

Patent Agency Ranking