Parity Run
Drop two copies of a table — before and after a pipeline run, a replica and its primary, last week’s export and today’s. Parity Run lines up every row, counts every difference, and writes a sign-off report — all inside this tab.
Source
The copy you trust.
Target
The copy you are checking.
How to Use Parity Run
How to prove two copies of a table hold the same data, without uploading either.
Drop both copies
Drop the copy you trust and the copy you are checking — CSV, TSV, Parquet or JSON. Both are read inside the tab; neither file is uploaded.
Line them up
Columns are paired by name, even when the case or underscores changed. A unique id column is suggested as the key; adjust the pairing, the key and how strictly values compare.
Run, then sign off
Get a verdict with every missing key, duplicate and differing value counted, then download a sign-off report with the file fingerprints and the exact SQL behind each figure.
Frequently Asked Questions
Common questions about privacy, supported dialects, and how Parity Run works under the hood.
How do I verify that a data migration copied every row correctly?
Export the source and target tables to CSV or Parquet and drop both into Parity Run. It matches rows on a key, then reports row-count differences, keys missing from either side, duplicate or empty keys, and how many matched rows hold a different value in each column — with examples of each.
Are my files uploaded anywhere?
No. Both files are read by a SQL engine compiled to WebAssembly, running inside your browser tab. The page’s Content Security Policy forbids requests to any other server, and the SHA-256 fingerprints in the report are computed locally too.
What if my table has no primary key?
Choose no key and Parity Run compares each side as a whole set of rows, counting duplicates. It then reports how many rows exist on one side and not the other, with examples, though it cannot say which column changed without a key to pair rows by.
What does the sign-off report contain?
A single HTML file with the verdict, both files identified by SHA-256 fingerprint, row and key counts, per-column differences, every comparison setting and every SQL statement that produced a figure. Example values are left out unless you include them, because they are real data. It prints cleanly to PDF.
Can it ignore differences that do not matter, like trailing spaces or rounding?
Yes: whitespace, letter case, empty text versus NULL, and a numeric tolerance can each be relaxed. Every relaxation is recorded in the result and the report, so a match is never stronger than what was actually compared.