SCALABLE BLOB STORAGE INTEGRATED WITH SCALABLE STRUCTURED STORAGE
First Claim
1. One or more computer storage media having a data structure embodied thereon for structured storage of one or more Binary Large Objects (Blobs) to be accessed by an application program being executed by a computing device, comprising:
- a primary structured storage index for indexing the one or more Blobs in a structured storage system;
a secondary hash index for maintaining a hash index that facilitates efficient lookup of a Blob primary key, wherein the secondary hash index includes one or more primary keys associated with the one or more Blobs; and
a Blob store for storing the one or more Blobs indexed by the primary structured storage index.
2 Assignments
0 Petitions
Accused Products
Abstract
Embodiments of the present invention relate to systems, methods and computer storage media for facilitating the structured storage of binary large objects (Blobs) to be accessed by an application program being executed by a computing device. Generally, the structured storage of Blobs includes a primary structured storage index for indexing Blobs, a secondary hash index that is integrated into the structured storage system, a Blob log stream, and a Blob data stream for storing blocks that include the Blob data. In an embodiment, a block is created and written to a Blob store along with a block list. The block list facilitates the locating of one or more blocks that store the Blob data. In this embodiment, a primary structured storage index and a secondary hash index are updated to facilitate efficient access of the Blob in a structured storage system.
-
Citations
20 Claims
-
1. One or more computer storage media having a data structure embodied thereon for structured storage of one or more Binary Large Objects (Blobs) to be accessed by an application program being executed by a computing device, comprising:
-
a primary structured storage index for indexing the one or more Blobs in a structured storage system; a secondary hash index for maintaining a hash index that facilitates efficient lookup of a Blob primary key, wherein the secondary hash index includes one or more primary keys associated with the one or more Blobs; and a Blob store for storing the one or more Blobs indexed by the primary structured storage index. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. One or more computer storage media having computer-executable instructions embodied thereon for performing a method for writing a Binary Large Object (Blob) in a structured storage system to one or more computer storage media, the method comprising:
-
receiving the Blob; creating one or more blocks for storing the Blob; writing the one or more blocks into a Blob log stream; creating a Temporary Block List (TBL) that includes the one or more blocks; writing the TBL into the Blob log stream; updating a primary structured storage index to index the Blob in a structured storage system, wherein the Blob is indexed by one or more keys; and updating a secondary hash index for maintaining a secondary hash index of the primary structured storage index to facilitate an in memory mapping between the one or more keys and a pointer to the Blob. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
-
-
20. One or more computer storage media having a data structure embodied thereon for structured storage of one or more Binary Large Objects (Blobs) to be accessed by an application program being executed by a computing device, comprising:
-
a primary structured storage index for indexing the one or more Blobs in a structured storage system, wherein the primary structured storage index includes row data for each of the one or more Blobs; the row data includes metadata corresponding to each of the one or more Blobs and the row data includes a pointer corresponding to each of the one or more Blobs; a secondary hash index that is integrated into the structured storage system for maintaining a secondary hash index of the primary structured storage index, wherein the secondary hash index provides a single hash lookup for the one or more Blobs; a Blob log stream that includes one or more blocks for storing the one or more Blobs at least until the primary structured storage index is checkpointed; and a Blob data stream that includes the one or more blocks of the Blob log stream after the primary structured storage index is checkpointed.
-
Specification