How to compare nodes in a multi-node pgEdge cluster or even comparing two databases

Compare the contents and replication structure of two nodes in order to check replication cluster and data integrity and consistency

In a multi-node PostgreSQL cluster setup, the ability of comparing the contents of two nodes is a really important feature, the need for this can arise in the following situation :

  • comparing data in two tables or schema in case of backup and recovery
  • Adding node are added in multi node pgEdge cluster, running the data integrity checker can ensure all the nodes are in sync
  • In case of planned maintenance. you would need to take a database down and then bring it back up which may cause it to fall back...

This is where pgEdge Anti Chaos Engine (ACE) comes into play. 

In an eventually consistent system such as pgEdge, your nodes have the potential to go out of sync (diverge) due to replication lag, network partition, or node failure. Database differences can also arise out of planned or unplanned downtime or unexpected cloud provider failures. The Anti Chaos Engine (ACE) allows for reconciliation of such differences across databases by performing efficient table comparisons and reporting found differences in output formats that are both machine and user friendly. You can also use ACE to repair the discrepancies by specifying the node that is considered your source-of-truth and instructing ACE to update the differences between the nodes.

Please read the pgEdge documentation for more details on ACE, installation and usage. 

https://docs.pgedge.com/platform/advanced/ace#ace-the-anti-chaos-engine