Partitioning data into chunk groupings for use in a dispersed storage network
AssigneePure Storage, Inc.
InventorsGreg R. Dhuse, Jason K. Resch
Life of this patent
Estimating the term…
Abstract
A computing device for use in a storage network includes one or more network interfaces, memory with operational instructions and a processing module. The processing module is configured to execute the operational instructions receive a storage request for data and select a plurality of memory devices for storage of the data. The processing module partitions the data into a plurality of chunk sets and encode each chunk set of the plurality of chunk sets according to a dispersed storage error coded function to produce a plurality of chunks. Finally, the processing module facilitates storage of each chunk of the plurality of chunks in a memory device of the plurality of memory devices.
Claims18
A computing device of a network storage, the computing device comprises:
- one or more network interfaces;
- memory including operational instructions;
- and
- a processing module operably coupled to the memory and the one or more network interfaces, the processing module configured to execute the operational instructions to:
- receive a storage request for data;
- determine a data type for the data;
- based on the data type, determine whether to partition the data into variable-sized data blocks:
- in response to a determination to divide the data into variable-sized data blocks, partition the data according to a partition function into a plurality of data blocks;
- encode each data block of the plurality of data blocks according to a dispersed storage error coded function to produce a plurality of data fragments;
- facilitate storage of the plurality of data fragments in a plurality of storage network node.
A method for storing data in a data storage network comprises
- receiving a storage request for data
- determining a data type for the data;
- based on the data type, determining whether to partition the data into variable-sized data blocks;
- in response to a determination to divide the data into variable-sized data blocks, partitioning the data according to a partition function into a plurality of data blocks;
- encoding each data block of the plurality of data blocks according to a dispersed storage error coded function to produce a plurality of data fragments;
- and
- facilitating storage of the plurality of data fragments in a plurality of storage network node.
A computing device comprises:
- one or more network interfaces;
- memory including operational instructions;
- and
- a processing module operably coupled to the memory and the one or more network interfaces, the processing module configured to execute the operational instructions to:
- receive a storage request for data;
- determine a data type for the data;
- based on the data type, determining whether to partition the data into variable-sized data blocks;
- in response to a determination to divide the data into variable-sized data blocks, partition the data according to a partition function into a plurality of data blocks;
- encode each data block of the plurality of data blocks according to a dispersed storage error coded function to produce a plurality of data fragments;
- select a plurality of solid-state memory devices for storage of the plurality of data fragments;
- facilitate storage of each data fragment of the plurality of data blocks the plurality of data fragments in a memory device of the plurality of solid-state memory devices.
Dependencies are inferred from the claim text.