Block based access to a dispersed data storage network
First Claim
1. A method of writing data to a dispersed data network, said method operating on at least one computer and comprising the steps of:
- dividing a data segment of data into a plurality of data blocks, wherein data blocks of the plurality of data blocks have a fixed block size;
performing a data transformation on the plurality of data blocks to produce a plurality of transformed data blocks, wherein the data transformation includes calculating checksums for the plurality of data blocks and further includes one or more of encrypting the plurality of data blocks and compressing the plurality of data blocks;
performing a data dispersal algorithm on the plurality of transformed data blocks to produce a plurality of “
n”
number of data slices, wherein one of the plurality of blocks of data is encoded into one of the plurality of “
n”
number of data slices, and wherein data slices of the plurality of “
n”
number of data slices are grouped to produce “
n”
number of data slice groups;
transmitting write commands for at least “
m”
number of data slice groups to at least “
m”
number of slice servers of a plurality of slice servers, wherein “
m”
is less than “
n” and
represents a minimum number of data slices to recover the one of the plurality of blocks of data from the one of the plurality of “
n”
number of data slices; and
receiving verification of storage of the at least “
m”
number of data slice groups from the at least “
m”
number of slice servers.
4 Assignments
0 Petitions
Accused Products
Abstract
A computer includes a data transform algorithm, a data dispersal algorithm, and a network port. The data transform algorithm performs a data transformation on a data block to produce a transformed data block. The data dispersal algorithm performs a data dispersal function on the transformed data block to produce a plurality of data slices, wherein each of the plurality of data slices includes less than all data contained in the transformed data block. The network port is operable to transmit a plurality of write commands to a plurality of slice servers, wherein each of the plurality of write commands includes a corresponding one of the plurality of data slices. The network port is further operable to receive verification of storage of at least some of the plurality of data slices from at least some of the plurality of slice servers.
21 Citations
6 Claims
-
1. A method of writing data to a dispersed data network, said method operating on at least one computer and comprising the steps of:
-
dividing a data segment of data into a plurality of data blocks, wherein data blocks of the plurality of data blocks have a fixed block size; performing a data transformation on the plurality of data blocks to produce a plurality of transformed data blocks, wherein the data transformation includes calculating checksums for the plurality of data blocks and further includes one or more of encrypting the plurality of data blocks and compressing the plurality of data blocks; performing a data dispersal algorithm on the plurality of transformed data blocks to produce a plurality of “
n”
number of data slices, wherein one of the plurality of blocks of data is encoded into one of the plurality of “
n”
number of data slices, and wherein data slices of the plurality of “
n”
number of data slices are grouped to produce “
n”
number of data slice groups;transmitting write commands for at least “
m”
number of data slice groups to at least “
m”
number of slice servers of a plurality of slice servers, wherein “
m”
is less than “
n” and
represents a minimum number of data slices to recover the one of the plurality of blocks of data from the one of the plurality of “
n”
number of data slices; andreceiving verification of storage of the at least “
m”
number of data slice groups from the at least “
m”
number of slice servers. - View Dependent Claims (2, 3)
-
-
4. A computer comprises:
-
a network port; memory; and a processor operably coupled to the network port and to the memory, the processor is operable to; divide a data segment of data into a plurality of data blocks, wherein data blocks of the plurality of data blocks have a fixed block size; perform a data dispersal algorithm on a plurality of transformed data blocks to produce a plurality of “
n”
number of data slices, wherein one of the plurality of blocks of data is encoded into one of the plurality of “
n”
number of data slices, and wherein data slices of the plurality of “
n”
number of data slices are grouped to produce “
n”
number of data slice groups;transmit, via the network port, write commands for at least “
m”
number of data slice groups to at least “
m”
number of slice servers of a plurality of slice servers, wherein “
m”
is less than “
n” and
represents a minimum number of data slices to recover the one of the plurality of blocks of data from the one of the plurality of “
n”
number of data slices; andreceive, via the network port, verification of storage of the at least “
m”
number of data slice groups from the at least “
m”
number of slice servers. - View Dependent Claims (5, 6)
-
Specification