10666728

System and Method for Maintaining Data Consistency Across Replicas in a Cluster of Nodes

PublishedMay 26, 2020
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
17 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A method of maintaining data consistency in a cluster of nodes where each node stores data in the form of tables, the method comprising: (a) dividing into data segments, by one node in the cluster of nodes, the data stored as tables by that one node, wherein the data segments are smaller in size than the tables; (b) loading into memory from a globally available location in the cluster of nodes, by the one node, metadata about when the data segments were last analyzed for data consistency; (c) prioritizing for data consistency analysis, by the one node, the data segments; (d) selecting for data consistency analysis, by the one node, a highest priority data segment; (e) dividing into pages, by the one node, the selected highest priority data segment, wherein the pages are smaller in size than the selected highest priority data segment; (f) selecting for data consistency analysis, by the one node, a sequentially next one of the pages; (g) creating a hash value, by the one node, of the selected, sequentially next one of the pages; (h) obtaining, by the one node, a hash value of the selected, sequentially next one of the pages from each other node in the cluster of nodes containing a replica of the selected, sequentially next one of the pages; (i) determining, by the one node, that the created hash value does not match the obtained hash value by comparing, by the one node, that the created hash value to the obtained hash value; (j) obtaining, by the one node, the selected, sequentially next one of the pages and corresponding time stamp from each other node in the cluster of nodes containing the replica of the selected, sequentially next one of the pages; (k) comparing, by the one node, a time stamp of the selected, sequentially next one of the pages with the obtained time stamp from each other node in the cluster of nodes containing the replica of the selected, sequentially next one of the pages; (l) sending as an update, by the one node, the selected, sequentially next one of the pages to each other node in the cluster of nodes containing the replica of the selected, sequentially next one of the pages, when the comparison shows the selected, sequentially next one of the pages has the most current time stamp; and, (m) updating, by the one node, the selected, sequentially next one of the pages of the one node with the obtained sequentially next one of the pages having a most current time stamp and sending as an update, by the one node, the obtained sequentially next one of the pages having the most current time stamp to each other node in the cluster of nodes containing the replica of the selected, sequentially next one of the pages, except for the node in the cluster of nodes containing the obtained sequentially next one of the pages having the most current time stamp, when the comparison shows the selected, sequentially next one of the pages does not have the most current time stamp.

2

2. The method of claim 1 further comprising: repeating steps (f) through (l) until it is determined, by the one node, that there are no more sequentially next one of the pages to be selected; and updating the metadata in the globally available location with the results of steps (l) and (m).

3

3. The method of claim 1 further comprising repeating steps (c) through (m).

4

4. The method of claim 1 wherein the data segments are 200 MegaBytes (MB) in size.

5

5. The method of claim 1 wherein prioritizing for data consistency analysis the data segments uses a Least Recently Used (LRU) schema.

6

6. The method of claim 1 wherein; prioritizing for data consistency analysis the data segments is performed by computing a priority score for each of the data segments; and, wherein the highest priority data segment is the data segment having a lowest priority score.

7

7. The method of claim 1 wherein the pages are 10s to 100s of KiloBytes (KB) in size.

8

8. The method of claim 1 wherein sending as an update, by the one node, the selected, sequentially next one of the pages to each other node in the cluster of nodes containing the replica of the selected, sequentially next one of the pages uses a standard write process.

9

9. The method of claim 1 wherein updating, by the one node, the selected, sequentially next one of the pages of the one node with the obtained sequentially next one of the pages having a most current time stamp and sending as an update, by the one node, the obtained sequentially next one of the pages having the most current time stamp to each other node in the cluster of nodes containing the replica of the selected, sequentially next one of the pages, except for the node in the cluster of nodes containing the obtained sequentially next one of the pages having the most current time stamp, uses a standard write process.

10

10. The method of claim 1 wherein the method is performed by each node in the cluster of nodes.

11

11. A non-transitory computer-readable storage medium having embodied thereon a program, the program being executable by a processor to perform a method of maintaining data consistency in a cluster of nodes where each node stores data in the form of tables, the method comprising the steps of: (a) dividing into data segments, by one node in the cluster of nodes, the data stored as tables by that one node, wherein the data segments are smaller in size than the tables; (b) loading into memory from a globally available location in the cluster of nodes, by the one node, metadata about when the data segments were last analyzed for data consistency; (c) prioritizing for data consistency analysis, by the one node, the data segments; (d) selecting for data consistency analysis, by the one node, a highest priority data segment; (e) dividing into pages, by the one node, the selected highest priority data segment, wherein the pages are smaller in size than the selected highest priority data segment; (f) selecting for data consistency analysis, by the one node, a sequentially next one of the pages; (g) creating a hash value, by the one node, of the selected, sequentially next one of the pages; (h) obtaining, by the one node, a hash value of the selected, sequentially next one of the pages from each other node in the cluster of nodes containing a replica of the selected, sequentially next one of the pages; (i) determining, by the one node, that the created hash value does not match the obtained hash value by comparing, by the one node, that the created hash value to the obtained hash value; (j) obtaining, by the one node, the selected, sequentially next one of the pages and corresponding time stamp from each other node in the cluster of nodes containing the replica of the selected, sequentially next one of the pages; (k) comparing, by the one node, a time stamp of the selected, sequentially next one of the pages with the obtained time stamp from each other node in the cluster of nodes containing the replica of the selected, sequentially next one of the pages; (l) sending as an update, by the one node, the selected, sequentially next one of the pages to each other node in the cluster of nodes containing the replica of the selected, sequentially next one of the pages, when the comparison shows the selected, sequentially next one of the pages has the most current time stamp; and, (m) updating, by the one node, the selected, sequentially next one of the pages of the one node with the obtained sequentially next one of the pages having a most current time stamp and sending as an update, by the one node, the obtained sequentially next one of the pages having the most current time stamp to each other node in the cluster of nodes containing the replica of the selected, sequentially next one of the pages, except for the node in the cluster of nodes containing the obtained sequentially next one of the pages having the most current time stamp, when the comparison shows the selected, sequentially next one of the pages does not have the most current time stamp.

12

12. The non-transitory computer readable medium of claim 11 , wherein the method further comprises: repeating steps (f) through (l) until it is determined, by the one node, that there are no more sequentially next one of the pages to be selected; and updating the metadata in the globally available location with the results of steps (l) and (m).

13

13. The non-transitory computer readable medium of claim 11 , wherein the method further comprises the steps of repeating steps (c) through (m).

14

14. The non-transitory computer readable medium of claim 11 , wherein prioritizing for data consistency analysis the data segments uses a Least Recently Used (LRU) schema.

15

15. The non-transitory computer readable medium of claim 11 , wherein: prioritizing for data consistency analysis the data segments is performed by computing a priority score for each of the data segments; and, wherein the highest priority data segment is the data segment having a lowest priority score.

16

16. The non-transitory computer readable medium of claim 11 , wherein sending as an update, by the one node, the selected, sequentially next one of the pages to each other node in the cluster of nodes containing the replica of the selected, sequentially next one of the pages uses a standard write process.

17

17. The non-transitory computer readable medium of claim 11 , wherein updating, by the one node, the selected, sequentially next one of the pages of the one node with the obtained sequentially next one of the pages having a most current time stamp and sending as an update, by the one node, the obtained sequentially next one of the pages having the most current time stamp to each other node in the cluster of nodes containing the replica of the selected, sequentially next one of the pages, except for the node in the cluster of nodes containing the obtained sequentially next one of the pages having the most current time stamp, uses a standard write process.

Patent Metadata

Filing Date

Unknown

Publication Date

May 26, 2020

Inventors

Sylvain Jean Lebresne

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “SYSTEM AND METHOD FOR MAINTAINING DATA CONSISTENCY ACROSS REPLICAS IN A CLUSTER OF NODES” (10666728). https://patentable.app/patents/10666728

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.

SYSTEM AND METHOD FOR MAINTAINING DATA CONSISTENCY ACROSS REPLICAS IN A CLUSTER OF NODES — Sylvain Jean Lebresne | Patentable