Monitor
Monitor for the data quality of unity catalog entities such as schema or table.
Monitor object
Monitor for the data quality of unity catalog entities such as schema or table.
- object_typestringPublic Preview
The type of the monitored object. Can be one of the following:
schemaortable.
- object_idstringPublic Preview
The UUID of the request object. It is
schema_idforschema, andtable_idfortable.Find the
schema_idfrom either:- The schema_id of the
Schemasresource. - In Catalog Explorer > select the
schema> go to theDetailstab > theSchema IDfield.
Find the
table_idfrom either:- The table_id of the
Tablesresource. - In Catalog Explorer > select the
table> go to theDetailstab > theTable IDfield.
- The schema_id of the
- anomaly_detection_configobjectPublic Preview
Anomaly Detection Configuration, applicable to
schemaobject types.Show child attributesHide child attributes
- excluded_table_full_namesarray of stringBeta
List of fully qualified table names to exclude from anomaly detection.
- data_profiling_configobjectPublic Preview
Data Profiling Configuration, applicable to
tableobject types. Exactly oneAnalysis Configurationmust be present.Show child attributesHide child attributes
- output_schema_idstringPublic Preview
ID of the schema where output tables are created.
- assets_dirstringPublic Preview
Field for specifying the absolute path to a custom directory to store data-monitoring assets. Normally prepopulated to a default user location via UI and Python APIs.
- inference_logobjectPublic Preview
Analysis Configurationfor monitoring inference log tables.Show child attributesHide child attributes
- problem_typestringPublic Preview
Problem type the model aims to solve.
- timestamp_columnstringPublic Preview
Column for the timestamp.
- granularitiesarray of stringPublic Preview
List of granularities to use when aggregating data into time windows based on their timestamp.
- prediction_columnstringPublic Preview
Column for the prediction.
- label_columnstringPublic Preview
Column for the label.
- model_id_columnstringPublic Preview
Column for the model identifier.
- time_seriesobjectPublic Preview
Analysis Configurationfor monitoring time series tables.Show child attributesHide child attributes
- timestamp_columnstringPublic Preview
Column for the timestamp.
- granularitiesarray of stringPublic Preview
List of granularities to use when aggregating data into time windows based on their timestamp.
- snapshotobjectPublic Preview
Analysis Configurationfor monitoring snapshot tables.
- slicing_exprsarray of stringPublic Preview
List of column expressions to slice data with for targeted analysis. The data is grouped by each expression independently, resulting in a separate slice for each predicate and its complements. For example
slicing_exprs=[“col_1”, “col_2 > 10”]will generate the following slices: two slices forcol_2 > 10(True and False), and one slice per unique value incol1. For high-cardinality columns, only the top 100 unique values by frequency will generate slices.
- custom_metricsarray of objectPublic Preview
Custom metrics.
Show child attributesHide child attributes
- namestringPublic Preview
Name of the metric in the output tables.
- definitionstringPublic Preview
Jinja template for a SQL expression that specifies how to compute the metric. See create metric definition.
- input_columnsarray of stringPublic Preview
A list of column names in the input table the metric should be computed for. Can use
":table"to indicate that the metric needs information from multiple columns.
- output_data_typestringPublic Preview
The output type of the custom metric.
- typestringPublic Preview
The type of the custom metric.
- baseline_table_namestringPublic Preview
Baseline table name. Baseline data is used to compute drift from the data in the monitored
table_name. The baseline table and the monitored table shall have the same schema.
- scheduleobjectPublic Preview
The cron schedule.
Show child attributesHide child attributes
- quartz_cron_expressionstringPublic Preview
The expression that determines when to run the monitor. See examples.
- timezone_idstringPublic Preview
A Java timezone id. The schedule for a job will be resolved with respect to this timezone. See
Java TimeZone <http://docs.oracle.com/javase/7/docs/api/java/util/TimeZone.html>_ for details. The timezone id (e.g.,America/Los_Angeles) in which to evaluate the quartz expression.
- pause_statusstringPublic Preview
Read only field that indicates whether the schedule is paused or not.
- notification_settingsobjectPublic Preview
Field for specifying notification settings.
Show child attributesHide child attributes
- on_failureobjectPublic Preview
Destinations to send notifications on failure/timeout.
Show child attributesHide child attributes
- email_addressesarray of stringPublic Preview
The list of email addresses to send the notification to. A maximum of 5 email addresses is supported.
- skip_builtin_dashboardbooleanPublic Preview
Whether to skip creating a default dashboard summarizing data quality metrics.
- warehouse_idstringPublic Preview
Optional argument to specify the warehouse for dashboard creation. If not specified, the first running warehouse will be used.
- monitored_table_namestringPublic Preview
Unity Catalog table to monitor. Format:
catalog.schema.table_name
- statusstringPublic Preview
The data profiling monitor status.
- latest_monitor_failure_messagestringPublic Preview
The latest error message for a monitor failure.
- profile_metrics_table_namestringPublic Preview
Table that stores profile metrics data. Format:
catalog.schema.table_name.
- drift_metrics_table_namestringPublic Preview
Table that stores drift metrics data. Format:
catalog.schema.table_name.
- dashboard_idstringPublic Preview
Id of dashboard that visualizes the computed metrics. This can be empty if the monitor is in PENDING state.
- monitor_versionint64Public Preview
Represents the current monitor configuration version in use. The version will be represented in a numeric fashion (1,2,3...). The field has flexibility to take on negative values, which can indicate corrupted monitor_version numbers.
- effective_warehouse_idstringPublic Preview
The warehouse for dashboard creation
Get Public Preview
GET
Read a data quality monitor on a Unity Catalog object.
For the table object_type, the caller must have either of the following sets of permissions:
- MANAGE and USE_CATALOG on the table's parent catalog.
- USE_CATALOG on the table's parent catalog, and MANAGE and USE_SCHEMA on the table's parent schema.
- USE_CATALOG on the table's parent catalog, USE_SCHEMA on the table's parent schema, and SELECT on the table.
For the schema object_type, the caller must have either of the following sets of permissions:
- MANAGE and USE_CATALOG on the schema's parent catalog.
- USE_CATALOG on the schema's parent catalog, and USE_SCHEMA on the schema.
The returned information includes configuration values on the entity and parent entity as well as information on assets created by the monitor. Some information (e.g. dashboard) may be filtered out if the caller is in a different workspace than where the monitor was created.
API scopes: dataquality
Parameters
- object_typestringpath
The type of the monitored object. Can be one of the following:
schemaortable.
- object_idstringpath
The UUID of the request object. It is
schema_idforschema, andtable_idfortable.Find the
schema_idfrom either:- The schema_id of the
Schemasresource. - In Catalog Explorer > select the
schema> go to theDetailstab > theSchema IDfield.
Find the
table_idfrom either:- The table_id of the
Tablesresource. - In Catalog Explorer > select the
table> go to theDetailstab > theTable IDfield.
- The schema_id of the
Response
Returns the Monitor object.
List Public Preview
GET
(Unimplemented) List data quality monitors.
API scopes: dataquality
Parameters
- page_tokenstringquery
- page_sizeint32query
Response
Returns a list of Monitor objects.
Create Public Preview
POST
Create a data quality monitor on a Unity Catalog object. The caller must provide either anomaly_detection_config for a schema monitor or data_profiling_config for a table monitor.
For the table object_type, the caller must have either of the following sets of permissions:
- MANAGE and USE_CATALOG on the table's parent catalog, USE_SCHEMA on the table's parent schema, and SELECT on the table
- USE_CATALOG on the table's parent catalog, MANAGE and USE_SCHEMA on the table's parent schema, and SELECT on the table.
- USE_CATALOG on the table's parent catalog, USE_SCHEMA on the table's parent schema, and MANAGE and SELECT on the table.
Workspace assets, such as the dashboard, will be created in the workspace where this call was made.
For the schema object_type, the caller must have either of the following sets of permissions:
- MANAGE and USE_CATALOG on the schema's parent catalog.
- USE_CATALOG on the schema's parent catalog, and MANAGE and USE_SCHEMA on the schema.
API scopes: dataquality
Request body
- monitorobject
The monitor to create.
Show child attributesHide child attributes
- object_typestring
The type of the monitored object. Can be one of the following:
schemaortable.
- object_idstring
The UUID of the request object. It is
schema_idforschema, andtable_idfortable.Find the
schema_idfrom either:- The schema_id of the
Schemasresource. - In Catalog Explorer > select the
schema> go to theDetailstab > theSchema IDfield.
Find the
table_idfrom either:- The table_id of the
Tablesresource. - In Catalog Explorer > select the
table> go to theDetailstab > theTable IDfield.
- The schema_id of the
- anomaly_detection_configobject
Anomaly Detection Configuration, applicable to
schemaobject types.Show child attributesHide child attributes
- excluded_table_full_namesarray of stringBeta
List of fully qualified table names to exclude from anomaly detection.
- data_profiling_configobject
Data Profiling Configuration, applicable to
tableobject types. Exactly oneAnalysis Configurationmust be present.Show child attributesHide child attributes
- output_schema_idstring
ID of the schema where output tables are created.
- assets_dirstring
Field for specifying the absolute path to a custom directory to store data-monitoring assets. Normally prepopulated to a default user location via UI and Python APIs.
- inference_logobjectRequired
Analysis Configurationfor monitoring inference log tables.Show child attributesHide child attributes
- problem_typestring
Problem type the model aims to solve.
- timestamp_columnstring
Column for the timestamp.
- granularitiesarray of string
List of granularities to use when aggregating data into time windows based on their timestamp.
- prediction_columnstring
Column for the prediction.
- label_columnstring
Column for the label.
- model_id_columnstring
Column for the model identifier.
- time_seriesobjectRequired
Analysis Configurationfor monitoring time series tables.Show child attributesHide child attributes
- timestamp_columnstring
Column for the timestamp.
- granularitiesarray of string
List of granularities to use when aggregating data into time windows based on their timestamp.
- snapshotobjectRequired
Analysis Configurationfor monitoring snapshot tables.
- slicing_exprsarray of string
List of column expressions to slice data with for targeted analysis. The data is grouped by each expression independently, resulting in a separate slice for each predicate and its complements. For example
slicing_exprs=[“col_1”, “col_2 > 10”]will generate the following slices: two slices forcol_2 > 10(True and False), and one slice per unique value incol1. For high-cardinality columns, only the top 100 unique values by frequency will generate slices.
- custom_metricsarray of object
Custom metrics.
Show child attributesHide child attributes
- namestring
Name of the metric in the output tables.
- definitionstring
Jinja template for a SQL expression that specifies how to compute the metric. See create metric definition.
- input_columnsarray of string
A list of column names in the input table the metric should be computed for. Can use
":table"to indicate that the metric needs information from multiple columns.
- output_data_typestring
The output type of the custom metric.
- typestring
The type of the custom metric.
- baseline_table_namestring
Baseline table name. Baseline data is used to compute drift from the data in the monitored
table_name. The baseline table and the monitored table shall have the same schema.
- scheduleobject
The cron schedule.
Show child attributesHide child attributes
- quartz_cron_expressionstring
The expression that determines when to run the monitor. See examples.
- timezone_idstring
A Java timezone id. The schedule for a job will be resolved with respect to this timezone. See
Java TimeZone <http://docs.oracle.com/javase/7/docs/api/java/util/TimeZone.html>_ for details. The timezone id (e.g.,America/Los_Angeles) in which to evaluate the quartz expression.
- pause_statusstring
Read only field that indicates whether the schedule is paused or not.
- notification_settingsobject
Field for specifying notification settings.
Show child attributesHide child attributes
- on_failureobject
Destinations to send notifications on failure/timeout.
- skip_builtin_dashboardboolean
Whether to skip creating a default dashboard summarizing data quality metrics.
- warehouse_idstring
Optional argument to specify the warehouse for dashboard creation. If not specified, the first running warehouse will be used.
- monitored_table_namestring
Unity Catalog table to monitor. Format:
catalog.schema.table_name
- statusstring
The data profiling monitor status.
- latest_monitor_failure_messagestring
The latest error message for a monitor failure.
- profile_metrics_table_namestring
Table that stores profile metrics data. Format:
catalog.schema.table_name.
- drift_metrics_table_namestring
Table that stores drift metrics data. Format:
catalog.schema.table_name.
- dashboard_idstring
Id of dashboard that visualizes the computed metrics. This can be empty if the monitor is in PENDING state.
- monitor_versionint64
Represents the current monitor configuration version in use. The version will be represented in a numeric fashion (1,2,3...). The field has flexibility to take on negative values, which can indicate corrupted monitor_version numbers.
- effective_warehouse_idstring
The warehouse for dashboard creation
Response
Returns the Monitor object.
Update Public Preview
PATCH
Update a data quality monitor on Unity Catalog object.
For the table object_type, the caller must have either of the following sets of permissions:
- MANAGE and USE_CATALOG on the table's parent catalog.
- USE_CATALOG on the table's parent catalog, and MANAGE and USE_SCHEMA on the table's parent schema.
- USE_CATALOG on the table's parent catalog, USE_SCHEMA on the table's parent schema, and MANAGE on the table.
For the schema object_type, the caller must have either of the following sets of permissions:
- MANAGE and USE_CATALOG on the schema's parent catalog.
- USE_CATALOG on the schema's parent catalog, and MANAGE and USE_SCHEMA on the schema.
API scopes: dataquality
Parameters
- object_typestringpath
The type of the monitored object. Can be one of the following:
schemaortable.
- object_idstringpath
The UUID of the request object. It is
schema_idforschema, andtable_idfortable.Find the
schema_idfrom either:- The schema_id of the
Schemasresource. - In Catalog Explorer > select the
schema> go to theDetailstab > theSchema IDfield.
Find the
table_idfrom either:- The table_id of the
Tablesresource. - In Catalog Explorer > select the
table> go to theDetailstab > theTable IDfield.
- The schema_id of the
- update_maskstringquery
The field mask to specify which fields to update as a comma-separated list. Example value:
data_profiling_config.custom_metrics,data_profiling_config.schedule.quartz_cron_expression
Request body
- monitorobject
The monitor to update.
Show child attributesHide child attributes
- object_typestring
The type of the monitored object. Can be one of the following:
schemaortable.
- object_idstring
The UUID of the request object. It is
schema_idforschema, andtable_idfortable.Find the
schema_idfrom either:- The schema_id of the
Schemasresource. - In Catalog Explorer > select the
schema> go to theDetailstab > theSchema IDfield.
Find the
table_idfrom either:- The table_id of the
Tablesresource. - In Catalog Explorer > select the
table> go to theDetailstab > theTable IDfield.
- The schema_id of the
- anomaly_detection_configobject
Anomaly Detection Configuration, applicable to
schemaobject types.Show child attributesHide child attributes
- excluded_table_full_namesarray of stringBeta
List of fully qualified table names to exclude from anomaly detection.
- data_profiling_configobject
Data Profiling Configuration, applicable to
tableobject types. Exactly oneAnalysis Configurationmust be present.Show child attributesHide child attributes
- output_schema_idstring
ID of the schema where output tables are created.
- assets_dirstring
Field for specifying the absolute path to a custom directory to store data-monitoring assets. Normally prepopulated to a default user location via UI and Python APIs.
- inference_logobjectRequired
Analysis Configurationfor monitoring inference log tables.Show child attributesHide child attributes
- problem_typestring
Problem type the model aims to solve.
- timestamp_columnstring
Column for the timestamp.
- granularitiesarray of string
List of granularities to use when aggregating data into time windows based on their timestamp.
- prediction_columnstring
Column for the prediction.
- label_columnstring
Column for the label.
- model_id_columnstring
Column for the model identifier.
- time_seriesobjectRequired
Analysis Configurationfor monitoring time series tables.Show child attributesHide child attributes
- timestamp_columnstring
Column for the timestamp.
- granularitiesarray of string
List of granularities to use when aggregating data into time windows based on their timestamp.
- snapshotobjectRequired
Analysis Configurationfor monitoring snapshot tables.
- slicing_exprsarray of string
List of column expressions to slice data with for targeted analysis. The data is grouped by each expression independently, resulting in a separate slice for each predicate and its complements. For example
slicing_exprs=[“col_1”, “col_2 > 10”]will generate the following slices: two slices forcol_2 > 10(True and False), and one slice per unique value incol1. For high-cardinality columns, only the top 100 unique values by frequency will generate slices.
- custom_metricsarray of object
Custom metrics.
Show child attributesHide child attributes
- namestring
Name of the metric in the output tables.
- definitionstring
Jinja template for a SQL expression that specifies how to compute the metric. See create metric definition.
- input_columnsarray of string
A list of column names in the input table the metric should be computed for. Can use
":table"to indicate that the metric needs information from multiple columns.
- output_data_typestring
The output type of the custom metric.
- typestring
The type of the custom metric.
- baseline_table_namestring
Baseline table name. Baseline data is used to compute drift from the data in the monitored
table_name. The baseline table and the monitored table shall have the same schema.
- scheduleobject
The cron schedule.
Show child attributesHide child attributes
- quartz_cron_expressionstring
The expression that determines when to run the monitor. See examples.
- timezone_idstring
A Java timezone id. The schedule for a job will be resolved with respect to this timezone. See
Java TimeZone <http://docs.oracle.com/javase/7/docs/api/java/util/TimeZone.html>_ for details. The timezone id (e.g.,America/Los_Angeles) in which to evaluate the quartz expression.
- pause_statusstring
Read only field that indicates whether the schedule is paused or not.
- notification_settingsobject
Field for specifying notification settings.
Show child attributesHide child attributes
- on_failureobject
Destinations to send notifications on failure/timeout.
- skip_builtin_dashboardboolean
Whether to skip creating a default dashboard summarizing data quality metrics.
- warehouse_idstring
Optional argument to specify the warehouse for dashboard creation. If not specified, the first running warehouse will be used.
- monitored_table_namestring
Unity Catalog table to monitor. Format:
catalog.schema.table_name
- statusstring
The data profiling monitor status.
- latest_monitor_failure_messagestring
The latest error message for a monitor failure.
- profile_metrics_table_namestring
Table that stores profile metrics data. Format:
catalog.schema.table_name.
- drift_metrics_table_namestring
Table that stores drift metrics data. Format:
catalog.schema.table_name.
- dashboard_idstring
Id of dashboard that visualizes the computed metrics. This can be empty if the monitor is in PENDING state.
- monitor_versionint64
Represents the current monitor configuration version in use. The version will be represented in a numeric fashion (1,2,3...). The field has flexibility to take on negative values, which can indicate corrupted monitor_version numbers.
- effective_warehouse_idstring
The warehouse for dashboard creation
Response
Returns the Monitor object.
Delete Public Preview
DELETE
Delete a data quality monitor on Unity Catalog object.
For the table object_type, the caller must have either of the following sets of permissions:
MANAGE and USE_CATALOG on the table's parent catalog.
USE_CATALOG on the table's parent catalog, and MANAGE and USE_SCHEMA on the table's parent schema.
USE_CATALOG on the table's parent catalog, USE_SCHEMA on the table's parent schema, and MANAGE on the table.
Note that the metric tables and dashboard will not be deleted as part of this call; those assets must be manually cleaned up (if desired).
For the schema object_type, the caller must have either of the following sets of permissions:
- MANAGE and USE_CATALOG on the schema's parent catalog.
- USE_CATALOG on the schema's parent catalog, and MANAGE and USE_SCHEMA on the schema.
API scopes: dataquality
Parameters
- object_typestringpath
The type of the monitored object. Can be one of the following:
schemaortable.
- object_idstringpath
The UUID of the request object. It is
schema_idforschema, andtable_idfortable.Find the
schema_idfrom either:- The schema_id of the
Schemasresource. - In Catalog Explorer > select the
schema> go to theDetailstab > theSchema IDfield.
Find the
table_idfrom either:- The table_id of the
Tablesresource. - In Catalog Explorer > select the
table> go to theDetailstab > theTable IDfield.
- The schema_id of the