2026/07/27 - AWS Glue - 1 new8 updated api methods
Changes Adds BatchGetDataQualityRulesetEvaluationRun API to retrieve multiple runs in one call, ObservationScope and ObservationMode parameters for anomaly detection, writing evaluation results to Data Catalog tables, and custom log group paths for recommendation runs.
Retrieves the details of multiple evaluation runs in a single request.
See also: AWS API Documentation
Request Syntax
client.batch_get_data_quality_ruleset_evaluation_run(
RunIds=[
'string',
]
)
list
[REQUIRED]
A list of unique run identifiers for the evaluation runs to retrieve.
(string) --
dict
Response Syntax
{
'Runs': [
{
'RunId': 'string',
'DataSource': {
'GlueTable': {
'DatabaseName': 'string',
'TableName': 'string',
'CatalogId': 'string',
'ConnectionName': 'string',
'AdditionalOptions': {
'string': 'string'
}
},
'DataQualityGlueTable': {
'DatabaseName': 'string',
'TableName': 'string',
'CatalogId': 'string',
'ConnectionName': 'string',
'AdditionalOptions': {
'string': 'string'
},
'PreProcessingQuery': 'string'
}
},
'Role': 'string',
'NumberOfWorkers': 123,
'Timeout': 123,
'AdditionalRunOptions': {
'CloudWatchMetricsEnabled': True|False,
'ResultsS3Prefix': 'string',
'CompositeRuleEvaluationMethod': 'COLUMN'|'ROW',
'CustomLogGroupPrefix': 'string',
'RowLevelResults': {
'MaxRowsToWrite': 123,
'ResultType': 'ALL'|'PASSED_ONLY'|'FAILED_ONLY',
'CatalogTableConfig': {
'DatabaseName': 'string',
'TableName': 'string',
'S3Location': 'string',
'CatalogId': 'string'
}
},
'ProfilingResults': {
'WriteProfilingResultsEnabled': True|False,
'CatalogTableConfig': {
'DatabaseName': 'string',
'TableName': 'string',
'S3Location': 'string',
'CatalogId': 'string'
},
'DistributionResults': {
'WriteDistributionResultsEnabled': True|False,
'CatalogTableConfig': {
'DatabaseName': 'string',
'TableName': 'string',
'S3Location': 'string',
'CatalogId': 'string'
}
}
},
'ObservationScope': 'ALL'|'NONE',
'ObservationMode': 'SCHEDULED'|'FIXED',
'DataQualityRuleResults': {
'WriteDataQualityRuleResultsEnabled': True|False,
'CatalogTableConfig': {
'DatabaseName': 'string',
'TableName': 'string',
'S3Location': 'string',
'CatalogId': 'string'
}
},
'ObservationResults': {
'WriteObservationResultsEnabled': True|False,
'CatalogTableConfig': {
'DatabaseName': 'string',
'TableName': 'string',
'S3Location': 'string',
'CatalogId': 'string'
}
}
},
'Status': 'STARTING'|'RUNNING'|'STOPPING'|'STOPPED'|'SUCCEEDED'|'FAILED'|'TIMEOUT',
'ErrorString': 'string',
'StartedOn': datetime(2015, 1, 1),
'LastModifiedOn': datetime(2015, 1, 1),
'CompletedOn': datetime(2015, 1, 1),
'ExecutionTime': 123,
'RulesetNames': [
'string',
],
'ResultIds': [
'string',
],
'AdditionalDataSources': {
'string': {
'GlueTable': {
'DatabaseName': 'string',
'TableName': 'string',
'CatalogId': 'string',
'ConnectionName': 'string',
'AdditionalOptions': {
'string': 'string'
}
},
'DataQualityGlueTable': {
'DatabaseName': 'string',
'TableName': 'string',
'CatalogId': 'string',
'ConnectionName': 'string',
'AdditionalOptions': {
'string': 'string'
},
'PreProcessingQuery': 'string'
}
}
}
},
],
'RunsNotFound': [
'string',
]
}
Response Structure
(dict) --
Runs (list) --
A list of evaluation run details for the requested run IDs.
(dict) --
The details of a data quality ruleset evaluation run.
RunId (string) --
The unique run identifier associated with this run.
DataSource (dict) --
A data source (an Glue table) for which you want data quality results.
GlueTable (dict) --
An Glue table.
DatabaseName (string) --
A database name in the Glue Data Catalog.
TableName (string) --
A table name in the Glue Data Catalog.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ConnectionName (string) --
The name of the connection to the Glue Data Catalog.
AdditionalOptions (dict) --
Additional options for the table. Currently there are two keys supported:
pushDownPredicate: to filter on partitions without having to list and read all the files in your dataset.
catalogPartitionPredicate: to use server-side partition pruning using partition indexes in the Glue Data Catalog.
(string) --
(string) --
DataQualityGlueTable (dict) --
An Glue table for Data Quality Operations.
DatabaseName (string) --
A database name in the Glue Data Catalog.
TableName (string) --
A table name in the Glue Data Catalog.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ConnectionName (string) --
The name of the connection to the Glue Data Catalog.
AdditionalOptions (dict) --
Additional options for the table. Currently there are two keys supported:
pushDownPredicate: to filter on partitions without having to list and read all the files in your dataset.
catalogPartitionPredicate: to use server-side partition pruning using partition indexes in the Glue Data Catalog.
(string) --
(string) --
PreProcessingQuery (string) --
SQL Query of SparkSQL format that can be used to pre-process the data for the table in Glue Data Catalog, before running the Data Quality Operation.
Role (string) --
An IAM role supplied to encrypt the results of the run.
NumberOfWorkers (integer) --
The number of G.1X workers to be used in the run. The default is 5.
Timeout (integer) --
The timeout for a run in minutes. This is the maximum time that a run can consume resources before it is terminated and enters TIMEOUT status. The default is 2,880 minutes (48 hours).
AdditionalRunOptions (dict) --
Additional run options you can specify for an evaluation run.
CloudWatchMetricsEnabled (boolean) --
Whether or not to enable CloudWatch metrics.
ResultsS3Prefix (string) --
Prefix for Amazon S3 to store results.
CompositeRuleEvaluationMethod (string) --
Set the evaluation method for composite rules in the ruleset to ROW/COLUMN
CustomLogGroupPrefix (string) --
A custom prefix for the CloudWatch log group names. When specified, evaluation run logs are written to <CustomLogGroupPrefix>/error and <CustomLogGroupPrefix>/output instead of the default /aws-glue/data-quality/error and /aws-glue/data-quality/output log groups.
RowLevelResults (dict) --
The configuration for writing row-level evaluation results to a Glue Data Catalog table.
MaxRowsToWrite (integer) --
The maximum number of rows to write in the results.
ResultType (string) --
The result type to include in the row-level results output.
CatalogTableConfig (dict) --
The Glue Data Catalog table configuration for storing the results.
DatabaseName (string) --
The name of the database in the Glue Data Catalog.
TableName (string) --
The name of the table in the Glue Data Catalog.
S3Location (string) --
The Amazon S3 location for storing the results.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ProfilingResults (dict) --
The configuration for writing profiling results to a Glue Data Catalog table.
WriteProfilingResultsEnabled (boolean) --
Set to true to write profiling results.
CatalogTableConfig (dict) --
The Glue Data Catalog table configuration for storing the profiling results.
DatabaseName (string) --
The name of the database in the Glue Data Catalog.
TableName (string) --
The name of the table in the Glue Data Catalog.
S3Location (string) --
The Amazon S3 location for storing the results.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
DistributionResults (dict) --
The configuration for writing distribution results.
WriteDistributionResultsEnabled (boolean) --
Set to true to write distribution results.
CatalogTableConfig (dict) --
The Glue Data Catalog table configuration for storing the distribution results.
DatabaseName (string) --
The name of the database in the Glue Data Catalog.
TableName (string) --
The name of the table in the Glue Data Catalog.
S3Location (string) --
The Amazon S3 location for storing the results.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ObservationScope (string) --
The scope of the observation for the evaluation run. Specifies whether anomaly detection is enabled or disabled.
ObservationMode (string) --
The observation mode for the evaluation run. Specifies how anomaly detection bounds are calculated.
DataQualityRuleResults (dict) --
The configuration for writing rule results to a Glue Data Catalog table.
WriteDataQualityRuleResultsEnabled (boolean) --
Set to true to write data quality rule results.
CatalogTableConfig (dict) --
The Glue Data Catalog table configuration for storing the rule results.
DatabaseName (string) --
The name of the database in the Glue Data Catalog.
TableName (string) --
The name of the table in the Glue Data Catalog.
S3Location (string) --
The Amazon S3 location for storing the results.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ObservationResults (dict) --
The configuration for writing observation results to a Glue Data Catalog table.
WriteObservationResultsEnabled (boolean) --
Set to true to write observation results.
CatalogTableConfig (dict) --
The Glue Data Catalog table configuration for storing the observation results.
DatabaseName (string) --
The name of the database in the Glue Data Catalog.
TableName (string) --
The name of the table in the Glue Data Catalog.
S3Location (string) --
The Amazon S3 location for storing the results.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
Status (string) --
The status for this run.
ErrorString (string) --
The error strings that are associated with the run.
StartedOn (datetime) --
The date and time when this run started.
LastModifiedOn (datetime) --
A timestamp. The last point in time when this run was modified.
CompletedOn (datetime) --
The date and time when this run was completed.
ExecutionTime (integer) --
The amount of time (in seconds) that the run consumed resources.
RulesetNames (list) --
A list of ruleset names for the run.
(string) --
ResultIds (list) --
A list of result IDs for the data quality results for the run.
(string) --
AdditionalDataSources (dict) --
A map of reference strings to additional data sources you can specify for an evaluation run.
(string) --
(dict) --
A data source (an Glue table) for which you want data quality results.
GlueTable (dict) --
An Glue table.
DatabaseName (string) --
A database name in the Glue Data Catalog.
TableName (string) --
A table name in the Glue Data Catalog.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ConnectionName (string) --
The name of the connection to the Glue Data Catalog.
AdditionalOptions (dict) --
Additional options for the table. Currently there are two keys supported:
pushDownPredicate: to filter on partitions without having to list and read all the files in your dataset.
catalogPartitionPredicate: to use server-side partition pruning using partition indexes in the Glue Data Catalog.
(string) --
(string) --
DataQualityGlueTable (dict) --
An Glue table for Data Quality Operations.
DatabaseName (string) --
A database name in the Glue Data Catalog.
TableName (string) --
A table name in the Glue Data Catalog.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ConnectionName (string) --
The name of the connection to the Glue Data Catalog.
AdditionalOptions (dict) --
Additional options for the table. Currently there are two keys supported:
pushDownPredicate: to filter on partitions without having to list and read all the files in your dataset.
catalogPartitionPredicate: to use server-side partition pruning using partition indexes in the Glue Data Catalog.
(string) --
(string) --
PreProcessingQuery (string) --
SQL Query of SparkSQL format that can be used to pre-process the data for the table in Glue Data Catalog, before running the Data Quality Operation.
RunsNotFound (list) --
A list of run IDs that were not found.
(string) --
{'Results': {'AnalyzerResults': {'EvaluatedDistributions': {'string': {'BinEdges': ['string'],
'Count': ['integer'],
'DataType': 'string'}}}}}
Retrieves a list of data quality results for the specified result IDs.
See also: AWS API Documentation
Request Syntax
client.batch_get_data_quality_result(
ResultIds=[
'string',
]
)
list
[REQUIRED]
A list of unique result IDs for the data quality results.
(string) --
dict
Response Syntax
{
'Results': [
{
'ResultId': 'string',
'ProfileId': 'string',
'Score': 123.0,
'DataSource': {
'GlueTable': {
'DatabaseName': 'string',
'TableName': 'string',
'CatalogId': 'string',
'ConnectionName': 'string',
'AdditionalOptions': {
'string': 'string'
}
},
'DataQualityGlueTable': {
'DatabaseName': 'string',
'TableName': 'string',
'CatalogId': 'string',
'ConnectionName': 'string',
'AdditionalOptions': {
'string': 'string'
},
'PreProcessingQuery': 'string'
}
},
'RulesetName': 'string',
'EvaluationContext': 'string',
'StartedOn': datetime(2015, 1, 1),
'CompletedOn': datetime(2015, 1, 1),
'JobName': 'string',
'JobRunId': 'string',
'RulesetEvaluationRunId': 'string',
'RuleResults': [
{
'Name': 'string',
'Description': 'string',
'EvaluationMessage': 'string',
'Result': 'PASS'|'FAIL'|'ERROR',
'EvaluatedMetrics': {
'string': 123.0
},
'EvaluatedRule': 'string',
'RuleMetrics': {
'string': 123.0
},
'Labels': {
'string': 'string'
}
},
],
'AnalyzerResults': [
{
'Name': 'string',
'Description': 'string',
'EvaluationMessage': 'string',
'EvaluatedMetrics': {
'string': 123.0
},
'EvaluatedDistributions': {
'string': {
'BinEdges': [
'string',
],
'Count': [
123,
],
'DataType': 'string'
}
}
},
],
'Observations': [
{
'Description': 'string',
'MetricBasedObservation': {
'MetricName': 'string',
'StatisticId': 'string',
'MetricValues': {
'ActualValue': 123.0,
'ExpectedValue': 123.0,
'LowerLimit': 123.0,
'UpperLimit': 123.0
},
'NewRules': [
'string',
]
}
},
],
'AggregatedMetrics': {
'TotalRowsProcessed': 123.0,
'TotalRowsPassed': 123.0,
'TotalRowsFailed': 123.0,
'TotalRulesProcessed': 123.0,
'TotalRulesPassed': 123.0,
'TotalRulesFailed': 123.0
}
},
],
'ResultsNotFound': [
'string',
]
}
Response Structure
(dict) --
Results (list) --
A list of DataQualityResult objects representing the data quality results.
(dict) --
Describes a data quality result.
ResultId (string) --
A unique result ID for the data quality result.
ProfileId (string) --
The Profile ID for the data quality result.
Score (float) --
An aggregate data quality score. Represents the ratio of rules that passed to the total number of rules.
DataSource (dict) --
The table associated with the data quality result, if any.
GlueTable (dict) --
An Glue table.
DatabaseName (string) --
A database name in the Glue Data Catalog.
TableName (string) --
A table name in the Glue Data Catalog.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ConnectionName (string) --
The name of the connection to the Glue Data Catalog.
AdditionalOptions (dict) --
Additional options for the table. Currently there are two keys supported:
pushDownPredicate: to filter on partitions without having to list and read all the files in your dataset.
catalogPartitionPredicate: to use server-side partition pruning using partition indexes in the Glue Data Catalog.
(string) --
(string) --
DataQualityGlueTable (dict) --
An Glue table for Data Quality Operations.
DatabaseName (string) --
A database name in the Glue Data Catalog.
TableName (string) --
A table name in the Glue Data Catalog.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ConnectionName (string) --
The name of the connection to the Glue Data Catalog.
AdditionalOptions (dict) --
Additional options for the table. Currently there are two keys supported:
pushDownPredicate: to filter on partitions without having to list and read all the files in your dataset.
catalogPartitionPredicate: to use server-side partition pruning using partition indexes in the Glue Data Catalog.
(string) --
(string) --
PreProcessingQuery (string) --
SQL Query of SparkSQL format that can be used to pre-process the data for the table in Glue Data Catalog, before running the Data Quality Operation.
RulesetName (string) --
The name of the ruleset associated with the data quality result.
EvaluationContext (string) --
In the context of a job in Glue Studio, each node in the canvas is typically assigned some sort of name and data quality nodes will have names. In the case of multiple nodes, the evaluationContext can differentiate the nodes.
StartedOn (datetime) --
The date and time when this data quality run started.
CompletedOn (datetime) --
The date and time when this data quality run completed.
JobName (string) --
The job name associated with the data quality result, if any.
JobRunId (string) --
The job run ID associated with the data quality result, if any.
RulesetEvaluationRunId (string) --
The unique run ID for the ruleset evaluation for this data quality result.
RuleResults (list) --
A list of DataQualityRuleResult objects representing the results for each rule.
(dict) --
Describes the result of the evaluation of a data quality rule.
Name (string) --
The name of the data quality rule.
Description (string) --
A description of the data quality rule.
EvaluationMessage (string) --
An evaluation message.
Result (string) --
A pass or fail status for the rule.
EvaluatedMetrics (dict) --
A map of metrics associated with the evaluation of the rule.
(string) --
(float) --
EvaluatedRule (string) --
The evaluated rule.
RuleMetrics (dict) --
A map containing metrics associated with the evaluation of the rule based on row-level results.
(string) --
(float) --
Labels (dict) --
A map containing labels assigned to the data quality rule.
(string) --
(string) --
AnalyzerResults (list) --
A list of DataQualityAnalyzerResult objects representing the results for each analyzer.
(dict) --
Describes the result of the evaluation of a data quality analyzer.
Name (string) --
The name of the data quality analyzer.
Description (string) --
A description of the data quality analyzer.
EvaluationMessage (string) --
An evaluation message.
EvaluatedMetrics (dict) --
A map of metrics associated with the evaluation of the analyzer.
(string) --
(float) --
EvaluatedDistributions (dict) --
A map of distribution metrics associated with the evaluation of the analyzer.
(string) --
(dict) --
The distribution data for a statistic.
BinEdges (list) --
The bin edge values for the distribution.
(string) --
Count (list) --
The frequency count for each bin in the distribution.
(integer) --
DataType (string) --
The data type of the column for the distribution.
Observations (list) --
A list of DataQualityObservation objects representing the observations generated after evaluating the rules and analyzers.
(dict) --
Describes the observation generated after evaluating the rules and analyzers.
Description (string) --
A description of the data quality observation.
MetricBasedObservation (dict) --
An object of type MetricBasedObservation representing the observation that is based on evaluated data quality metrics.
MetricName (string) --
The name of the data quality metric used for generating the observation.
StatisticId (string) --
The Statistic ID.
MetricValues (dict) --
An object of type DataQualityMetricValues representing the analysis of the data quality metric value.
ActualValue (float) --
The actual value of the data quality metric.
ExpectedValue (float) --
The expected value of the data quality metric according to the analysis of historical data.
LowerLimit (float) --
The lower limit of the data quality metric value according to the analysis of historical data.
UpperLimit (float) --
The upper limit of the data quality metric value according to the analysis of historical data.
NewRules (list) --
A list of new data quality rules generated as part of the observation based on the data quality metric value.
(string) --
AggregatedMetrics (dict) --
A summary of DataQualityAggregatedMetrics objects showing the total counts of processed rows and rules, including their pass/fail statistics based on row-level results.
TotalRowsProcessed (float) --
The total number of rows that were processed during the data quality evaluation.
TotalRowsPassed (float) --
The total number of rows that passed all applicable data quality rules.
TotalRowsFailed (float) --
The total number of rows that failed one or more data quality rules.
TotalRulesProcessed (float) --
The total number of data quality rules that were evaluated.
TotalRulesPassed (float) --
The total number of data quality rules that passed their evaluation criteria.
TotalRulesFailed (float) --
The total number of data quality rules that failed their evaluation criteria.
ResultsNotFound (list) --
A list of result IDs for which results were not found.
(string) --
{'AnalyzerResults': {'EvaluatedDistributions': {'string': {'BinEdges': ['string'],
'Count': ['integer'],
'DataType': 'string'}}}}
Retrieves the result of a data quality rule evaluation.
See also: AWS API Documentation
Request Syntax
client.get_data_quality_result(
ResultId='string'
)
string
[REQUIRED]
A unique result ID for the data quality result.
dict
Response Syntax
{
'ResultId': 'string',
'ProfileId': 'string',
'Score': 123.0,
'DataSource': {
'GlueTable': {
'DatabaseName': 'string',
'TableName': 'string',
'CatalogId': 'string',
'ConnectionName': 'string',
'AdditionalOptions': {
'string': 'string'
}
},
'DataQualityGlueTable': {
'DatabaseName': 'string',
'TableName': 'string',
'CatalogId': 'string',
'ConnectionName': 'string',
'AdditionalOptions': {
'string': 'string'
},
'PreProcessingQuery': 'string'
}
},
'RulesetName': 'string',
'EvaluationContext': 'string',
'StartedOn': datetime(2015, 1, 1),
'CompletedOn': datetime(2015, 1, 1),
'JobName': 'string',
'JobRunId': 'string',
'RulesetEvaluationRunId': 'string',
'RuleResults': [
{
'Name': 'string',
'Description': 'string',
'EvaluationMessage': 'string',
'Result': 'PASS'|'FAIL'|'ERROR',
'EvaluatedMetrics': {
'string': 123.0
},
'EvaluatedRule': 'string',
'RuleMetrics': {
'string': 123.0
},
'Labels': {
'string': 'string'
}
},
],
'AnalyzerResults': [
{
'Name': 'string',
'Description': 'string',
'EvaluationMessage': 'string',
'EvaluatedMetrics': {
'string': 123.0
},
'EvaluatedDistributions': {
'string': {
'BinEdges': [
'string',
],
'Count': [
123,
],
'DataType': 'string'
}
}
},
],
'Observations': [
{
'Description': 'string',
'MetricBasedObservation': {
'MetricName': 'string',
'StatisticId': 'string',
'MetricValues': {
'ActualValue': 123.0,
'ExpectedValue': 123.0,
'LowerLimit': 123.0,
'UpperLimit': 123.0
},
'NewRules': [
'string',
]
}
},
],
'AggregatedMetrics': {
'TotalRowsProcessed': 123.0,
'TotalRowsPassed': 123.0,
'TotalRowsFailed': 123.0,
'TotalRulesProcessed': 123.0,
'TotalRulesPassed': 123.0,
'TotalRulesFailed': 123.0
}
}
Response Structure
(dict) --
The response for the data quality result.
ResultId (string) --
A unique result ID for the data quality result.
ProfileId (string) --
The Profile ID for the data quality result.
Score (float) --
An aggregate data quality score. Represents the ratio of rules that passed to the total number of rules.
DataSource (dict) --
The table associated with the data quality result, if any.
GlueTable (dict) --
An Glue table.
DatabaseName (string) --
A database name in the Glue Data Catalog.
TableName (string) --
A table name in the Glue Data Catalog.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ConnectionName (string) --
The name of the connection to the Glue Data Catalog.
AdditionalOptions (dict) --
Additional options for the table. Currently there are two keys supported:
pushDownPredicate: to filter on partitions without having to list and read all the files in your dataset.
catalogPartitionPredicate: to use server-side partition pruning using partition indexes in the Glue Data Catalog.
(string) --
(string) --
DataQualityGlueTable (dict) --
An Glue table for Data Quality Operations.
DatabaseName (string) --
A database name in the Glue Data Catalog.
TableName (string) --
A table name in the Glue Data Catalog.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ConnectionName (string) --
The name of the connection to the Glue Data Catalog.
AdditionalOptions (dict) --
Additional options for the table. Currently there are two keys supported:
pushDownPredicate: to filter on partitions without having to list and read all the files in your dataset.
catalogPartitionPredicate: to use server-side partition pruning using partition indexes in the Glue Data Catalog.
(string) --
(string) --
PreProcessingQuery (string) --
SQL Query of SparkSQL format that can be used to pre-process the data for the table in Glue Data Catalog, before running the Data Quality Operation.
RulesetName (string) --
The name of the ruleset associated with the data quality result.
EvaluationContext (string) --
In the context of a job in Glue Studio, each node in the canvas is typically assigned some sort of name and data quality nodes will have names. In the case of multiple nodes, the evaluationContext can differentiate the nodes.
StartedOn (datetime) --
The date and time when the run for this data quality result started.
CompletedOn (datetime) --
The date and time when the run for this data quality result was completed.
JobName (string) --
The job name associated with the data quality result, if any.
JobRunId (string) --
The job run ID associated with the data quality result, if any.
RulesetEvaluationRunId (string) --
The unique run ID associated with the ruleset evaluation.
RuleResults (list) --
A list of DataQualityRuleResult objects representing the results for each rule.
(dict) --
Describes the result of the evaluation of a data quality rule.
Name (string) --
The name of the data quality rule.
Description (string) --
A description of the data quality rule.
EvaluationMessage (string) --
An evaluation message.
Result (string) --
A pass or fail status for the rule.
EvaluatedMetrics (dict) --
A map of metrics associated with the evaluation of the rule.
(string) --
(float) --
EvaluatedRule (string) --
The evaluated rule.
RuleMetrics (dict) --
A map containing metrics associated with the evaluation of the rule based on row-level results.
(string) --
(float) --
Labels (dict) --
A map containing labels assigned to the data quality rule.
(string) --
(string) --
AnalyzerResults (list) --
A list of DataQualityAnalyzerResult objects representing the results for each analyzer.
(dict) --
Describes the result of the evaluation of a data quality analyzer.
Name (string) --
The name of the data quality analyzer.
Description (string) --
A description of the data quality analyzer.
EvaluationMessage (string) --
An evaluation message.
EvaluatedMetrics (dict) --
A map of metrics associated with the evaluation of the analyzer.
(string) --
(float) --
EvaluatedDistributions (dict) --
A map of distribution metrics associated with the evaluation of the analyzer.
(string) --
(dict) --
The distribution data for a statistic.
BinEdges (list) --
The bin edge values for the distribution.
(string) --
Count (list) --
The frequency count for each bin in the distribution.
(integer) --
DataType (string) --
The data type of the column for the distribution.
Observations (list) --
A list of DataQualityObservation objects representing the observations generated after evaluating the rules and analyzers.
(dict) --
Describes the observation generated after evaluating the rules and analyzers.
Description (string) --
A description of the data quality observation.
MetricBasedObservation (dict) --
An object of type MetricBasedObservation representing the observation that is based on evaluated data quality metrics.
MetricName (string) --
The name of the data quality metric used for generating the observation.
StatisticId (string) --
The Statistic ID.
MetricValues (dict) --
An object of type DataQualityMetricValues representing the analysis of the data quality metric value.
ActualValue (float) --
The actual value of the data quality metric.
ExpectedValue (float) --
The expected value of the data quality metric according to the analysis of historical data.
LowerLimit (float) --
The lower limit of the data quality metric value according to the analysis of historical data.
UpperLimit (float) --
The upper limit of the data quality metric value according to the analysis of historical data.
NewRules (list) --
A list of new data quality rules generated as part of the observation based on the data quality metric value.
(string) --
AggregatedMetrics (dict) --
A summary of DataQualityAggregatedMetrics objects showing the total counts of processed rows and rules, including their pass/fail statistics based on row-level results.
TotalRowsProcessed (float) --
The total number of rows that were processed during the data quality evaluation.
TotalRowsPassed (float) --
The total number of rows that passed all applicable data quality rules.
TotalRowsFailed (float) --
The total number of rows that failed one or more data quality rules.
TotalRulesProcessed (float) --
The total number of data quality rules that were evaluated.
TotalRulesPassed (float) --
The total number of data quality rules that passed their evaluation criteria.
TotalRulesFailed (float) --
The total number of data quality rules that failed their evaluation criteria.
{'AdditionalRunOptions': {'CustomLogGroupPrefix': 'string'}}
Gets the specified recommendation run that was used to generate rules.
See also: AWS API Documentation
Request Syntax
client.get_data_quality_rule_recommendation_run(
RunId='string'
)
string
[REQUIRED]
The unique run identifier associated with this run.
dict
Response Syntax
{
'RunId': 'string',
'DataSource': {
'GlueTable': {
'DatabaseName': 'string',
'TableName': 'string',
'CatalogId': 'string',
'ConnectionName': 'string',
'AdditionalOptions': {
'string': 'string'
}
},
'DataQualityGlueTable': {
'DatabaseName': 'string',
'TableName': 'string',
'CatalogId': 'string',
'ConnectionName': 'string',
'AdditionalOptions': {
'string': 'string'
},
'PreProcessingQuery': 'string'
}
},
'Role': 'string',
'NumberOfWorkers': 123,
'Timeout': 123,
'Status': 'STARTING'|'RUNNING'|'STOPPING'|'STOPPED'|'SUCCEEDED'|'FAILED'|'TIMEOUT',
'ErrorString': 'string',
'StartedOn': datetime(2015, 1, 1),
'LastModifiedOn': datetime(2015, 1, 1),
'CompletedOn': datetime(2015, 1, 1),
'ExecutionTime': 123,
'RecommendedRuleset': 'string',
'CreatedRulesetName': 'string',
'DataQualitySecurityConfiguration': 'string',
'AdditionalRunOptions': {
'CustomLogGroupPrefix': 'string'
}
}
Response Structure
(dict) --
The response for the Data Quality rule recommendation run.
RunId (string) --
The unique run identifier associated with this run.
DataSource (dict) --
The data source (an Glue table) associated with this run.
GlueTable (dict) --
An Glue table.
DatabaseName (string) --
A database name in the Glue Data Catalog.
TableName (string) --
A table name in the Glue Data Catalog.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ConnectionName (string) --
The name of the connection to the Glue Data Catalog.
AdditionalOptions (dict) --
Additional options for the table. Currently there are two keys supported:
pushDownPredicate: to filter on partitions without having to list and read all the files in your dataset.
catalogPartitionPredicate: to use server-side partition pruning using partition indexes in the Glue Data Catalog.
(string) --
(string) --
DataQualityGlueTable (dict) --
An Glue table for Data Quality Operations.
DatabaseName (string) --
A database name in the Glue Data Catalog.
TableName (string) --
A table name in the Glue Data Catalog.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ConnectionName (string) --
The name of the connection to the Glue Data Catalog.
AdditionalOptions (dict) --
Additional options for the table. Currently there are two keys supported:
pushDownPredicate: to filter on partitions without having to list and read all the files in your dataset.
catalogPartitionPredicate: to use server-side partition pruning using partition indexes in the Glue Data Catalog.
(string) --
(string) --
PreProcessingQuery (string) --
SQL Query of SparkSQL format that can be used to pre-process the data for the table in Glue Data Catalog, before running the Data Quality Operation.
Role (string) --
An IAM role supplied to encrypt the results of the run.
NumberOfWorkers (integer) --
The number of G.1X workers to be used in the run. The default is 5.
Timeout (integer) --
The timeout for a run in minutes. This is the maximum time that a run can consume resources before it is terminated and enters TIMEOUT status. The default is 2,880 minutes (48 hours).
Status (string) --
The status for this run.
ErrorString (string) --
The error strings that are associated with the run.
StartedOn (datetime) --
The date and time when this run started.
LastModifiedOn (datetime) --
A timestamp. The last point in time when this data quality rule recommendation run was modified.
CompletedOn (datetime) --
The date and time when this run was completed.
ExecutionTime (integer) --
The amount of time (in seconds) that the run consumed resources.
RecommendedRuleset (string) --
When a start rule recommendation run completes, it creates a recommended ruleset (a set of rules). This member has those rules in Data Quality Definition Language (DQDL) format.
CreatedRulesetName (string) --
The name of the ruleset that was created by the run.
DataQualitySecurityConfiguration (string) --
The name of the security configuration created with the data quality encryption option.
AdditionalRunOptions (dict) --
Additional run options you can specify for a recommendation run.
CustomLogGroupPrefix (string) --
A custom prefix for the CloudWatch log group names. When specified, recommendation run logs are written to <CustomLogGroupPrefix>/error and <CustomLogGroupPrefix>/output instead of the default /aws-glue/data-quality/error and /aws-glue/data-quality/output log groups.
{'AdditionalRunOptions': {'DataQualityRuleResults': {'CatalogTableConfig': {'CatalogId': 'string',
'DatabaseName': 'string',
'S3Location': 'string',
'TableName': 'string'},
'WriteDataQualityRuleResultsEnabled': 'boolean'},
'ObservationMode': 'SCHEDULED | FIXED',
'ObservationResults': {'CatalogTableConfig': {'CatalogId': 'string',
'DatabaseName': 'string',
'S3Location': 'string',
'TableName': 'string'},
'WriteObservationResultsEnabled': 'boolean'},
'ObservationScope': 'ALL | NONE',
'ProfilingResults': {'CatalogTableConfig': {'CatalogId': 'string',
'DatabaseName': 'string',
'S3Location': 'string',
'TableName': 'string'},
'DistributionResults': {'CatalogTableConfig': {'CatalogId': 'string',
'DatabaseName': 'string',
'S3Location': 'string',
'TableName': 'string'},
'WriteDistributionResultsEnabled': 'boolean'},
'WriteProfilingResultsEnabled': 'boolean'},
'RowLevelResults': {'CatalogTableConfig': {'CatalogId': 'string',
'DatabaseName': 'string',
'S3Location': 'string',
'TableName': 'string'},
'MaxRowsToWrite': 'integer',
'ResultType': 'ALL | PASSED_ONLY '
'| FAILED_ONLY'}}}
Retrieves a specific run where a ruleset is evaluated against a data source.
See also: AWS API Documentation
Request Syntax
client.get_data_quality_ruleset_evaluation_run(
RunId='string'
)
string
[REQUIRED]
The unique run identifier associated with this run.
dict
Response Syntax
{
'RunId': 'string',
'DataSource': {
'GlueTable': {
'DatabaseName': 'string',
'TableName': 'string',
'CatalogId': 'string',
'ConnectionName': 'string',
'AdditionalOptions': {
'string': 'string'
}
},
'DataQualityGlueTable': {
'DatabaseName': 'string',
'TableName': 'string',
'CatalogId': 'string',
'ConnectionName': 'string',
'AdditionalOptions': {
'string': 'string'
},
'PreProcessingQuery': 'string'
}
},
'Role': 'string',
'NumberOfWorkers': 123,
'Timeout': 123,
'AdditionalRunOptions': {
'CloudWatchMetricsEnabled': True|False,
'ResultsS3Prefix': 'string',
'CompositeRuleEvaluationMethod': 'COLUMN'|'ROW',
'CustomLogGroupPrefix': 'string',
'RowLevelResults': {
'MaxRowsToWrite': 123,
'ResultType': 'ALL'|'PASSED_ONLY'|'FAILED_ONLY',
'CatalogTableConfig': {
'DatabaseName': 'string',
'TableName': 'string',
'S3Location': 'string',
'CatalogId': 'string'
}
},
'ProfilingResults': {
'WriteProfilingResultsEnabled': True|False,
'CatalogTableConfig': {
'DatabaseName': 'string',
'TableName': 'string',
'S3Location': 'string',
'CatalogId': 'string'
},
'DistributionResults': {
'WriteDistributionResultsEnabled': True|False,
'CatalogTableConfig': {
'DatabaseName': 'string',
'TableName': 'string',
'S3Location': 'string',
'CatalogId': 'string'
}
}
},
'ObservationScope': 'ALL'|'NONE',
'ObservationMode': 'SCHEDULED'|'FIXED',
'DataQualityRuleResults': {
'WriteDataQualityRuleResultsEnabled': True|False,
'CatalogTableConfig': {
'DatabaseName': 'string',
'TableName': 'string',
'S3Location': 'string',
'CatalogId': 'string'
}
},
'ObservationResults': {
'WriteObservationResultsEnabled': True|False,
'CatalogTableConfig': {
'DatabaseName': 'string',
'TableName': 'string',
'S3Location': 'string',
'CatalogId': 'string'
}
}
},
'Status': 'STARTING'|'RUNNING'|'STOPPING'|'STOPPED'|'SUCCEEDED'|'FAILED'|'TIMEOUT',
'ErrorString': 'string',
'StartedOn': datetime(2015, 1, 1),
'LastModifiedOn': datetime(2015, 1, 1),
'CompletedOn': datetime(2015, 1, 1),
'ExecutionTime': 123,
'RulesetNames': [
'string',
],
'ResultIds': [
'string',
],
'AdditionalDataSources': {
'string': {
'GlueTable': {
'DatabaseName': 'string',
'TableName': 'string',
'CatalogId': 'string',
'ConnectionName': 'string',
'AdditionalOptions': {
'string': 'string'
}
},
'DataQualityGlueTable': {
'DatabaseName': 'string',
'TableName': 'string',
'CatalogId': 'string',
'ConnectionName': 'string',
'AdditionalOptions': {
'string': 'string'
},
'PreProcessingQuery': 'string'
}
}
}
}
Response Structure
(dict) --
RunId (string) --
The unique run identifier associated with this run.
DataSource (dict) --
The data source (an Glue table) associated with this evaluation run.
GlueTable (dict) --
An Glue table.
DatabaseName (string) --
A database name in the Glue Data Catalog.
TableName (string) --
A table name in the Glue Data Catalog.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ConnectionName (string) --
The name of the connection to the Glue Data Catalog.
AdditionalOptions (dict) --
Additional options for the table. Currently there are two keys supported:
pushDownPredicate: to filter on partitions without having to list and read all the files in your dataset.
catalogPartitionPredicate: to use server-side partition pruning using partition indexes in the Glue Data Catalog.
(string) --
(string) --
DataQualityGlueTable (dict) --
An Glue table for Data Quality Operations.
DatabaseName (string) --
A database name in the Glue Data Catalog.
TableName (string) --
A table name in the Glue Data Catalog.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ConnectionName (string) --
The name of the connection to the Glue Data Catalog.
AdditionalOptions (dict) --
Additional options for the table. Currently there are two keys supported:
pushDownPredicate: to filter on partitions without having to list and read all the files in your dataset.
catalogPartitionPredicate: to use server-side partition pruning using partition indexes in the Glue Data Catalog.
(string) --
(string) --
PreProcessingQuery (string) --
SQL Query of SparkSQL format that can be used to pre-process the data for the table in Glue Data Catalog, before running the Data Quality Operation.
Role (string) --
An IAM role supplied to encrypt the results of the run.
NumberOfWorkers (integer) --
The number of G.1X workers to be used in the run. The default is 5.
Timeout (integer) --
The timeout for a run in minutes. This is the maximum time that a run can consume resources before it is terminated and enters TIMEOUT status. The default is 2,880 minutes (48 hours).
AdditionalRunOptions (dict) --
Additional run options you can specify for an evaluation run.
CloudWatchMetricsEnabled (boolean) --
Whether or not to enable CloudWatch metrics.
ResultsS3Prefix (string) --
Prefix for Amazon S3 to store results.
CompositeRuleEvaluationMethod (string) --
Set the evaluation method for composite rules in the ruleset to ROW/COLUMN
CustomLogGroupPrefix (string) --
A custom prefix for the CloudWatch log group names. When specified, evaluation run logs are written to <CustomLogGroupPrefix>/error and <CustomLogGroupPrefix>/output instead of the default /aws-glue/data-quality/error and /aws-glue/data-quality/output log groups.
RowLevelResults (dict) --
The configuration for writing row-level evaluation results to a Glue Data Catalog table.
MaxRowsToWrite (integer) --
The maximum number of rows to write in the results.
ResultType (string) --
The result type to include in the row-level results output.
CatalogTableConfig (dict) --
The Glue Data Catalog table configuration for storing the results.
DatabaseName (string) --
The name of the database in the Glue Data Catalog.
TableName (string) --
The name of the table in the Glue Data Catalog.
S3Location (string) --
The Amazon S3 location for storing the results.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ProfilingResults (dict) --
The configuration for writing profiling results to a Glue Data Catalog table.
WriteProfilingResultsEnabled (boolean) --
Set to true to write profiling results.
CatalogTableConfig (dict) --
The Glue Data Catalog table configuration for storing the profiling results.
DatabaseName (string) --
The name of the database in the Glue Data Catalog.
TableName (string) --
The name of the table in the Glue Data Catalog.
S3Location (string) --
The Amazon S3 location for storing the results.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
DistributionResults (dict) --
The configuration for writing distribution results.
WriteDistributionResultsEnabled (boolean) --
Set to true to write distribution results.
CatalogTableConfig (dict) --
The Glue Data Catalog table configuration for storing the distribution results.
DatabaseName (string) --
The name of the database in the Glue Data Catalog.
TableName (string) --
The name of the table in the Glue Data Catalog.
S3Location (string) --
The Amazon S3 location for storing the results.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ObservationScope (string) --
The scope of the observation for the evaluation run. Specifies whether anomaly detection is enabled or disabled.
ObservationMode (string) --
The observation mode for the evaluation run. Specifies how anomaly detection bounds are calculated.
DataQualityRuleResults (dict) --
The configuration for writing rule results to a Glue Data Catalog table.
WriteDataQualityRuleResultsEnabled (boolean) --
Set to true to write data quality rule results.
CatalogTableConfig (dict) --
The Glue Data Catalog table configuration for storing the rule results.
DatabaseName (string) --
The name of the database in the Glue Data Catalog.
TableName (string) --
The name of the table in the Glue Data Catalog.
S3Location (string) --
The Amazon S3 location for storing the results.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ObservationResults (dict) --
The configuration for writing observation results to a Glue Data Catalog table.
WriteObservationResultsEnabled (boolean) --
Set to true to write observation results.
CatalogTableConfig (dict) --
The Glue Data Catalog table configuration for storing the observation results.
DatabaseName (string) --
The name of the database in the Glue Data Catalog.
TableName (string) --
The name of the table in the Glue Data Catalog.
S3Location (string) --
The Amazon S3 location for storing the results.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
Status (string) --
The status for this run.
ErrorString (string) --
The error strings that are associated with the run.
StartedOn (datetime) --
The date and time when this run started.
LastModifiedOn (datetime) --
A timestamp. The last point in time when this data quality rule recommendation run was modified.
CompletedOn (datetime) --
The date and time when this run was completed.
ExecutionTime (integer) --
The amount of time (in seconds) that the run consumed resources.
RulesetNames (list) --
A list of ruleset names for the run. Currently, this parameter takes only one Ruleset name.
(string) --
ResultIds (list) --
A list of result IDs for the data quality results for the run.
(string) --
AdditionalDataSources (dict) --
A map of reference strings to additional data sources you can specify for an evaluation run.
(string) --
(dict) --
A data source (an Glue table) for which you want data quality results.
GlueTable (dict) --
An Glue table.
DatabaseName (string) --
A database name in the Glue Data Catalog.
TableName (string) --
A table name in the Glue Data Catalog.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ConnectionName (string) --
The name of the connection to the Glue Data Catalog.
AdditionalOptions (dict) --
Additional options for the table. Currently there are two keys supported:
pushDownPredicate: to filter on partitions without having to list and read all the files in your dataset.
catalogPartitionPredicate: to use server-side partition pruning using partition indexes in the Glue Data Catalog.
(string) --
(string) --
DataQualityGlueTable (dict) --
An Glue table for Data Quality Operations.
DatabaseName (string) --
A database name in the Glue Data Catalog.
TableName (string) --
A table name in the Glue Data Catalog.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ConnectionName (string) --
The name of the connection to the Glue Data Catalog.
AdditionalOptions (dict) --
Additional options for the table. Currently there are two keys supported:
pushDownPredicate: to filter on partitions without having to list and read all the files in your dataset.
catalogPartitionPredicate: to use server-side partition pruning using partition indexes in the Glue Data Catalog.
(string) --
(string) --
PreProcessingQuery (string) --
SQL Query of SparkSQL format that can be used to pre-process the data for the table in Glue Data Catalog, before running the Data Quality Operation.
{'Tags': {'string': 'string'}}
Response {'Runs': {'CreatedRulesetName': 'string'}}
Lists the recommendation runs meeting the filter criteria.
See also: AWS API Documentation
Request Syntax
client.list_data_quality_rule_recommendation_runs(
Filter={
'DataSource': {
'GlueTable': {
'DatabaseName': 'string',
'TableName': 'string',
'CatalogId': 'string',
'ConnectionName': 'string',
'AdditionalOptions': {
'string': 'string'
}
},
'DataQualityGlueTable': {
'DatabaseName': 'string',
'TableName': 'string',
'CatalogId': 'string',
'ConnectionName': 'string',
'AdditionalOptions': {
'string': 'string'
},
'PreProcessingQuery': 'string'
}
},
'StartedBefore': datetime(2015, 1, 1),
'StartedAfter': datetime(2015, 1, 1)
},
NextToken='string',
MaxResults=123,
Tags={
'string': 'string'
}
)
dict
The filter criteria.
DataSource (dict) -- [REQUIRED]
Filter based on a specified data source (Glue table).
GlueTable (dict) --
An Glue table.
DatabaseName (string) -- [REQUIRED]
A database name in the Glue Data Catalog.
TableName (string) -- [REQUIRED]
A table name in the Glue Data Catalog.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ConnectionName (string) --
The name of the connection to the Glue Data Catalog.
AdditionalOptions (dict) --
Additional options for the table. Currently there are two keys supported:
pushDownPredicate: to filter on partitions without having to list and read all the files in your dataset.
catalogPartitionPredicate: to use server-side partition pruning using partition indexes in the Glue Data Catalog.
(string) --
(string) --
DataQualityGlueTable (dict) --
An Glue table for Data Quality Operations.
DatabaseName (string) -- [REQUIRED]
A database name in the Glue Data Catalog.
TableName (string) -- [REQUIRED]
A table name in the Glue Data Catalog.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ConnectionName (string) --
The name of the connection to the Glue Data Catalog.
AdditionalOptions (dict) --
Additional options for the table. Currently there are two keys supported:
pushDownPredicate: to filter on partitions without having to list and read all the files in your dataset.
catalogPartitionPredicate: to use server-side partition pruning using partition indexes in the Glue Data Catalog.
(string) --
(string) --
PreProcessingQuery (string) --
SQL Query of SparkSQL format that can be used to pre-process the data for the table in Glue Data Catalog, before running the Data Quality Operation.
StartedBefore (datetime) --
Filter based on time for results started before provided time.
StartedAfter (datetime) --
Filter based on time for results started after provided time.
string
A paginated token to offset the results.
integer
The maximum number of results to return.
dict
A list of key-value pair tags to filter recommendation runs.
(string) --
(string) --
dict
Response Syntax
{
'Runs': [
{
'RunId': 'string',
'Status': 'STARTING'|'RUNNING'|'STOPPING'|'STOPPED'|'SUCCEEDED'|'FAILED'|'TIMEOUT',
'StartedOn': datetime(2015, 1, 1),
'DataSource': {
'GlueTable': {
'DatabaseName': 'string',
'TableName': 'string',
'CatalogId': 'string',
'ConnectionName': 'string',
'AdditionalOptions': {
'string': 'string'
}
},
'DataQualityGlueTable': {
'DatabaseName': 'string',
'TableName': 'string',
'CatalogId': 'string',
'ConnectionName': 'string',
'AdditionalOptions': {
'string': 'string'
},
'PreProcessingQuery': 'string'
}
},
'CreatedRulesetName': 'string'
},
],
'NextToken': 'string'
}
Response Structure
(dict) --
Runs (list) --
A list of DataQualityRuleRecommendationRunDescription objects.
(dict) --
Describes the result of a data quality rule recommendation run.
RunId (string) --
The unique run identifier associated with this run.
Status (string) --
The status for this run.
StartedOn (datetime) --
The date and time when this run started.
DataSource (dict) --
The data source (Glue table) associated with the recommendation run.
GlueTable (dict) --
An Glue table.
DatabaseName (string) --
A database name in the Glue Data Catalog.
TableName (string) --
A table name in the Glue Data Catalog.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ConnectionName (string) --
The name of the connection to the Glue Data Catalog.
AdditionalOptions (dict) --
Additional options for the table. Currently there are two keys supported:
pushDownPredicate: to filter on partitions without having to list and read all the files in your dataset.
catalogPartitionPredicate: to use server-side partition pruning using partition indexes in the Glue Data Catalog.
(string) --
(string) --
DataQualityGlueTable (dict) --
An Glue table for Data Quality Operations.
DatabaseName (string) --
A database name in the Glue Data Catalog.
TableName (string) --
A table name in the Glue Data Catalog.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ConnectionName (string) --
The name of the connection to the Glue Data Catalog.
AdditionalOptions (dict) --
Additional options for the table. Currently there are two keys supported:
pushDownPredicate: to filter on partitions without having to list and read all the files in your dataset.
catalogPartitionPredicate: to use server-side partition pruning using partition indexes in the Glue Data Catalog.
(string) --
(string) --
PreProcessingQuery (string) --
SQL Query of SparkSQL format that can be used to pre-process the data for the table in Glue Data Catalog, before running the Data Quality Operation.
CreatedRulesetName (string) --
The name of the ruleset that was created by the recommendation run.
NextToken (string) --
A pagination token, if more results are available.
{'Statistics': {'DistributionValue': {'BinEdges': ['string'],
'Count': ['integer'],
'DataType': 'string'}}}
Retrieves a list of data quality statistics.
See also: AWS API Documentation
Request Syntax
client.list_data_quality_statistics(
StatisticId='string',
ProfileId='string',
TimestampFilter={
'RecordedBefore': datetime(2015, 1, 1),
'RecordedAfter': datetime(2015, 1, 1)
},
MaxResults=123,
NextToken='string'
)
string
The Statistic ID.
string
The Profile ID.
dict
A timestamp filter.
RecordedBefore (datetime) --
The timestamp before which statistics should be included in the results.
RecordedAfter (datetime) --
The timestamp after which statistics should be included in the results.
integer
The maximum number of results to return in this request.
string
A pagination token to request the next page of results.
dict
Response Syntax
{
'Statistics': [
{
'StatisticId': 'string',
'ProfileId': 'string',
'RunIdentifier': {
'RunId': 'string',
'JobRunId': 'string'
},
'StatisticName': 'string',
'DoubleValue': 123.0,
'DistributionValue': {
'BinEdges': [
'string',
],
'Count': [
123,
],
'DataType': 'string'
},
'EvaluationLevel': 'Dataset'|'Column'|'Multicolumn',
'ColumnsReferenced': [
'string',
],
'ReferencedDatasets': [
'string',
],
'StatisticProperties': {
'string': 'string'
},
'RecordedOn': datetime(2015, 1, 1),
'InclusionAnnotation': {
'Value': 'INCLUDE'|'EXCLUDE',
'LastModifiedOn': datetime(2015, 1, 1)
}
},
],
'NextToken': 'string'
}
Response Structure
(dict) --
Statistics (list) --
A StatisticSummaryList.
(dict) --
Summary information about a statistic.
StatisticId (string) --
The Statistic ID.
ProfileId (string) --
The Profile ID.
RunIdentifier (dict) --
The Run Identifier
RunId (string) --
The Run ID.
JobRunId (string) --
The Job Run ID.
StatisticName (string) --
The name of the statistic.
DoubleValue (float) --
The value of the statistic.
DistributionValue (dict) --
The distribution value for the statistic.
BinEdges (list) --
The bin edge values for the distribution.
(string) --
Count (list) --
The frequency count for each bin in the distribution.
(integer) --
DataType (string) --
The data type of the column for the distribution.
EvaluationLevel (string) --
The evaluation level of the statistic. Possible values: Dataset, Column, Multicolumn.
ColumnsReferenced (list) --
The list of columns referenced by the statistic.
(string) --
ReferencedDatasets (list) --
The list of datasets referenced by the statistic.
(string) --
StatisticProperties (dict) --
A StatisticPropertiesMap, which contains a NameString and DescriptionString
(string) --
(string) --
RecordedOn (datetime) --
The timestamp when the statistic was recorded.
InclusionAnnotation (dict) --
The inclusion annotation for the statistic.
Value (string) --
The inclusion annotation value.
LastModifiedOn (datetime) --
The timestamp when the inclusion annotation was last modified.
NextToken (string) --
A pagination token to request the next page of results.
{'AdditionalRunOptions': {'CustomLogGroupPrefix': 'string'}}
Starts a recommendation run that is used to generate rules when you don't know what rules to write. Glue Data Quality analyzes the data and comes up with recommendations for a potential ruleset. You can then triage the ruleset and modify the generated ruleset to your liking.
Recommendation runs are automatically deleted after 90 days.
See also: AWS API Documentation
Request Syntax
client.start_data_quality_rule_recommendation_run(
DataSource={
'GlueTable': {
'DatabaseName': 'string',
'TableName': 'string',
'CatalogId': 'string',
'ConnectionName': 'string',
'AdditionalOptions': {
'string': 'string'
}
},
'DataQualityGlueTable': {
'DatabaseName': 'string',
'TableName': 'string',
'CatalogId': 'string',
'ConnectionName': 'string',
'AdditionalOptions': {
'string': 'string'
},
'PreProcessingQuery': 'string'
}
},
Role='string',
NumberOfWorkers=123,
Timeout=123,
CreatedRulesetName='string',
DataQualitySecurityConfiguration='string',
ClientToken='string',
AdditionalRunOptions={
'CustomLogGroupPrefix': 'string'
}
)
dict
[REQUIRED]
The data source (Glue table) associated with this run.
GlueTable (dict) --
An Glue table.
DatabaseName (string) -- [REQUIRED]
A database name in the Glue Data Catalog.
TableName (string) -- [REQUIRED]
A table name in the Glue Data Catalog.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ConnectionName (string) --
The name of the connection to the Glue Data Catalog.
AdditionalOptions (dict) --
Additional options for the table. Currently there are two keys supported:
pushDownPredicate: to filter on partitions without having to list and read all the files in your dataset.
catalogPartitionPredicate: to use server-side partition pruning using partition indexes in the Glue Data Catalog.
(string) --
(string) --
DataQualityGlueTable (dict) --
An Glue table for Data Quality Operations.
DatabaseName (string) -- [REQUIRED]
A database name in the Glue Data Catalog.
TableName (string) -- [REQUIRED]
A table name in the Glue Data Catalog.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ConnectionName (string) --
The name of the connection to the Glue Data Catalog.
AdditionalOptions (dict) --
Additional options for the table. Currently there are two keys supported:
pushDownPredicate: to filter on partitions without having to list and read all the files in your dataset.
catalogPartitionPredicate: to use server-side partition pruning using partition indexes in the Glue Data Catalog.
(string) --
(string) --
PreProcessingQuery (string) --
SQL Query of SparkSQL format that can be used to pre-process the data for the table in Glue Data Catalog, before running the Data Quality Operation.
string
[REQUIRED]
An IAM role supplied to encrypt the results of the run.
integer
The number of G.1X workers to be used in the run. The default is 5.
integer
The timeout for a run in minutes. This is the maximum time that a run can consume resources before it is terminated and enters TIMEOUT status. The default is 2,880 minutes (48 hours).
string
A name for the ruleset.
string
The name of the security configuration created with the data quality encryption option.
string
Used for idempotency and is recommended to be set to a random ID (such as a UUID) to avoid creating or starting multiple instances of the same resource.
dict
Additional run options you can specify for a recommendation run.
CustomLogGroupPrefix (string) --
A custom prefix for the CloudWatch log group names. When specified, recommendation run logs are written to <CustomLogGroupPrefix>/error and <CustomLogGroupPrefix>/output instead of the default /aws-glue/data-quality/error and /aws-glue/data-quality/output log groups.
dict
Response Syntax
{
'RunId': 'string'
}
Response Structure
(dict) --
RunId (string) --
The unique run identifier associated with this run.
{'AdditionalRunOptions': {'DataQualityRuleResults': {'CatalogTableConfig': {'CatalogId': 'string',
'DatabaseName': 'string',
'S3Location': 'string',
'TableName': 'string'},
'WriteDataQualityRuleResultsEnabled': 'boolean'},
'ObservationMode': 'SCHEDULED | FIXED',
'ObservationResults': {'CatalogTableConfig': {'CatalogId': 'string',
'DatabaseName': 'string',
'S3Location': 'string',
'TableName': 'string'},
'WriteObservationResultsEnabled': 'boolean'},
'ObservationScope': 'ALL | NONE',
'ProfilingResults': {'CatalogTableConfig': {'CatalogId': 'string',
'DatabaseName': 'string',
'S3Location': 'string',
'TableName': 'string'},
'DistributionResults': {'CatalogTableConfig': {'CatalogId': 'string',
'DatabaseName': 'string',
'S3Location': 'string',
'TableName': 'string'},
'WriteDistributionResultsEnabled': 'boolean'},
'WriteProfilingResultsEnabled': 'boolean'},
'RowLevelResults': {'CatalogTableConfig': {'CatalogId': 'string',
'DatabaseName': 'string',
'S3Location': 'string',
'TableName': 'string'},
'MaxRowsToWrite': 'integer',
'ResultType': 'ALL | PASSED_ONLY '
'| FAILED_ONLY'}}}
Once you have a ruleset definition (either recommended or your own), you call this operation to evaluate the ruleset against a data source (Glue table). The evaluation computes results which you can retrieve with the GetDataQualityResult API.
See also: AWS API Documentation
Request Syntax
client.start_data_quality_ruleset_evaluation_run(
DataSource={
'GlueTable': {
'DatabaseName': 'string',
'TableName': 'string',
'CatalogId': 'string',
'ConnectionName': 'string',
'AdditionalOptions': {
'string': 'string'
}
},
'DataQualityGlueTable': {
'DatabaseName': 'string',
'TableName': 'string',
'CatalogId': 'string',
'ConnectionName': 'string',
'AdditionalOptions': {
'string': 'string'
},
'PreProcessingQuery': 'string'
}
},
Role='string',
NumberOfWorkers=123,
Timeout=123,
ClientToken='string',
AdditionalRunOptions={
'CloudWatchMetricsEnabled': True|False,
'ResultsS3Prefix': 'string',
'CompositeRuleEvaluationMethod': 'COLUMN'|'ROW',
'CustomLogGroupPrefix': 'string',
'RowLevelResults': {
'MaxRowsToWrite': 123,
'ResultType': 'ALL'|'PASSED_ONLY'|'FAILED_ONLY',
'CatalogTableConfig': {
'DatabaseName': 'string',
'TableName': 'string',
'S3Location': 'string',
'CatalogId': 'string'
}
},
'ProfilingResults': {
'WriteProfilingResultsEnabled': True|False,
'CatalogTableConfig': {
'DatabaseName': 'string',
'TableName': 'string',
'S3Location': 'string',
'CatalogId': 'string'
},
'DistributionResults': {
'WriteDistributionResultsEnabled': True|False,
'CatalogTableConfig': {
'DatabaseName': 'string',
'TableName': 'string',
'S3Location': 'string',
'CatalogId': 'string'
}
}
},
'ObservationScope': 'ALL'|'NONE',
'ObservationMode': 'SCHEDULED'|'FIXED',
'DataQualityRuleResults': {
'WriteDataQualityRuleResultsEnabled': True|False,
'CatalogTableConfig': {
'DatabaseName': 'string',
'TableName': 'string',
'S3Location': 'string',
'CatalogId': 'string'
}
},
'ObservationResults': {
'WriteObservationResultsEnabled': True|False,
'CatalogTableConfig': {
'DatabaseName': 'string',
'TableName': 'string',
'S3Location': 'string',
'CatalogId': 'string'
}
}
},
RulesetNames=[
'string',
],
AdditionalDataSources={
'string': {
'GlueTable': {
'DatabaseName': 'string',
'TableName': 'string',
'CatalogId': 'string',
'ConnectionName': 'string',
'AdditionalOptions': {
'string': 'string'
}
},
'DataQualityGlueTable': {
'DatabaseName': 'string',
'TableName': 'string',
'CatalogId': 'string',
'ConnectionName': 'string',
'AdditionalOptions': {
'string': 'string'
},
'PreProcessingQuery': 'string'
}
}
}
)
dict
[REQUIRED]
The data source (Glue table) associated with this run.
GlueTable (dict) --
An Glue table.
DatabaseName (string) -- [REQUIRED]
A database name in the Glue Data Catalog.
TableName (string) -- [REQUIRED]
A table name in the Glue Data Catalog.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ConnectionName (string) --
The name of the connection to the Glue Data Catalog.
AdditionalOptions (dict) --
Additional options for the table. Currently there are two keys supported:
pushDownPredicate: to filter on partitions without having to list and read all the files in your dataset.
catalogPartitionPredicate: to use server-side partition pruning using partition indexes in the Glue Data Catalog.
(string) --
(string) --
DataQualityGlueTable (dict) --
An Glue table for Data Quality Operations.
DatabaseName (string) -- [REQUIRED]
A database name in the Glue Data Catalog.
TableName (string) -- [REQUIRED]
A table name in the Glue Data Catalog.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ConnectionName (string) --
The name of the connection to the Glue Data Catalog.
AdditionalOptions (dict) --
Additional options for the table. Currently there are two keys supported:
pushDownPredicate: to filter on partitions without having to list and read all the files in your dataset.
catalogPartitionPredicate: to use server-side partition pruning using partition indexes in the Glue Data Catalog.
(string) --
(string) --
PreProcessingQuery (string) --
SQL Query of SparkSQL format that can be used to pre-process the data for the table in Glue Data Catalog, before running the Data Quality Operation.
string
[REQUIRED]
An IAM role supplied to encrypt the results of the run.
integer
The number of G.1X workers to be used in the run. The default is 5.
integer
The timeout for a run in minutes. This is the maximum time that a run can consume resources before it is terminated and enters TIMEOUT status. The default is 2,880 minutes (48 hours).
string
Used for idempotency and is recommended to be set to a random ID (such as a UUID) to avoid creating or starting multiple instances of the same resource.
dict
Additional run options you can specify for an evaluation run.
CloudWatchMetricsEnabled (boolean) --
Whether or not to enable CloudWatch metrics.
ResultsS3Prefix (string) --
Prefix for Amazon S3 to store results.
CompositeRuleEvaluationMethod (string) --
Set the evaluation method for composite rules in the ruleset to ROW/COLUMN
CustomLogGroupPrefix (string) --
A custom prefix for the CloudWatch log group names. When specified, evaluation run logs are written to <CustomLogGroupPrefix>/error and <CustomLogGroupPrefix>/output instead of the default /aws-glue/data-quality/error and /aws-glue/data-quality/output log groups.
RowLevelResults (dict) --
The configuration for writing row-level evaluation results to a Glue Data Catalog table.
MaxRowsToWrite (integer) --
The maximum number of rows to write in the results.
ResultType (string) --
The result type to include in the row-level results output.
CatalogTableConfig (dict) --
The Glue Data Catalog table configuration for storing the results.
DatabaseName (string) --
The name of the database in the Glue Data Catalog.
TableName (string) --
The name of the table in the Glue Data Catalog.
S3Location (string) --
The Amazon S3 location for storing the results.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ProfilingResults (dict) --
The configuration for writing profiling results to a Glue Data Catalog table.
WriteProfilingResultsEnabled (boolean) --
Set to true to write profiling results.
CatalogTableConfig (dict) --
The Glue Data Catalog table configuration for storing the profiling results.
DatabaseName (string) --
The name of the database in the Glue Data Catalog.
TableName (string) --
The name of the table in the Glue Data Catalog.
S3Location (string) --
The Amazon S3 location for storing the results.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
DistributionResults (dict) --
The configuration for writing distribution results.
WriteDistributionResultsEnabled (boolean) --
Set to true to write distribution results.
CatalogTableConfig (dict) --
The Glue Data Catalog table configuration for storing the distribution results.
DatabaseName (string) --
The name of the database in the Glue Data Catalog.
TableName (string) --
The name of the table in the Glue Data Catalog.
S3Location (string) --
The Amazon S3 location for storing the results.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ObservationScope (string) --
The scope of the observation for the evaluation run. Specifies whether anomaly detection is enabled or disabled.
ObservationMode (string) --
The observation mode for the evaluation run. Specifies how anomaly detection bounds are calculated.
DataQualityRuleResults (dict) --
The configuration for writing rule results to a Glue Data Catalog table.
WriteDataQualityRuleResultsEnabled (boolean) --
Set to true to write data quality rule results.
CatalogTableConfig (dict) --
The Glue Data Catalog table configuration for storing the rule results.
DatabaseName (string) --
The name of the database in the Glue Data Catalog.
TableName (string) --
The name of the table in the Glue Data Catalog.
S3Location (string) --
The Amazon S3 location for storing the results.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ObservationResults (dict) --
The configuration for writing observation results to a Glue Data Catalog table.
WriteObservationResultsEnabled (boolean) --
Set to true to write observation results.
CatalogTableConfig (dict) --
The Glue Data Catalog table configuration for storing the observation results.
DatabaseName (string) --
The name of the database in the Glue Data Catalog.
TableName (string) --
The name of the table in the Glue Data Catalog.
S3Location (string) --
The Amazon S3 location for storing the results.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
list
[REQUIRED]
A list of ruleset names.
(string) --
dict
A map of reference strings to additional data sources you can specify for an evaluation run.
(string) --
(dict) --
A data source (an Glue table) for which you want data quality results.
GlueTable (dict) --
An Glue table.
DatabaseName (string) -- [REQUIRED]
A database name in the Glue Data Catalog.
TableName (string) -- [REQUIRED]
A table name in the Glue Data Catalog.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ConnectionName (string) --
The name of the connection to the Glue Data Catalog.
AdditionalOptions (dict) --
Additional options for the table. Currently there are two keys supported:
pushDownPredicate: to filter on partitions without having to list and read all the files in your dataset.
catalogPartitionPredicate: to use server-side partition pruning using partition indexes in the Glue Data Catalog.
(string) --
(string) --
DataQualityGlueTable (dict) --
An Glue table for Data Quality Operations.
DatabaseName (string) -- [REQUIRED]
A database name in the Glue Data Catalog.
TableName (string) -- [REQUIRED]
A table name in the Glue Data Catalog.
CatalogId (string) --
A unique identifier for the Glue Data Catalog.
ConnectionName (string) --
The name of the connection to the Glue Data Catalog.
AdditionalOptions (dict) --
Additional options for the table. Currently there are two keys supported:
pushDownPredicate: to filter on partitions without having to list and read all the files in your dataset.
catalogPartitionPredicate: to use server-side partition pruning using partition indexes in the Glue Data Catalog.
(string) --
(string) --
PreProcessingQuery (string) --
SQL Query of SparkSQL format that can be used to pre-process the data for the table in Glue Data Catalog, before running the Data Quality Operation.
dict
Response Syntax
{
'RunId': 'string'
}
Response Structure
(dict) --
RunId (string) --
The unique run identifier associated with this run.