Source Records¶
Reviewing anomaly source records
Source records are the rows behind an anomaly: the actual data that failed its checks, shown as a table on the anomaly with the failing cells highlighted. They are the evidence you read to decide whether an anomaly is a real problem, a false alarm, or an exception the business accepts.
Where Source Records Come From¶
A Scan writes the source records of each anomaly to the source datastore's enrichment datastore, and the anomaly reads them back from there. A datastore without an enrichment datastore produces anomalies with no source records.
How many rows are kept depends on the anomaly type:
| Anomaly type | Source records |
|---|---|
| Record | The one row that failed, with every field. |
| Shape | A sample of the failing rows, up to the Scan's Maximum Source Examples per Anomaly (10 by default). A Unique check keeps every row of each duplicate group. |
| Shape, without rows | None. A rule that does not read rows, such as Expected Schema, Volumetric, or Freshness, has no rows to keep. |
The limit is set on the Scan before it runs. Raising it later does not add rows to anomalies that already exist: a new Scan captures more rows on the new anomalies it creates. See Maximum Source Examples per Anomaly.
Reading the Table¶
Each row of the table is one source record, and each column is a field of the table or file. The header stays visible while you scroll.
- Failing cells are highlighted. The cells of the fields that failed a check carry an orange outline and a tinted background, so the problem stands out from the rest of the row. Their column headers carry a badge.
- Masked fields are marked. A field that is masked shows its values as
***MASKED***and a masked icon in its header. See Masked Fields.
Two controls above the table change what you see:
| Control | What it does |
|---|---|
| Sort By | Orders the columns. Anomalous First puts the failing fields first. Original keeps the order the container defines: the source's column order for a table or file, and the query's column order for a computed table, computed file, or computed join. The other options sort by Importance, Name, or Quality Score, ascending or descending. |
| Fields | Picks which columns to show. Its badge counts the visible fields, such as 64/64. Only Anomalous keeps only the failing fields, and Hide All or Show All switches every field at once. |
The defaults depend on the container:
| Container | Default sort | Anomalous First |
|---|---|---|
| Table, view, or file | Importance | On |
| Computed table, computed file, or computed join | Original | Off |
Anomalous First is turned off while Only Anomalous is on, because every visible field is then anomalous.
The sort you pick becomes your default the next time you open source records, kept separately for computed containers and for the others, so a choice made on a plain table does not replace the query order of a computed container. The preference is saved in your browser. You can also drag a column header to move that column.
How Fresh the Records Are¶
Source records are kept in your browser for up to 8 hours after they are first loaded, so reopening an anomaly is fast. The tooltip of the Refresh button shows when they were last loaded, and the button loads them again from the enrichment datastore. See Refresh Source Records.
Downloading the Records¶
The Download button exports the source records as a .csv file named source_records_<anomaly id>.csv, of up to 250 MB. The file holds the rows the Scan kept, not every failing row in the data. Its columns follow the order on screen, including the Sort By choice and any column you dragged. Columns hidden with Fields are still included, after the visible ones. On a very wide table, where the full column order is too long to send with the download, the columns past that point keep their original order. See Download Source Records.
When the Enrichment Datastore Is No Longer Linked¶
If the enrichment datastore is unlinked or deleted, the Source Records section shows a message saying the datastore no longer has an enrichment datastore linked, with a retry control. The Source Records tab of a Scan's results shows the same message, and rows loaded earlier are cleared from the screen.
The records are not lost. They stay in the enrichment datastore, and linking the same enrichment datastore again, with the same prefix, brings them back. See Link an Enrichment Destination.
Masked Fields¶
A masked field shows ***MASKED*** in place of its values in the source records. Masking protects sensitive data from people who can see the anomaly but should not see the values.
- Revealing is per anomaly. A user with the Editor team permission can reveal the masked values of an anomaly. Revealing shows the masked values of every source record of that anomaly at once, not one row at a time. See Reveal Masked Values.
- Every reveal is audited. Each reveal is recorded in the Masking Audit Log with the user, the time, the IP address, and the fields revealed. Users with the Admin role can read it. See View the Masking Audit Log.
- Messages stay masked. Check failure messages and anomaly descriptions show
<masked>in place of a masked value, permanently. The original value is not stored on the anomaly, so revealing the source records is the only way to see it.
Comparison Source Records¶
An anomaly from a Data Diff check configured with row identifiers lists the mismatched rows side by side rather than as plain records. It is the same table the Data Reconciliation recipe uses when you resolve the mismatches, without the controls for choosing a side.
Two columns are pinned to the left edge. Found in shows a marker for each side, filled where the row exists and outlined where it does not, and Status gives its change type:
| Change type | Where the row is |
|---|---|
| Changed | Both sides hold the row, and at least one compared field disagrees. |
| Added | Only the checked asset holds the row. The reference does not. |
| Removed | Only the reference holds the row. The checked asset does not. |
The change type is read from the checked asset's point of view, so a row the reference is missing counts as added rather than removed.
Row identifier columns are marked with a key. On a changed row, only the fields the two sides disagree on are split into a left and a right half, with the differing parts emphasized. Click one to open the full comparison. An added or removed row exists on one side only, so each of its cells shows that single value instead of a split.
An added or removed row is highlighted across the whole row, while a changed row highlights only the cells in dispute.
For the same table in the context of correcting the mismatches, see Scan and Reconcile.
Permissions¶
| Action | Requirement |
|---|---|
| See the anomaly | The Reporter team permission on the anomaly's datastore |
| View and download source records | The Viewer team permission |
| Reveal masked values | The Editor team permission |
| Read the Masking Audit Log | The Admin role |
See Anomaly Permissions.
See Also¶
-
Tickets
Linked Jira and ServiceNow tickets: sync modes, what reaches the ticket, and status sync.
-
Timeline
The record of every change to an anomaly, and how comments and mentions work.
-
Examples
Real scenarios that follow an anomaly from the Scan that finds it to the decision that closes it.
-
Best Practices
Guidelines for keeping the anomaly list short, trusted, and acted on.
-
Permissions
The team permission and user role behind every anomaly action.
-
How It Works
How a Scan creates anomalies, AI Managed and Authored checks, the lifecycle, duplicates, and notifications.
-
Record Anomalies
Anomalies that flag one row: when they are created, how rows are grouped, and examples.
-
Shape Anomalies
Anomalies about many rows or the whole dataset: what creates them, what they count, and examples.
-
AI Managed and Authored
How anomalies from AI Managed and Authored checks differ, the AI badge, and how triage tunes AI Managed checks.
-
Impact
How the Low to Critical impact level is decided from the failed checks, and when it updates.
-
Status
The lifecycle of an anomaly, from Active and Acknowledged to the archived statuses.
-
Assignees
How the Assignees field works, who can be assigned, and when assignees are notified.
-
Fingerprints
How Qualytics recognizes a newly detected anomaly as a duplicate of one it already found.
-
Anomaly Views
The four screens that show anomalies: how to reach each one, what it shows, and what you can do there.
-
Description
The business-friendly explanation of the data quality issue behind an anomaly.