Atomic updates for a distributed system
AssigneeEverpure, Inc.
InventorsJOHN HAYES, BRIAN GOLD, SHANTANU GUPTA, ROBERT LEE, HARI KANNAN
Life of this patent
Estimating the term…
Abstract
A method for a transactional commit in a storage unit is provided. The method includes receiving a logical record from a storage node into a transaction engine of a storage unit of the storage node and writing the logical record into a data structure of the transaction engine. The method includes writing, to a command queue of the transaction engine, an indication to perform an atomic update using the logical record and transferring each portion of the logical record from the data structure of the transaction engine to non-persistent memory of the storage unit as a committed transaction. A storage unit for a storage system is also provided.
Claims20
A method, comprising:
- storing data corresponding to a logical record in a first data structure in a non-persistent memory of a storage system;
- storing, in a second data structure, an indication corresponding to completion of the logical record;
- identifying a first boundary associated with a previously completed logical record and a second boundary associated with the logical record based on the indication;
- and in response to the indication, transferring data between the first boundary and the second boundary from the first data structure to memory as a single atomic update.
A storage system comprising:
- a first component configured to:
- store data corresponding to a logical record in memory;
- and
- store an indication corresponding to completion of the logical record;
- and
- a second component configured to:
- detect the indication;
- and
- in response to detecting the indication, transfer the logical record within the memory as an atomic update, wherein the transfer is performed independently of further action by the first component.
A non-transitory computer readable storage medium storing instructions which, when executed, cause a processing device to:
- store data corresponding to a logical record in a first data structure in a non-persistent memory of a storage system;
- store, in a second data structure, an indication corresponding to completion of the logical record;
- identify a first boundary associated with a previously completed logical record and a second boundary associated with the logical record based on the indication;
- and in response to the indication, transferring data between the first boundary and the second boundary from the first data structure to memory as a single atomic update.
Dependencies are inferred from the claim text.