Staging of write operations for container-based storage for sequential media
First Claim
1. A computer-implemented method, comprising:
- encoding a data object into a plurality of encoded data fragments, each encoded data fragment being of a common fragment format and being a common data fragment size;
grouping a set of encoded data fragments into a container object in a sequential order, each encoded data fragment being the common data fragment size, and the container object being a specific predetermined container object size;
tracking, in a sequential transaction log, the sequential order of the set of encoded data fragments in the container object, wherein a location of any specific one of the set of encoded data fragments in the container object is a function of a position of the specific data fragment in the tracked sequential order and the common data fragment size;
transmitting the container object to a backend of a distributed encoded data storage system, wherein the container object is stored directly on a specific backend storage element;
in response to transmitting the container object, receiving a container object identifier corresponding to the container object, from the backend of the distributed encoded data storage system, wherein the container object identifier identifies a physical storage location of the container object on the specific backend storage element; and
tracking the received container object identifier in the sequential transaction log, wherein a physical location on the specific backend storage element of any specific one of the set of encoded data fragments in the container object is a function of a position of the specific data fragment in the tracked sequential order, the common data fragment size, and the physical storage location of the container object on the specific backend storage element as identified by the tracked container object identifier.
7 Assignments
0 Petitions
Accused Products
Abstract
A set of encoded data fragments is grouped into a container object in sequential order. Each encoded data fragment is a specific fragment size, and the container object is a specific container object size. The sequential order of the set of encoded data fragments can be tracked in a log in memory, such that the location of any one of the data fragments in the container object can be determined. The container object can be stored directly on a specific backend storage element, without using a file system. A corresponding container object identifier identifies the physical storage location of the container object on the backend storage element. The container object identifier is tracked in the log in memory, such that the physical location on the backend storage element of any specific one of the set of encoded data fragments in the container object can be determined.
-
Citations
20 Claims
-
1. A computer-implemented method, comprising:
-
encoding a data object into a plurality of encoded data fragments, each encoded data fragment being of a common fragment format and being a common data fragment size; grouping a set of encoded data fragments into a container object in a sequential order, each encoded data fragment being the common data fragment size, and the container object being a specific predetermined container object size; tracking, in a sequential transaction log, the sequential order of the set of encoded data fragments in the container object, wherein a location of any specific one of the set of encoded data fragments in the container object is a function of a position of the specific data fragment in the tracked sequential order and the common data fragment size; transmitting the container object to a backend of a distributed encoded data storage system, wherein the container object is stored directly on a specific backend storage element; in response to transmitting the container object, receiving a container object identifier corresponding to the container object, from the backend of the distributed encoded data storage system, wherein the container object identifier identifies a physical storage location of the container object on the specific backend storage element; and tracking the received container object identifier in the sequential transaction log, wherein a physical location on the specific backend storage element of any specific one of the set of encoded data fragments in the container object is a function of a position of the specific data fragment in the tracked sequential order, the common data fragment size, and the physical storage location of the container object on the specific backend storage element as identified by the tracked container object identifier. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A computer system comprising:
-
a processor; system memory; a plurality of electromechanical backend storage elements; instructions in the system memory programmed to encode a data object into a plurality of encoded data fragments, each encoded data fragment being of a common fragment format and being a common data fragment size; instructions in the system memory programmed to group a set of encoded data fragments into a container object in a sequential order, each encoded data fragment being the common data fragment size, and the container object being a specific predetermined container object size; instructions in the system memory programmed to track, in a sequential transaction log, the sequential order of the set of encoded data fragments in the container object, wherein a location of any specific one of the set of encoded data fragments in the container object is a function of a position of the specific data fragment in the tracked sequential order and the common data fragment size; instructions in the system memory programmed to transmit the container object to a backend of a distributed encoded data storage system, wherein the container object is stored directly on a specific backend storage element without using a file system; instructions in the system memory programmed to receive a container object identifier corresponding to the container object, from the backend of the distributed encoded data storage system, in response to transmitting the container object, wherein the container object identifier identifies a physical storage location of the container object on the specific backend storage element; and instructions in the system memory programmed to track the received container object identifier in the sequential transaction log in system memory, wherein a physical location on the specific backend storage element of any specific one of the set of encoded data fragments in the container object is a function of a position of the specific data fragment in the tracked sequential order, the common data fragment size, and the physical storage location of the container object on the specific backend storage element as identified by the tracked object container object identifier. - View Dependent Claims (16, 17, 18, 19)
-
-
20. A computer system comprising:
-
means for encoding a data object into a plurality of encoded data fragments, each encoded data fragment being of a common fragment format and being a common data fragment size; means for grouping a set of encoded data fragments into a container object in a sequential order, each encoded data fragment being the common data fragment size, and the container object being a specific predetermined container object size; means for tracking, in a sequential transaction log, the sequential order of the set of encoded data fragments in the container object, wherein a location of any specific one of the set of encoded data fragments in the container object is a function of a position of the specific data fragment in the tracked sequential order and the common data fragment size; means for transmitting the container object to a backend of a distributed encoded data storage system, wherein the container object is stored directly on a specific backend storage element without using a file system; means for receiving a container object identifier corresponding to the container object, from the backend of the distributed encoded data storage system, in response to transmitting the container object, wherein the container object identifier identifies a physical storage location of the container object on the specific backend storage element; and means for tracking the received container object identifier in the sequential transaction log in system memory, wherein a physical location on the specific backend storage element of any specific one of the set of encoded data fragments in the container object is a function of a position of the specific data fragment in the tracked sequential order, the common data fragment size, and the physical storage location of the container object on the specific backend storage element as identified by the tracked container object identifier.
-
Specification