Overview
The Score entity captures the result of every data quality check performed by Prizm. It records both raw validation statistics (valid/invalid counts) and derived quality scores, along with full context about the asset, metric, and execution run that produced the result. Score is central to Prizm’s historical quality tracking, trend analysis, and root cause analysis.Score Entity Attributes
| Attribute | Data Type | Description | Constraint |
|---|---|---|---|
score_id | uuid | Unique identifier for each score record | Primary Key |
metric_id | uuid | Reference to the metric being measured | Foreign Key |
value | double precision | The measured value of the metric | — |
total_records | bigint | Total number of records analyzed | — |
valid_records | bigint | Number of records that passed validation | — |
invalid_records | bigint | Number of records that failed validation | — |
valid_percentage | float | Percentage of valid records | — |
invalid_percentage | float | Percentage of invalid records | — |
score | float | Calculated quality score value | — |
qualified_name | string | Fully qualified name of the asset | — |
account_name | string | Account name associated with the asset | — |
database_name | string | Database where the asset is stored | — |
schema_name | string | Schema where the asset is stored | — |
table_name | string | Table name of the asset | — |
model_name | string | Name of the model associated with the asset | — |
pipeline_name | string | Name of the data pipeline | — |
task_name | string | Name of the task within the pipeline | — |
test_name | string | Name of the test applied | — |
attribute_name | string | Name of the attribute being tested | — |
asset_id | uuid | Reference to the asset being scored | Foreign Key |
asset_type | string | Type of the asset (table, model, etc.) | — |
metric_detail_id | uuid | Reference to detailed metric information | Foreign Key |
run_id | uuid | Reference to the pipeline run | Foreign Key |
created_at | timestamp | When the score record was created | — |
modified_at | timestamp | When the record was last modified | — |
created_by | uuid | User who created the record | — |
modified_by | uuid | User who last modified the record | — |
Entity Relationships
| Attribute | References | Relationship |
|---|---|---|
metric_id | Metric.metric_id | Many scores can reference a single metric definition |
asset_id | Asset.asset_id | Many scores can be associated with a single data asset |
metric_detail_id | MetricDetail.metric_detail_id | Links to detailed information about the metric calculation |
run_id | Run.run_id | Associates the score with a specific pipeline execution run |
created_by | User.user_id | References the user who created the score record |
modified_by | User.user_id | References the user who last modified the score record |
Data Flow
When a data quality check is performed, the following steps occur:Score Record Created
A new Score record is written with full context — asset, metric, run, timestamps, and personnel.
Score vs. Exception
The Score entity represents the aggregate result of a quality check (e.g., “5% of records had null order IDs”). Exceptions are the individual failing records themselves. Scores drive dashboards and trends; Exceptions drive remediation workflows.
DQ Score Scope and Mapping
Scores can be computed at multiple levels of granularity:| Scope | Description |
|---|---|
| Column-level | Quality score for a specific attribute (attribute_name is populated) |
| Table-level | Aggregate quality score for the entire table |
| Asset-level | Rolled-up quality score across all metrics for an asset |
| Domain-level | Aggregated quality across all assets in a domain |
| Pipeline-level | Quality score associated with a specific pipeline run |