×

Decoupled data stream and access structures

  • US 7,930,559 B1
  • Filed: 06/30/2006
  • Issued: 04/19/2011
  • Est. Priority Date: 06/30/2006
  • Status: Active Grant
First Claim
Patent Images

1. A method of storing data comprising:

  • receiving a plurality of data portions and a corresponding token for each of the data portions, wherein each of said plurality of data portions is stored by one of a plurality of processes, each token having a corresponding token value;

    storing, by said plurality of processes, each of the data portions to storage locations on devices included in a storage pool of a plurality of devices, wherein each of the plurality of processes is allocated a portion of the plurality of storage devices of the storage pool for exclusive use by said each process;

    writing an entry in a log file in accordance with said storing of each data portion by one of the plurality of processes, said log file being a private log file of said one of the plurality processes, wherein said private log file contains a plurality of entries recording write operations performed only by said one process, each entry in said private log file corresponding to one of the write operations and a different point in time at which said one process performs said one write operation and stores one of the data portions on one of the plurality of devices allocated for exclusive use by said one process;

    updating an access structure used to access stored data portions in the storage pool, wherein the access structure is indexed by token values of the stored data portions, said updating being performed in accordance with log entries from private log files of the plurality of processes, said access structure including an entry corresponding to each unique data portion stored in the storage pool, the entry including a field identifying a location in the storage pool at which said each unique data portion is stored;

    wherein the access structure is partitioned into “

    M”

    index structure portions, each of said M index structure portions being associated with a range of token values for data portions, and wherein each of said plurality of processes has “

    M”

    private log files, one corresponding to each index structure portion; and

    wherein a first of said “

    M”

    private log files corresponding to a first of said M index structure portions contains a record of write operations performed only by said each process for writing data portions having token values included in the range of token values associated with said first index structure portion, each entry in one of said “

    M”

    private log files corresponding to a different point in time at which said each process stores one of the data portions on one of the plurality of devices allocated for exclusive use by said each process.

View all claims
  • 10 Assignments
Timeline View
Assignment View
    ×
    ×