Multi-level distributed hash table for data storage in a hierarchically arranged network
First Claim
Patent Images
1. A method of storing data in a computing network, comprising:
- acquiring live video data by a camera coupled to a computing node of the computing network;
dividing, by the computing node, the acquired live video data into multiple chunks, each chunk including a portion of the acquired live video data; and
for each chunk;
erasure coding the chunk to create erasure coded fragments;
performing a first hashing operation to generate a first key;
performing a second hashing operation to generate a second key;
applying the first key to a first logical ring of computing nodes of the computing network to identify a matching node that satisfies at least one criterion associated with the first key, the first logical ring of computing nodes organized according to a first level of a multi-level DHT (distributed hash table), such that each computing node in the first logical ring of computing nodes forms a respective node in the first level of the multi-level DHT;
applying the second key to a second logical ring of computing nodes of the computing network to identify a matching node of the second logical ring of computing nodes that satisfies at least one criterion associated with the second key, the second logical ring of computing nodes organized according to a second level of the multi-level DHT, such that each computing node in the second logical ring of computing nodes forms a respective node in the second level of the multi-level DHT, wherein the second logical ring of computing nodes includes the matching node of the first logical ring of computing nodes and a set of nodes that are distinct from the first logical ring of computing nodes; and
directing at least one of the erasure coded fragments to be stored on the matching node of the second logical ring of computing nodes,wherein the computing node that is coupled to the camera is a computing node of the multi-level DHT, andwherein the method further comprises directing metadata describing one or more storage locations of the erasure coded fragments to be stored in one more computing nodes of the second logical ring of computing nodes.
9 Assignments
0 Petitions
Accused Products
Abstract
An improved technique for distributed data storage employs multiple DHT (distributed hash table) rings provided at different levels of a network hierarchy. A computing node is identified for data storage by performing multiple hashing operations, one for each DHT ring. The hashing operations for the different rings are distinct in that they are performed using different hashing functions and/or are performed on different data sources. In one example, a 2-level DHT is formed from a group of LANs forming a first DHT ring and a group of computing nodes, within each LAN, forming a second DHT ring.
39 Citations
25 Claims
-
1. A method of storing data in a computing network, comprising:
-
acquiring live video data by a camera coupled to a computing node of the computing network; dividing, by the computing node, the acquired live video data into multiple chunks, each chunk including a portion of the acquired live video data; and for each chunk; erasure coding the chunk to create erasure coded fragments; performing a first hashing operation to generate a first key; performing a second hashing operation to generate a second key; applying the first key to a first logical ring of computing nodes of the computing network to identify a matching node that satisfies at least one criterion associated with the first key, the first logical ring of computing nodes organized according to a first level of a multi-level DHT (distributed hash table), such that each computing node in the first logical ring of computing nodes forms a respective node in the first level of the multi-level DHT; applying the second key to a second logical ring of computing nodes of the computing network to identify a matching node of the second logical ring of computing nodes that satisfies at least one criterion associated with the second key, the second logical ring of computing nodes organized according to a second level of the multi-level DHT, such that each computing node in the second logical ring of computing nodes forms a respective node in the second level of the multi-level DHT, wherein the second logical ring of computing nodes includes the matching node of the first logical ring of computing nodes and a set of nodes that are distinct from the first logical ring of computing nodes; and directing at least one of the erasure coded fragments to be stored on the matching node of the second logical ring of computing nodes, wherein the computing node that is coupled to the camera is a computing node of the multi-level DHT, and wherein the method further comprises directing metadata describing one or more storage locations of the erasure coded fragments to be stored in one more computing nodes of the second logical ring of computing nodes. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A computerized apparatus, comprising:
-
a set of processors; and memory, coupled to the set of processors, the memory arranged to store instructions executable by the set of processors, wherein the set of processors executing instructions from the memory forms a specialized circuit arranged to; acquire live video by a camera coupled to a computing node of the computing network; divide, by the computing node, the acquired live video into multiple chunks, each chunk including a portion of the acquired live video; and for each chunk; erasure code the chunk to create erasure coded fragments; perform a first hashing operation to generate a first key; perform a second hashing operation to generate a second key; apply the first key to a first logical ring of computing nodes of a computing network to identify a matching node that satisfies at least one criterion associated with the first key, the first logical ring of computing nodes organized according to a first level of a multi-level DHT (distributed hash table), such that each computing node in the first logical ring of computing nodes forms a respective node in the first level of the multi-level DHT; apply the second key to a second logical ring of computing nodes of the computing network to identify a matching node of the second logical ring of computing nodes that satisfies at least one criterion associated with the second key, the second logical ring of computing nodes organized according to a second level of the multi-level DHT, such that each computing node in the second logical ring of computing nodes forms a respective node in the second level of the multi-level DHT, wherein the second logical ring of computing nodes includes the matching node of the first logical ring of computing nodes and a set of nodes that are distinct from the first logical ring of computing nodes; and direct a storing operation of at least one of the erasure coded fragments on the matching node of the second logical ring of computing nodes, wherein the computing node that is coupled to the camera is a computing node of the multi-level DHT, and wherein the specialized circuit is further arranged to direct metadata describing one or more storage locations of the erasure coded fragments to be stored in one more computing nodes of the second logical ring of computing nodes. - View Dependent Claims (22, 23)
-
-
24. A computer program product including non-transitory computer readable medium having instructions which, when executed by a set of processors of a computerized apparatus, cause the set of processors to perform a method of storing data in a computing network, the method comprising:
-
acquiring live video by a camera coupled to a computing node of the computing network; dividing, by the computing node, the acquired live video into multiple chunks, each chunk including a portion of the acquired live video; and for each chunk; erasure coding the chunk to create erasure coded fragments; performing a first hashing operation to generate a first key; performing a second hashing operation to generate a second key; applying the first key to a first logical ring of computing nodes of the computing network to identify a matching node that satisfies at least one criterion associated with the first key, the first logical ring of computing nodes organized according to a first level of a multi-level DHT (distributed hash table), such that each computing node in the first logical ring of computing nodes forms a respective node in the first level of the multi-level DHT; applying the second key to a second logical ring of computing nodes of the computing network to identify a matching node of the second logical ring of computing nodes that satisfies at least one criterion associated with the second key, the second logical ring of computing nodes organized according to a second level of the multi-level DHT, such that each computing node in the second logical ring of computing nodes forms a respective node in the second level of the multi-level DHT, wherein the second logical ring of computing nodes includes the matching node of the first logical ring of computing nodes and a set of nodes that are distinct from the first logical ring of computing nodes; and directing at least one of the erasure coded fragments to be stored on the matching node of the second logical ring of computing nodes, wherein the computing node that is coupled to the camera is a computing node of the multi-level DHT, and wherein the method further comprises directing metadata describing one or more storage locations of the erasure coded fragments to be stored in one more computing nodes of the second logical ring of computing nodes. - View Dependent Claims (25)
-
Specification