We are excited to announce the General Availability of AWS Glue Data Quality.
Our journey started by working backward from our customers who create, manage, and operate data lakes and data warehouses for analytics and machine learning. To make confident business decisions, the underlying data needs to be accurate and recent. Otherwise, data consumers lose trust in the data and make suboptimal or incorrect decisions. For example, medical researchers found that across 79,000 emergency department encounters of pediatric patients in a hospital, incorrect or missing patient weight measurements led to medication dosing errors in 34% of cases. A data quality check to identify missing patient weight measurements or a check to ensure patients’ weights are trending within certain thresholds would have alerted respective teams to identify these discrepancies.
For our customers, setting up these data quality checks is manual, time consuming, and error prone. It takes days for data engineers to identify and implement data quality rules. They have to gather detailed data statistics, such as minimums, maximums, averages, and correlations. They have to then review the data statistics to identify data quality rules, and write code to implement these checks in their data pipelines. Data engineers must then write code to monitor data pipelines, visualize quality scores, and alert them when anomalies occur. They have to repeat these processes across thousands of datasets and the hundreds of data pipelines populating them. Some customers adopt commercial data quality solutions; however, these solutions require time-consuming infrastructure management and are expensive. Our customers needed a simple, cost-effective, and automatic way to manage data quality.
In this post, we discuss the capabilities and features of AWS Glue Data Quality.
AWS Glue Data Quality accelerates your data quality journey with the following key capabilities:
| Rule Type | Description |
AggregateMatch | Checks if two datasets match by comparing summary metrics like total sales amount. Useful for customers to compare if all data is ingested from source systems. |
ColumnCorrelation | Checks how well two columns are corelated. |
ColumnCount | Checks if any columns are dropped. |
ColumnDataType | Checks if a column is compliant with a data type. |
ColumnExists | Checks if columns exist in a dataset. This allows customers building self-service data platforms to ensure certain columns are made available. |
ColumnLength | Checks if length of data is consistent. |
ColumnNamesMatchPattern | Checks if column names match defined patterns. Useful for governance teams to enforce column name consistency. |
ColumnValues | Checks if data is consistent per defined values. This rule supports regular expressions. |
Completeness | Checks for any blank or NULLs in data. |
CustomSql | Customers can implement almost any type of data quality checks in SQL. |
DataFreshness | Checks if data is fresh. |
DatasetMatch | Compares two datasets and identifies if they are in sync. |
DistinctValuesCount | Checks for duplicate values. |
Entropy | Checks for entropy of the data. |
IsComplete | Checks if 100% of the data is complete. |
IsPrimaryKey | Checks if a column is a primary key (not NULL and unique). |
IsUnique | Checks if 100% of the data is unique. |
Mean | Checks if the mean matches the set threshold. |
ReferentialIntegrity | Checks if two datasets have referential integrity. |
RowCount | Checks if record counts match a threshold. |
RowCountMatch | Checks if record counts between two datasets match. |
StandardDeviation | Checks if standard deviation matches the threshold. |
SchemaMatch | Checks if schema between two datasets match. |
Sum | Checks if sum matches a set threshold. |
Uniqueness | Checks if uniqueness of dataset matches a threshold. |
UniqueValueRatio | Checks if the unique value ration matches a threshold. |
VendorID doesn’t have any empty values and VendorID has a certain range of values: AWS Glue Data Quality has several key enhancements from the preview version:
ReferentialIntegrity, DatasetMatches, RowCountMatches, and AggregateMatches, you can compare two datasets to ensure that data integrity is maintained. The SchemaMatch rule type ensures that the dataset accurately matches a set schema, preventing downstream errors that may be caused by schema changes.AWS Data Quality is now Generally Available. To help you get started, we have created a five-part blog series:
Get started today with AWS Glue Data Quality and tell us what you think.
Shiv Narayanan is a Technical Product Manager for AWS Glue’s data management capabilities like data quality, sensitive data detection and streaming capabilities. Shiv has over 20 years of data management experience in consulting, business development and product management.
Tome Tanasovski is a Technical Manager at AWS, for a team that manages capabilities into Amazon’s big data platforms via AWS Glue. Prior to working at AWS, Tome was an executive for a market-leading global financial services firm in New York City where he helped run the Firm’s Artificial Intelligence & Machine Learning Center of Excellence. Prior to this role he spent nine years in the Firm focusing on automation, cloud, and distributed computing. Tome has a quarter-of-a-century worth of experience in technology in the Tri-state area across a wide variety of industries including big tech, finance, insurance, and media.
Brian Ross is a Senior Software Development Manager at AWS. He has spent 24 years building software at scale and currently focuses on serverless data integration with AWS Glue. In his spare time, he studies ancient texts, cooks modern dishes and tries to get his kids to do both.
Alona Nadler is AWS Glue Head of Product and is responsible for AWS Glue Service. She has a long history of working in the enterprise software and data services spaces. When not working, Alona enjoys traveling and playing tennis.