Choose the right comparison depth for the job.
Each Compare algorithm balances speed, precision, infrastructure cost, and transferred data differently. Start with a light volume check, move to sampled control for large tables, use agent-side chunk hashing when payload must stay low, or run a full row audit when the result needs to stand up to a cutover or investigation.
Algorithm overview
Compare offers four ways to validate consistency. The right choice depends on whether you are optimizing for speed, confidence, repeatable monitoring at scale, or low data movement in agent-based runs.
Fast baseline
Row Count
Checks whether the source and target contain the same number of rows. It is the fastest way to confirm that a migration or replication flow did not diverge at the volume level.
- Best when
you need a quick signal after an initial load, batch migration, export/import, or nightly processing.
- Cost profile
- Lowest system impact and the shortest execution time.
- Blind spot
- It will not detect content mismatches when the row totals still match.
Full audit
Row Level
Performs a full row-by-row, value-level comparison across the table. Use it when certainty is more important than runtime and the output may need to support a cutover, audit, or incident review.
- Best when
you need hard validation before go-live, after an incident, or whenever discrepancies must be explained precisely.
- Cost profile
- Highest confidence, but also the highest infrastructure load and longest runtime.
- Tradeoff
- Large tables may require deliberate scheduling and a controlled execution window.
Sampled control
Row Nlevel
Compares every n-th row using a configurable interval. It offers a practical balance between confidence and execution time for large tables that are checked repeatedly.
- Best when
you want regular control over high-volume tables without running a full scan every time.
- Cost profile
- Moderate overhead with much better scalability on large datasets.
- Blind spot
- Differences that fall between sampled rows can remain undetected.
Agent-first diagnostics
Chunk Hash
Available only in agent mode. Agents send hash signatures for consecutive data chunks instead of shipping full rows. Compare advances while hashes match. At the first mismatch it requests the decrypted chunk from both sides, compares that window in detail, and reports exactly which records differ inside it.
- Best when
you want low network transfer on large tables, but still need a precise explanation of the first persistent difference.
- Cost profile
- Very efficient on in-sync data because only chunk hashes move until a mismatch appears.
- Tradeoff
- It stops at the first mismatching chunk, so a rerun is needed to continue beyond that point.
Quick selection guide
Need to confirm only the volume?
Choose Row Count when the main question is whether the target has the same record total as the source.
Working with large tables and limited runtime?
Choose Row Nlevel for recurring controls where a representative sample is good enough for operational monitoring.
Need low transfer and the first exact mismatch?
Choose Chunk Hash in Agent-Based Connection mode when you want hashes to flow chunk-by-chunk and full values only for the first differing chunk.
Need evidence-grade validation?
Choose Row Level when the output must support a cutover decision, an audit, or root-cause analysis.
Typical use cases
Fast smoke test after a batch migration
Start by checking whether the target carries the same row volume as the source before you spend time on deeper analysis.
Recommended: Row CountLarge tables in active replication
When the table is big and the comparison runs regularly, sampled control keeps the feedback loop fast without scanning everything in full.
Recommended: Row NlevelValidation before cutover or after a discrepancy
When the result must be defensible and specific, use the most detailed comparison and work from exact row-level differences.
Recommended: Row LevelLarge or remote tables where transfer must stay low
Keep traffic minimal by exchanging chunk hashes first, then pull the first mismatching chunk in decrypted form only when detailed diagnosis is required.
Recommended: Chunk HashEscalate instead of auditing everything
A practical workflow is to start with Row Count, move recurring controls to Row Nlevel, use Chunk Hash when agent mode should stop at the first real drift, and reserve Row Level for critical tables and escalated analysis.
Recommended flow