AWS Glue Data Quality
AWS Glue Data Quality を使用するとデータ品質の測定とモニタリングが行えて、ビジネス上の意思決定を適切に行えるようになります。オープンソースの DeeQu フレームワーク上に構築された AWS Glue Data Quality は、マネージド型のサーバーレス体験を提供します。AWS GlueData Quality はデータ品質定義言語 (DQDL) を使用します。DQDL は、データ品質のルールの定義に使用されるドメイン固有の言語です。DQDL とサポートされているルールタイプの詳細については、「データ品質定義言語 (DQDL) リファレンス」を参照してください。
製品の詳細および価格に関するその他詳細は、AWS Glue Data Quality
利点と主な特徴
AWS Glue Data Quality のメリットと主な特徴は次のとおりです。
-
サーバーレス - インストール、パッチ適用、またはメンテナンスは不要です。
-
すぐに開始できる — AWS Glue Data Quality はデータをすばやく分析し、ユーザーに代わってデータ品質ルールを作成します。[Create Data Quality Rules] と [Recommend rules] をクリックするだけですぐに始められます。
-
データ品質問題の検出 — 異常や、検出が困難なデータ品質問題を、機械学習 (ML) を使用して検出します。
-
ルールを即席で作れる — 追加設定のいらない 25 以上の DQ ルールを使用してすぐに始められ、具体的なニーズに合わせてルールを作成できます。
-
品質を評価し、自信を持って判断を下せる — ルールを評価すると、データの状態に関する概要を示した Data Quality スコアを確認できます。この Data Quality スコアを使用すれば、自信を持ってビジネス上の判断を下せます。
-
不良データに的を絞る — AWS Glue Data Quality を使用すると、品質スコアを下げる原因となったレコードを正確に特定できます。それらをすぐに特定し、隔離して、修正できます。
-
従量制料金 — AWS Glue Data Quality の使用には年間ライセンスは不要です。
-
ロックインなし — AWS Glue Data Quality はオープンソースの DeeQu 上に構築されているため、作成中のルールをオープン言語で維持できます。
-
データ品質チェック - データ品質のチェックを Data Catalog と AWS Glue ETL パイプラインで行えるため、保管中および転送中のデータの品質を管理できます。
-
ML ベースのデータ品質検出 — 異常や、検出が困難なデータ品質問題を、機械学習 (ML) を使用して検出します。
-
ルールを表現するためのオープン言語 - データ品質ルールが一貫してシンプルに作成できます。ビジネスユーザーは、理解できるわかりやすい言語でデータ品質ルールを簡単に表現できます。エンジニアにとっては、コードの生成、一貫したバージョン管理の実装およびデプロイの自動化を可能にする柔軟性がこの言語によって提供されます。
仕組み
AWS Glue Data Quality のエントリポイントは 2 つあります。AWS Glue Data Catalog と AWS Glue ETL ジョブです。このセクションでは、ユースケースの概要と、各エントリポイントでサポートされている AWS Glue の機能について説明します。
AWS Glue Data Catalog のデータ品質
AWS Glue Data Quality は、AWS Glue Data Catalog に保存されているオブジェクトを評価します。プログラマー以外の人でもデータ品質ルールを簡単に設定できます。例えば、データスチュワードやビジネスアナリストなどです。
この方法は、以下のようなユースケースに適しています。
-
既に AWS Glue Data Catalog でカタログ化しているデータセットに対してデータ品質タスクを実行したい場合
-
データガバナンスに取り組んでおり、データレイク内のデータ品質に関する問題を、継続的に特定または評価する必要がある場合
データカタログのデータ品質は、次のインターフェイスで管理できます。
-
AWS Glue マネジメントコンソール
-
AWS Glue API
AWS Glue Data Catalog で AWS Glue Data Quality を使用する手順については、「Data Catalog で AWS Glue Data Quality を使用する」を参照してください。
AWS Glue ETL ジョブのデータ品質
AWS Glue ETL ジョブ向けの AWS Glue Data Quality を使用すると、プロアクティブなデータ品質タスクを実行できます。プロアクティブなタスクは、データセットをデータレイクにロードする前に不良データを特定し、除外するのに役立ちます。
ETL ジョブ向けの Data Quality は以下のようなユースケースに使用できます。
-
データ品質タスクを ETL ジョブに組み込む場合
-
データ品質タスクを定義するコードを ETL スクリプトで記述する場合
-
ビジュアルデータパイプラインに送信されるデータの品質を管理する場合
ETL ジョブのデータ品質は、次のインターフェイスで管理できます。
-
AWS Glue Studio、AWS Glue Studio、ノートブック、AWS Glue インタラクティブセッション
-
ETL スクリプト用の AWS Glue ライブラリ
-
AWS Glue API
ETL ジョブ向け Data Quality の使用方法については、「AWS Glue Studio ユーザーガイド」の「チュートリアル: Data Quality の使用開始」を参照してください。
データカタログ向け Data Quality と ETL ジョブ向け Data Quality の比較
こちらの表は、AWS Glue Data Quality がサポートしている各エントリポイントの機能の概要を示したものです。
機能 | データカタログ向け Data Quality | ETL ジョブ向け Data Quality |
---|---|---|
データソース | Amazon S3、Amazon Redshift、データカタログと互換性のある JDBC ソース、および Apache Iceberg、Apache Hudi、Delta Lake などトランザクションデータレイク形式。テーブルが AWS Lake Formation で管理されている場合、Iceberg、Delta、HUDI テーブルはサポートされないことに注意してください。AWS Glue Data Catalog にカタログ登録されている Amazon Athena ビューはサポートされていません。 | AWS Glue でサポートされているすべてのデータソース。カスタムのコネクタとサードパーティーのコネクタを含みます。 |
Data Quality ルールの推奨事項 | サポート | サポートされていません |
DQDL ルールの作成と実行 | サポート | サポート |
Auto scaling | サポート外 | サポート |
AWS Glue Flex のサポート | サポート外 | サポート |
スケジューリング | Data Quality ルールを評価するときおよび Step Functions を使用する場合にサポート | Step Functions とワークフローを使用する場合にサポート |
データ品質チェックに失敗したレコードの特定 | サポート外 | サポート |
Amazon EventBridge との統合 | サポート | サポート |
AWS CloudWatch との統合 | サポート | サポート |
データ品質評価の結果を Amazon S3 に書き込む | サポート | サポート |
増分的なデータ品質 | プッシュダウン述語によりサポート | AWS Glue ブックマークによりサポート |
AWS CloudFormation のサポート | サポート | サポート |
ML ベースの異常検出 | サポート外 | サポート |
動的ルール | サポート外 | サポート |
考慮事項
AWS Glue Data Quality を使用するときは、事前に次の点を確認します。
-
データ品質ルールは、ネストされたデータソースやリストタイプのデータソースを評価することはできません。「ネストされた Struct のフラット化」を参照してください。
用語
次の表では、AWS Glue Data Quality に関連する用語が定義されています。
- データ品質定義言語 (DQDL)
-
AWS Glue Data Quality のルール作成に使用できるドメイン固有の言語。
DQDL の詳細については、データ品質定義言語 (DQDL) リファレンス のガイドを参照してください。
- データ品質
-
データセットがある目的をどの程度果たしているかを示します。 AWS GlueData Quality は、データセットに対するルールを評価してデータ品質を測定します。各ルールは、データの鮮度や整合性などの特性を確認します。データ品質を数値化するには、データ品質スコアを使用できます。
- データ品質スコア
-
AWS Glue Data Quality でルールセットを評価する際に、合格する (結果が true になる) データ品質ルールの割合。
- ルール
-
データにおける特性を確認し、ブール値を返す DQDL 式。詳細については、「ルールの構造」を参照してください。
- analyzer
-
データ統計を収集する DQDL 式。アナライザーは、ML アルゴリズムで使用できるデータ統計を収集し、異常や、時間の経過に伴って検出が困難となるデータ品質問題を検出できます。
- ルールセット
-
一連のデータ品質ルールで構成される AWS Glue リソース。ルールセットは、AWS Glue Data Catalog 内のテーブルと関連付ける必要があります。ルールセットを保存すると、AWS Glue は Amazon リソースネーム (ARN) をルールセットに割り当てます。
- データ品質スコア
-
AWS Glue Data Quality でルールセットを評価する際に、合格する (結果が true になる) データ品質ルールの割合。
- 監視
-
ルールやアナライザーから収集されたデータ統計を経時的に分析することで、AWS Glue によって得られる未確認のインサイト。
制限
AWS Glue Data Quality サービスの制限:
-
ルールセットには 2,000 個のルールを含めることができます。ルールセットが大きい場合は、複数のルールセットに分割することをお勧めします。
-
ルールセットのサイズは 65 KB です。ルールセットが大きい場合は、複数のルールセットに分割することをお勧めします。
-
AWS Glue Data Quality は、ルールまたはアナライザーを作成するときに統計を収集します。これらの統計の保存にはコストはかかりません。ただし、アカウントごとに保存できる統計は 100,000 に制限されており、これらの統計は最大 2 年間保持されます。
AWS Glue Data Quality のリリースノート
このトピックでは、AWS Glue Data Quality に導入された機能について説明します。
一般提供を開始: 新機能
以下は、AWS Glue Data Quality の一般提供の開始に伴い利用できるようになった新機能です。
データ品質チェックで不合格になったレコードを特定する機能が AWS Glue Studio でサポート
新しいデータ品質のルールタイプ。2 つのデータセット間におけるデータの参照整合性の検証、2 つのデータセット間におけるデータの比較、データタイプのチェックなど
AWS Glue Data Catalog でのユーザーエクスペリエンスの向上
Apache Iceberg、Apache Hudi、Delta Lake のサポート
Amazon Redshift のサポート
Amazon EventBridge による通知の簡素化
ルールセット作成のための AWS CloudFormation サポート
パフォーマンスの向上。ETL のキャッシュオプションと AWS Glue Studio によりデータ品質を評価する際のパフォーマンスが高速化
2023 年 11 月 27 日 (プレビュー)
-
ML を利用した異常検出機能が AWS Glue ETL と AWS Glue Studio で利用できるようになりました。これにより、異常や検出が難しいデータ品質の問題を検出できるようになりました。
2024 年 3 月 12 日
-
DQDL の改良点
2024 年 6 月 26 日
-
DQDL の改良点
-
DQDL は Where 句のサポートを開始し、DQ ルールを適用する前にデータをフィルタリングできるようになりました
-
2024 年 8 月 7 日
-
異常検出と動的ルールの一般提供が開始