Processing data associated with different tenant identifiers
US-11416465-B1 · Aug 16, 2022 · US
US11882181B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11882181-B2 |
| Application number | US-202217673459-A |
| Country | US |
| Kind code | B2 |
| Filing date | Feb 16, 2022 |
| Priority date | Jan 21, 2022 |
| Publication date | Jan 23, 2024 |
| Grant date | Jan 23, 2024 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Embodiments of the present disclosure relate to a method, an electronic device, and a computer program product for data storage. The method includes determining, based on attribute information of each of a set of nodes in a distributed storage system, a hash value of each of the set of nodes; determining a node identifier of each of the set of nodes based on geographic location information of each of the set of nodes and the hash value, with the node identifier being used to indicate a logical location of a node in the distributed storage system; and determining, in response to a processing request from a first node in the set of nodes for first data, a target node in the set of nodes based on the node identifier of each of the set of nodes. The target node is used to process the processing request for the first data.
Opening claim text (preview).
What is claimed is: 1. A method for data storage, comprising: determining, based on attribute information of each of a set of nodes in a distributed storage system, a hash value of each of the set of nodes; determining a node identifier of each of the set of nodes based on geographic location information of each of the set of nodes and the hash value, the node identifier being used to indicate a logical location of a node in the distributed storage system; and determining, in response to a processing request from a first node in the set of nodes for first data, a target node in the set of nodes based on the node identifier of each of the set of nodes, the target node being used to process the processing request for the first data; wherein the node identifiers of respective ones of the nodes are each determined at least in part as a function of the hash value of that node and the geographic location information of that node; wherein the node identifiers collectively establish a hash topology for the respective nodes in which particular nodes that are geographically close to one another within a given region have respective node identifiers that are logically close to one another in the hash topology; and wherein determining the target node comprises performing at least one XOR operation to determine a logical distance between node identifiers of respective ones of the nodes. 2. The method according to claim 1 , wherein determining the node identifier of each of the set of nodes comprises: determining a location prefix of each of the set of nodes based on the geographic location information of each of the set of nodes, the location prefix having a predetermined number of bits; and adding the location prefix of each of the set of nodes as a prefix to the hash value of each of the set of nodes to obtain the node identifier of each of the set of nodes. 3. The method according to claim 2 , wherein determining a location prefix of each of the set of nodes comprises: determining a location prefix of a first node in the set of nodes that is located in a first geographic region as a first prefix; and determining a location prefix of a second node in the set of nodes that is located in a second geographic region different from the first geographic region as a second prefix different from the first prefix. 4. The method according to claim 1 , wherein the processing request for the first data comprises a read request from the first node for the first data. 5. The method according to claim 1 , wherein determining a target node in the set of nodes comprises: determining, based on the node identifier of each of the set of nodes, at least one node that is no more than a threshold distance from a logical location of the first node as a set of candidate nodes; searching for, from the set of candidate nodes, the target node that stores the first data; and providing, by the target node, the first data to the first node. 6. The method according to claim 5 , wherein determining the set of candidate nodes comprises: performing an XOR operation on a second node identifier of a second node in the set of nodes and a first node identifier of the first node to determine a logical distance between the first node and the second node; and adding the second node to the set of candidate nodes if the logical distance does not exceed the threshold distance. 7. The method according to claim 1 , wherein the processing request for the first data comprises a request, by the first node, for storage of metadata for the first data generated at the first node. 8. The method according to claim 7 , wherein determining a target node in the set of nodes comprises: determining a data identifier of the metadata based on a first node identifier of the first node and a hash value of the first data; and determining the target node in the set of nodes based on a comparison of the node identifier of each of the set of nodes with the data identifier, the target node being used to store the metadata. 9. An electronic device, comprising: at least one processor; and at least one memory storing computer program instructions, wherein the computer program instructions, when executed by the at least one processor, cause the electronic device to perform actions comprising: determining, based on attribute information of each of a set of nodes in a distributed storage system, a hash value of each of the set of nodes; determining a node identifier of each of the set of nodes based on geographic location information of each of the set of nodes and the hash value, the node identifier being used to indicate a logical location of a node in the distributed storage system; and determining, in response to a processing request from a first node in the set of nodes for first data, a target node in the set of nodes based on the node identifier of each of the set of nodes, the target node being used to process the processing request for the first data; wherein the node identifiers of respective ones of the nodes are each determined at least in part as a function of the hash value of that node and the geographic location information of that node; wherein the node identifiers collectively establish a hash topology for the respective nodes in which particular nodes that are geographically close to one another within a given region have respective node identifiers that are logically close to one another in the hash topology; and wherein determining the target node comprises performing at least one XOR operation to determine a logical distance between node identifiers of respective ones of the nodes. 10. The electronic device according to claim 9 , wherein determining the node identifier of each of the set of nodes comprises: determining a location prefix of each of the set of nodes based on the geographic location information of each of the set of nodes, the location prefix having a predetermined number of bits; and adding the location prefix of each of the set of nodes as a prefix to the hash value of each of the set of nodes to obtain the node identifier of each of the set of nodes. 11. The electronic device according to claim 10 , wherein determining a location prefix of each of the set of nodes comprises: determining a location prefix of a first node in the set of nodes that is located in a first geographic region as a first prefix; and determining a location prefix of a second node in the set of nodes that is located in a second geographic region different from the first geographic region as a second prefix different from the first prefix. 12. The electronic device according to claim 9 , wherein the processing request for the first data comprises a read request from the first node for the first data. 13. The electronic device according to claim 9 , wherein determining a target node in the set of nodes comprises: determining, based on the node identifier of each of the set of nodes, at least one node that is no more than a threshold distance from a logical location of the first node as a set of candidate nodes; searching for, from the set of candidate nodes, the target node that stores the first data; and providing, by the target node, the first data to the first node. 14. The electronic device according to claim 13 , wherein determining the set of candidate nodes comprises: performing an XOR operation on a second node identifier of a second node in the set of nodes and a first node identifier of the first node to determine a logical distance between the first node and the second node; and adding the second node to the set of candidate nodes if the logical distance doe
for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS] · CPC title
specially adapted for the location of the user terminal · CPC title
Hash tables · CPC title
Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor · CPC title
Geographical information databases · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.