Binding a local data storage device to remote data storage
AssigneeCallplex, Inc.
InventorStephen T. Sarakas
Life of this patent
Estimating the term…
Abstract
Data file storage systems and methods that bind a local portable data storage device to remote data storage space with an emergent data file storage system. Data files and directory nodes are associated with data aspect pairs, each comprised of a series of interdependent blocks of characteristically high-entropy data. Blocks of data comprising a remote data aspect are transferred to remote data aspect storage locations. A single block of data comprising a local data aspect is transferred separately to the local portable data storage device. Neither a local data aspect nor a remote data aspect contains information about the corresponding data file or directory node.
Claims20
A computer-implemented method of binding a local data storage device to remote data storage space with an emergent data file storage system manifest only within the union of local and remote data storage spaces concurrently accessible to an application executing on a host computer, said method comprising:
- dividing, by the application executing on a host computer, a data object into a first set of data elements, wherein the first set of data elements includes a terminal element;
- generating, by the application executing on the host computer, a second set of data elements by performing in cyclic order an addition modulo-2 logical operation between adjacent elements of the first set of data elements, whereby one member of the second set of data elements results from each addition modulo-2 logical operation;
- transferring, by the application executing on the host computer, the terminal element of the first set of data elements to the local portable data storage device;
- and
- transferring, by the application executing on the host computer, the generated second set of data elements to the remote data storage space.
A computer-implemented method of generating a data object, said generating comprising:
- retrieving from a local data storage device a local data aspect corresponding to the data object;
- retrieving from remote data storage space a remote data aspect corresponding to the data object;
- deriving the terminal element of a first set of data elements from the retrieved data aspects;
- deriving a second set of data elements from the retrieved data aspects;
- performing the addition modulo-2 logical operation between the derived terminal element of the first set of data elements and a member of the derived second set of data elements, whereby an element of a resolved set of data elements results from the addition modulo-2 logical operation,
- successively performing an addition modulo-2 logical operation between each resulting element of the resolved set of data elements and the next member of the derived second set of data elements, whereby a next element of the resolved set of data elements results from each addition modulo-2 logical operation;
- and
- assembling the derived last element of the first set of data elements together with all resulting elements of the resolved set of data elements, whereby said assembling results in a single coherent block of data having content substantially identical to said first set of data.
A system for implementing an emergent data file storage system, said system comprising:
- a local portable data storage device;
- one or more remote data storage devices;
- and
- a host computing device, said host computing device having one or more processors configured to:
- communicate with the local portable data storage device,
- communicate with the one or more remote data storage devices,
- execute input and output operations consistent with reading and writing data files,
- compress and decompress one or more blocks of data representing at least one data file,
- permute and de-permute one of more blocks of data representing at least one data file,
- transform one or more blocks of data representing at least one data file into a data aspect pair, by:
- dividing the one or more blocks of data into a first set of data elements, wherein the first set of data elements includes a terminal element,
- generating a second set of data elements by performing in cyclic order addition modulo-2 logical operations between adjacent elements of the first set of data elements, whereby one member of the second set of data elements results from each addition modulo-2 logical operation,
- transferring the terminal element of the first set of data elements as a local data aspect to the local portable data storage device,
- transferring the generated second set of data elements as a remote data aspect to the one or more remote data storage devices, and
- transform a data aspect pair into a single coherent block of data, by:
- retrieving the local data aspect from the local portable data storage device,
- retrieving the remote data aspect from the one or more remote data storage devices,
- deriving the terminal element of the first set of data elements from the retrieved local data aspect,
- deriving the second set of data elements from the retrieved remote data aspect,
- generating a resolved set of data elements by performing in cyclic order an addition modulo-2 logical operation between the derived terminal element of the first set of data elements and a member of the derived second set of data elements, whereby an element of a resolved set of data elements results from the addition modulo-2 logical operation,
- performing successively the addition modulo-2 logical operation between each resulting element of the resolved set of data elements and the next member of the derived second set of data elements, whereby a next element of the resolved set of data elements results from each addition modulo-2 logical operation, and
- assembling the derived last element of the first set of data elements together with all resulting elements of the resolved set of data elements, whereby said assembling results in a single coherent block of data.
Dependencies are inferred from the claim text.