Abstract: Technologies are provided to ensure integrity of erasure coded data that is subject to read and write access from distributed processes. Multiple processes that access erasure coded data can be coordinated in an efficient, scalable and fault-tolerant manner so that integrity of the original data is maintained. The Technologies include a fault-tolerant access coordination protocol that ensures exclusive write access by a client. The coordination protocol achieves scalability by not relying on centralized components, and achieves efficiency and performance by piggy-packing access coordination messages on operations of the underlying erasure coding protocol.
Type:
Grant
Filed:
October 2, 2020
Date of Patent:
February 14, 2023
Assignee:
Quobyte Inc.
Inventors:
Felix Hupfeld, Felix Langner, Robert Döbbelin
Abstract: Systems and methods are provided for fault-tolerant file replication. A request including an operation and a file identifier is received. It is determined if the operation is of a predetermined type of operations. If the operation is of a predetermined type of operation, a target local replica file is identified. It is determined whether the target local replica file is a primary replica. If the target local replica file is the primary replica, the operation included in the request is executed. Otherwise, one or more of the set of storage devices on which remote replica files associated with the file identifier are stored are identified. In turn, the remote replica file that is the primary replica is identified. The request is transmitted to storage device on which the identified remote replica file that is the primary replica is stored.
Abstract: Systems and methods are provided for fault-tolerant file replication. A request including an operation and a file identifier is received. It is determined if the operation is of a predetermined type of operations. If the operation is of a predetermined type of operation, a target local replica file is identified. It is determined whether the target local replica file is a primary replica. If the target local replica file is the primary replica, the operation included in the request is executed. Otherwise, one or more of the set of storage devices on which remote replica files associated with the file identifier are stored are identified. In turn, the remote replica file that is the primary replica is identified. The request is transmitted to storage device on which the identified remote replica file that is the primary replica is stored.