Arrangement for recovery of data by network nodes based on retrieval of encoded data distributed among the network nodes
First Claim
1. A method in a user node configured for connection to a network, the method comprising:
- connecting to a data link configured for providing connectivity with a connected user node;
establishing a recovered data storage system based on stored data elements having been replicated throughout a distributed storage system, each of the stored data elements having a corresponding unique object identifier that is independent of any storage address on a storage medium, the establishing including;
(1) storing, in a table for each locally-stored data element having been stored in the user node based on the replication throughout the distributed storage system, the corresponding unique object identifier and a corresponding stored location of the corresponding locally-stored data element, (2) detecting whether the connected user node is reachable via the data link, (3) selectively sending to the connected user node at least one of the unique object identifiers stored in the table in response to a query from the connected user node that specifies an attribute of the stored data element associated with the least one unique object identifier, (4) selectively sending to the connected user node a second query that specifies an attribute of a data element determined to be absent from the user node, and (5) selectively storing, in response to reception thereof from the connected user node, any received unique object identifiers that are distinct from the unique object identifiers stored in the table, the unique object identifiers and said any received unique object identifiers identifying the stored data elements having been recovered in the recovered data storage system, said any received unique object identifiers including the unique object identifier for the data element determined to be absent from the user node.
1 Assignment
0 Petitions
Accused Products
Abstract
Distributed data, having been stored in a distributed storage system as a collection of distributed data elements, is recovered based on connection of multiple user nodes, each user node having stored selected distributed data elements as a corresponding portion of the distributed data during replication of the distributed data elements throughout the distributed storage system. Each distributed data element is identifiable by a corresponding unique object identifier (OID). Each user node includes a discovery resource for discovering reachable user nodes, a local cache configured for identifying at least the corresponding portion of the distributed data based on the respective OIDs, and an identification service module configured for resolving a data object to a corresponding OID, via the corresponding local cache, or based on sending a query to the reachable user nodes. Hence, user nodes can recover distributed data based on exchanging resolution information and OID information.
93 Citations
31 Claims
-
1. A method in a user node configured for connection to a network, the method comprising:
-
connecting to a data link configured for providing connectivity with a connected user node;
establishing a recovered data storage system based on stored data elements having been replicated throughout a distributed storage system, each of the stored data elements having a corresponding unique object identifier that is independent of any storage address on a storage medium, the establishing including;
(1) storing, in a table for each locally-stored data element having been stored in the user node based on the replication throughout the distributed storage system, the corresponding unique object identifier and a corresponding stored location of the corresponding locally-stored data element, (2) detecting whether the connected user node is reachable via the data link, (3) selectively sending to the connected user node at least one of the unique object identifiers stored in the table in response to a query from the connected user node that specifies an attribute of the stored data element associated with the least one unique object identifier, (4) selectively sending to the connected user node a second query that specifies an attribute of a data element determined to be absent from the user node, and (5) selectively storing, in response to reception thereof from the connected user node, any received unique object identifiers that are distinct from the unique object identifiers stored in the table, the unique object identifiers and said any received unique object identifiers identifying the stored data elements having been recovered in the recovered data storage system, said any received unique object identifiers including the unique object identifier for the data element determined to be absent from the user node. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method in a network having a data link configured for providing connectivity, the method comprising:
-
connecting by a first user node to the data link, the first user node having a first group of stored data elements having been stored in the first user node based on the first user node having been in communication with a distributed storage system having replicated the stored data elements, each of the stored data elements having a corresponding unique object identifier that is independent of any storage address on a storage medium, the first user node further including a table having a corresponding first group of the unique object identifiers for identifying the respective first group of data elements;
connecting by a second user node to the data link, the second user node having a second group of the stored data elements having been stored in the second user node based on the second user node having been in communication with the distributed storage system having replicated the stored data elements, the second user node further including a corresponding table having a corresponding second group of the unique object identifiers for identifying the respective second group of data elements;
selectively supplying by at least one of the first and second user nodes at least a corresponding distinct one of the unique object identifiers from among the first and second groups, respectively, based on discovery of the second and first user nodes and in response to a query received by the at least one of the first and second user nodes, the first and second user nodes establishing a recovered data storage system based on a union of the first and second groups of unique object identifiers based on mutual discovery of the first and second user nodes via the data link, each unique object identifier being independent of any storage address on any storage medium. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A network node comprising:
-
a data storage medium configured for storing locally-stored data elements, the locally stored data elements having been stored on the data storage medium based on the network node having been in communication with a distributed storage system having replicated stored data elements that include the locally-stored data elements, each of the stored data elements having a corresponding unique object identifier that is independent of any storage address on a storage medium, the data storage medium including a table configured for storing, for each said locally-stored data element, a corresponding unique object identifier and a corresponding stored location of the corresponding locally-stored data element;
a network connection resource configured for connecting to a data link that is configured for providing connectivity with a connected user node;
a discovery resource configured for detecting a presence of the connected user node based on whether the connected user node is reachable via the data link, the discovery resource configured for communicating with the connected user node for establishment of a recovered data storage system based on a prescribed authentication with the connected user node;
an identification module configured for identifying a stored data element in response to a query from any one of an executable application in the user node and the connected user node, the identification module configured for selectively sending to the connected user node at least one of the unique object identifiers stored in the table based on the corresponding locally-stored data element having been specified in the query and having been received from the connected user node, the identification module configured for selectively storing, in response to reception thereof from the connected user node, any received unique object identifiers that are distinct from the unique object identifiers stored in the table, the unique object identifiers and said any received unique object identifiers identifying the stored data elements having been recovered in the recovered data storage system. - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
-
20. A computer readable medium having stored thereon sequences of instructions for connection to a network, the sequences of instructions including instructions for:
-
connecting to a data link configured for providing connectivity with a connected user node;
establishing a recovered data storage system based on stored data elements having been replicated throughout a distributed storage system, each of the stored data elements having a corresponding unique object identifier that is independent of any storage address on a storage medium, the establishing including;
(1) storing, in a table for each locally-stored data element having been stored in the user node based on the replication throughout the distributed storage system, the corresponding unique object identifier and a corresponding stored location of the corresponding locally-stored data element, (2) detecting whether the connected user node is reachable via the data link, (3) selectively sending to the connected user node at least one of the unique object identifiers stored in the table in response to a query from the connected user node that specifies an attribute of the stored data element associated with the at least one unique object identifier, (4) selectively sending to the connected user node a second query that specifies an attribute of a data element determined to be absent from the user node, and (5) selectively storing, in response to reception thereof from the connected user node, any received unique object identifiers that are distinct from the unique object identifiers stored in the table, the unique object identifiers and said any received unique object identifiers identifying the stored data elements having been recovered in the recovered data storage system, said any received unique object identifiers including the unique object identifier for the data element determined to be absent from the user node. - View Dependent Claims (21, 22, 23, 24, 25)
-
-
26. A network node comprising:
-
means for connecting to a data link configured for providing connectivity with a connected user node; and
means for establishing a recovered data storage system based on stored data elements having been replicated throughout a distributed storage system, each of the stored data elements having a corresponding unique object identifier that is independent of any storage address on a storage medium, the means for establishing configured for;
(1) storing, in a table for each locally-stored data element having been stored in the user node based on the replication throughout the distributed storage system, the corresponding unique object identifier and a corresponding stored location of the corresponding locally-stored data element, (2) detecting whether the connected user node is reachable via the data link, (3) selectively sending to the connected user node at least one of the unique object identifiers stored in the table in response to a query from the connected user node that specifies an attribute of the stored data element associated with the at least one unique object identifier, (4) selectively sending to the connected user node a second query that specifies an attribute of a data element determined to be absent from the user node, and (5) selectively storing, in response to reception thereof from the connected user node, any received unique object identifiers that are distinct from the unique object identifiers stored in the table, the unique object identifiers and said any received unique object identifiers identifying the stored data elements having been recovered in the recovered data storage system, said any received unique object identifiers including the unique object identifier for the data element determined to be absent from the user node. - View Dependent Claims (27, 28, 29, 30, 31)
-
Specification