Skip to main content
A Table Pair names the source and target Tables you want to compare. Tests belong to a Table Pair and define what should agree between those Tables. This page covers Table Pairs; the Tests themselves are described on Tests. Running a Table Pair and reading its Results is covered in Runs, Results, and evidence. You need the Owner or Contributor role, an active trial or subscription, and Fabric access to the workspaces that hold your Tables. Running a Test also needs the Environment; see Getting started.

Create a Table Pair

  1. Open Table Pairs and click Add Table Pair.
  2. Enter a Table Pair name.
  3. Under Source Table, choose a Source Workspace. The list holds the workspaces your Microsoft account can open in Fabric. Your General Validation workspace is not offered because it holds Results, not validation Tables.
  4. Choose a Source Lakehouse or Warehouse. Each item is listed with its type.
  5. Choose a Source Table. Tables are listed with their schema, as schema.table, so identical names in different schemas stay distinct.
  6. For a Lakehouse Table, optionally enter a Source Delta version to pin a snapshot. Leave it blank to read the latest version when the Run starts. Warehouse Tables cannot be pinned.
  7. Repeat the same choices for the target with Target Workspace, Target Lakehouse or Warehouse, Target Table, and, for a Lakehouse, Target Delta version.
  8. Add join keys and filters if you need them (see the next section), then click Add Table Pair.
The app opens the new pair and prompts you to add its first Test. Any combination of Lakehouse and Warehouse Tables can form a pair. The dialog reads the workspace, item, and Table lists live from Fabric with your own Microsoft identity; saving the pair stores only the selected Table references. No rows are copied to General Validation. Click Refresh source or Refresh target to reload a list after a change in Fabric. An empty list means your account cannot see a matching item in Fabric; confirm your Fabric access, then refresh. The source and target Tables are fixed once the pair is saved. To compare different Tables, delete the pair and create a new one. Every active Table Pair counts toward your plan limit. At the limit, the app refuses a new pair and asks you to archive a Table Pair or change the plan in Billing.

Join keys and filters

Join keys are pairs of source and target columns that match rows across the two Tables. They belong to the Table Pair and are shared by every row Test in it: VALUE and OUTER_VALUE need them, and aggregate and set Tests do not use them. A pair can hold up to 16 join keys.
  1. In the Add Table Pair or Edit Table Pair dialog, under Join keys (optional), click Add key.
  2. Choose Source key 1 and Target key 1 from the column lists, which show each column with its type. Choose each column only once on each side.
  3. Click Add key again for a composite key, or Remove to drop one.
Choose keys that identify rows uniquely: duplicate keys multiply matches. Comparisons use Spark’s native types and null-safe equality. Until a pair has join keys, its page shows Not set under Join keys with a reminder that VALUE and OUTER_VALUE Tests need them, and the Add Test dialog asks you to set join keys before you add either of those Tests. Filters limit which rows each Test compares. The source and target each have their own list of up to 32 filters, and every filter on a side must match for a row to be included. Filters apply to every Test in the pair, and summaries and mismatch evidence use the same filtered rows. Each filter has a column, an operator, and a value. Under Source filters (optional) or Target filters (optional), click Add source filter or Add target filter, choose the column and the operator, and enter the value. For a boolean column choose True or False. For a text column, leave the value blank to match an empty string. Click Remove filter to drop one. Filter values are saved with the Table Pair as configuration. Treat them as metadata your Organization has shared with the service, and avoid entering secrets or personal data as filter values. To change a pair’s name, join keys, or filters later, choose Edit Table Pair from the row ⋯ menu on Table Pairs or from the pair’s page, make the change, and click Save Table Pair. The change applies to future Runs; past Runs keep the scope they ran with. A changed key or filter resets the pair’s Latest Validation to Not run until it runs again.

Add Tests

On the Table Pair’s page, click Add Test, choose a Test function, pick the Source column and Target column where the function needs them, and set the threshold and evidence settings. Start with COUNT_ROWS, which needs no columns. Each function, its settings, and how its comparison behaves are described on Tests, together with editing and deleting Tests.

Edit and delete a Table Pair

To delete a Table Pair, choose Delete Table Pair from its row ⋯ menu on Table Pairs, or click Delete on the pair’s page, and confirm with Delete Table Pair. Deleting a Table Pair archives it: the pair and its Tests leave the Table Pairs and Tests lists, its slot in your plan is freed, and its Runs and Results remain and stay listed on Results. An archived pair cannot receive new Tests or Runs; a Run already in progress finishes and records its Result. If a teammate changed the same Table Pair or Test first, your save is refused with the error code precondition.failed. Reload the page, review the current definition, and try again.

Find Table Pairs and Tests

Table Pairs lists every active pair with its Source, Target, number of Tests, Latest Validation, and Last Run. Type in Search Table Pairs to match any displayed value, click a column heading to sort ascending or descending, and use the Latest Validation filter to show pairs in one state. While a search or filter is active, the count shows how many pairs match, and Clear filters resets both. The Last Run cell opens that Run. Latest Validation shows Not run when a pair has never run or when its Tables, keys, filters, or Tests changed since its last Run. Tests lists every Test across your active Table Pairs in one place, with a Table Pair column that links to the owning pair. It has Search Tests, sortable column headings, filters for Table Pair, Test Function, and Latest Result, and the same Clear filters control. The row ⋯ menu offers Edit Test and Delete Test here as well. There is no Add button on Tests; Tests are added from a Table Pair. Tests of archived pairs are not listed. Each pair’s page has its own Search Tests field with Test Function and Latest Result filters for that pair’s Tests.

Who can do this

Roles are cumulative and are managed on Organization; see Sign-in and team access. Two further limits apply to Owners and Contributors. Creating a Table Pair needs an active trial or subscription; after expiry, existing pairs, Tests, Runs, and Results stay readable. A product role grants no Fabric access: the dialog lists only the workspaces and Tables your Microsoft account can already open in Fabric, and the account that runs validation needs read access to both Tables.