EVERYTHING XIAOMI
Get listed

Amazon Deequ

Amazon Deequ is a free, open-source Apache Spark library for defining data unit tests that measure quality in large datasets.

Place
#8 of 28
Score
6.6
Amazon Deequ's website

What Amazon Deequ is

Amazon Deequ is a free, open-source Apache Spark library for defining data unit tests that measure quality in large datasets. It can check row counts, completeness, uniqueness, allowed values, nonnegative values, patterns, and approximate quantiles. Its examples also cover data profiling, saving and querying metrics, anomaly detection over time, automatic constraint suggestions, and incremental metric calculations. Deequ's declarative Data Quality Definition Language (DQDL) supports rules for counts, completeness, uniqueness, statistics, schema matching, freshness, and custom SQL. Row-level evaluation identifies records that pass or fail supported rules; dataset-level checks such as RowCount and Mean are skipped in that mode. The project targets particular Spark versions, so users need a matching release; versions 2.1.0 and later require Java 11. It is intended for very large datasets, including billions of rows, often stored in distributed filesystems or data warehouses. Deequ requires Apache Spark, is licensed under Apache 2.0, and is distributed through Maven. PyDeequ provides a Python interface.

Good

  • Checks completeness, uniqueness, patterns, and more
  • Includes profiling and anomaly detection examples
  • Supports declarative DQDL rules and custom SQL
  • Apache 2.0 open-source library

Watch out

  • Requires Apache Spark
  • Release must match the Spark version
  • Versions 2.1.0 and later require Java 11

Who it suits

Deequ suits developers and data teams who want to check data quality in Spark-based pipelines before datasets reach consuming systems or machine-learning algorithms. It is intended for users comfortable working with Spark and its supported release versions.

Verdict

Deequ offers a broad set of data-quality checks and metric workflows for Spark datasets. Confirm Spark and Java compatibility before selecting a release.

Plans and prices

From Amazon Deequ's own pricing page, checked 5 Oct 2026.

All about pricing
PlanPriceWhat it gives you
Apache 2.0 open-source libraryFreeRequires Apache Spark; release must match Spark version

The facts

Each one read from Amazon Deequ's own pages, with the date it was checked.

What it does

AWS relationship
AWS Glue Data Quality documentation says that managed service is built on the open-source Deequ framework and uses DQDL.checked 4 Oct 2026
Checks
Checks can validate row counts, completeness, uniqueness, allowed values, nonnegative values, URL patterns, and approximate quantiles.checked 5 Oct 2026
Compatibility
Deequ 2.1.0 and later require Java 11, and the project lists Spark 3.1 through 3.5 compatibility for Deequ 2.x.checked 5 Oct 2026
Contribution and feedback
The README welcomes feedback and contributions.checked 4 Oct 2026
Data scale
The project says Deequ is designed for very large datasets, including billions of rows, typically stored in a distributed filesystem or data warehouse.checked 4 Oct 2026
DQDL
Deequ supports the declarative Data Quality Definition Language, including composite rules using AND and OR.checked 5 Oct 2026
Installation
The README provides Maven and sbt dependency examples and directs users to select a release matching their Spark version.checked 4 Oct 2026
Integrations
Deequ is built on Apache Spark, is distributed through Maven artifacts, and has a Python interface called PyDeequ.checked 5 Oct 2026
Intended use
The README describes using data checks to catch errors before datasets reach consuming systems or machine-learning algorithms.checked 5 Oct 2026
License
The library is licensed under the Apache 2.0 License.checked 5 Oct 2026
Metrics and profiling
The project examples include metrics persistence and querying, data profiling, anomaly detection over time, automatic constraint suggestions, and incremental metric computation.checked 5 Oct 2026
Profiling and monitoring
Examples cover data profiling, persisting and querying computed metrics, anomaly detection over time, automatic constraint suggestions, and incremental metrics computation.checked 4 Oct 2026
Purpose
Deequ is an Apache Spark library for defining unit tests that measure data quality in large datasets.checked 5 Oct 2026
Python interface
The project points Python users to PyDeequ, described on its repository as a Python API for Deequ.checked 4 Oct 2026
Row-level results
DQDL row-level evaluation identifies rows passing or failing supported rules, while dataset-level rules such as RowCount and Mean are skipped.checked 5 Oct 2026
Scale
The project says it is designed for very large datasets, including billions of rows, typically stored in distributed filesystems or data warehouses.checked 5 Oct 2026
Security reporting
The contribution guide asks users to report potential security issues through AWS/Amazon Security's vulnerability reporting page rather than a public GitHub issue.checked 5 Oct 2026
Support and contributions
The project welcomes feedback and contributions and directs bug reports and feature requests to its GitHub issue tracker.checked 5 Oct 2026
The full review of Amazon Deequ

Overview

Amazon Deequ is an open-source library for testing data quality in Apache Spark pipelines. It is best suited to engineering teams that already run Spark and want checks and metrics to catch errors before data reaches downstream systems or machine-learning workloads. Its range of validation and profiling options is useful, but it is not a fit for teams seeking a standalone service independent of Spark.

Key features

Deequ checks row counts, completeness, uniqueness, allowed and nonnegative values, patterns, and approximate quantiles. That covers common quality problems across structured datasets, and its Spark foundation is designed to work at very large scale, including billions of rows. In practice, the scale advantage matters most when data already lives in distributed filesystems or warehouses; it does not remove the need to manage a compatible Spark environment.

Its examples also cover data profiling, saving and querying metrics, anomaly detection over time, automatic constraint suggestions, and incremental metric computation. These workflows can extend Deequ beyond a one-time gate into recurring monitoring, though teams need to build them into their own Spark environment. DQDL offers declarative rules for counts, completeness, uniqueness, statistics, schema matching, freshness, and custom SQL, giving teams a way to express checks without writing each as imperative code.

Row-level evaluation can identify records that pass or fail supported rules, but dataset-wide rules such as RowCount and Mean are skipped in that mode. Teams needing per-record diagnostics should account for that boundary when designing their checks.

Pricing

Deequ's Apache 2.0 open-source library plan costs nothing. It includes the library without a paid tier, and the Apache 2.0 license permits use under its terms. The tradeoff is infrastructure: the plan requires Apache Spark, and each Deequ release must match the Spark version in use. There is no paid managed tier in this plan, so teams should choose it when they can operate the execution environment themselves.

Platforms

Deequ supports API, Linux, macOS, Windows, and self-hosted use. It is distributed through Maven artifacts, with Maven and sbt dependency examples, and its test languages include Scala, Java, DQDL, and SQL. Releases target specific Spark versions: Deequ 2.x lists Spark 3.1 through 3.5 compatibility, and releases 2.1.0 and later require Java 11. Python teams can use PyDeequ, the project's Python API. Deequ supports schema migration tests and custom detection rules, plus pre-commit scanning; it does not offer CI/CD scanning, pull-request scanning, or push protection. Git is the supported VCS.

Who it's for

Deequ suits data engineers and teams building Spark-based quality gates or recurring metrics for large datasets. It is particularly relevant when Scala or Java code, DQDL, or SQL checks can live alongside existing Spark jobs. Teams without Spark, or those looking for managed execution or repository scanning in CI and pull requests, should consider a different tool.

Pros and cons

  • Pros: Broad checks cover common completeness, validity, uniqueness, and distribution needs, while profiling and anomaly-detection examples support ongoing monitoring.
  • Pros: The Apache 2.0 library is free to use, and distributed Spark processing is designed for datasets at very large scale.
  • Cons: Spark is required and release compatibility must be managed, adding operational and version-selection work.
  • Cons: Row-level evaluation skips dataset-level rules such as RowCount and Mean, and the feature set does not include CI/CD or pull-request scanning.

Alternatives

DataKitchen TestGen is worth considering for a freemium option with an open-source plan that includes one user, one connection, and one project, alongside unlimited tables and data volume.

Great Expectations may suit teams that prefer a freemium tool with a Developer plan capped at five data assets under test per month and three users, while allowing unlimited rows per asset.

Atlas is an alternative for readers looking for an open-core database migration tool.

Soda is a freemium option whose Free plan includes pipeline testing, metrics observability, and alerting and ticketing integrations, with free Soda Processing Units.

SQLancer is another free software option to consider.

utPLSQL is a free alternative focused on unit testing Oracle Database PL/SQL code.

pgroll is a free alternative for PostgreSQL 14.0 or later, distributed as a single cross-platform binary.

SQLFluff is a free open-source SQL linter if the need is SQL linting rather than Spark data-quality testing.

Browse Database Testing Tools for more options, or Secrets Scanning Software for a different software category.

Verdict

Choose Amazon Deequ if you already run Spark and want a free, Apache 2.0 toolkit that combines large-scale data checks with profiling and metrics workflows. Its breadth is the main reason to choose it; the Spark dependency, version matching, and gaps in CI and pull-request scanning are the main reasons to look elsewhere.

Getting started

  1. Open the Deequ GitHub repository.
  2. Choose a Deequ release that matches your Apache Spark version.
  3. Check Java requirements for the selected release.
  4. Add the dependency using the Maven or sbt example.
  5. Define checks using the supported library interfaces or DQDL.
  6. For Python use, refer to the PyDeequ interface.

Limits worth knowing

The Apache 2.0 open-source library is free, but it requires Apache Spark and the release must match the Spark version. Deequ 2.1.0 and later require Java 11.

Questions

Is Amazon Deequ free?

Yes. It is an Apache 2.0 open-source library, listed as free.

What does Deequ require?

It requires Apache Spark, and the Deequ release must match the Spark version. Deequ 2.1.0 and later require Java 11.

Which languages or rule formats does it support?

Listed test languages are Scala, Java, DQDL, and SQL. Python users can use the PyDeequ interface.

What kinds of data quality checks can it run?

Checks include row counts, completeness, uniqueness, allowed and nonnegative values, patterns, and approximate quantiles. DQDL also covers statistics, schema matching, freshness, and custom SQL.

Can Deequ evaluate individual rows?

Yes. Row-level evaluation identifies rows that pass or fail supported rules, but dataset-level rules such as RowCount and Mean are skipped in that evaluation.

Where can I get Deequ?

The project is on GitHub and provides Maven and sbt dependency examples. It is distributed through Maven artifacts.

Alternatives to Amazon Deequ

All alternatives
  1. 1Atlas logo

    Atlas

    Free planOpen sourceWebAPILinuxmacOS
    8.3From $39 a month
  2. 2DataKitchen TestGen logo

    DataKitchen TestGen

    Free planOpen sourceWebAPILinuxmacOS
    8.1From $100 a month
  3. 3Soda logo

    Soda

    Free planWebAPILinuxSelf-hosted
    7.5From $750 a month
  4. 4

    Avidemux

    Free planOpen sourceWebLinuxmacOSWindows
    7.3Free plan
  5. 5

    pgroll

    Free planOpen sourceLinuxmacOSSelf-hostedWindows
    7.3Free plan
  6. 6Bytebase Enterprise logo

    Bytebase Enterprise

    Free planWebAPISelf-hosted
    6.8From $20 a month