Lock in $30 Savings on PRO—Offer Ends Soon! ⏳

20分で大体わかる! AWS Glue Data Qualityによる データ品質検査

Niino
January 31, 2024

20分で大体わかる! AWS Glue Data Qualityによる データ品質検査

Niino

January 31, 2024
Tweet

More Decks by Niino

Other Decks in Technology

Transcript

  1. ⾃⼰紹介 niino • データアナリティクス事業本部 インテグレーション部 コンサルティングチーム ◦ ソリューションアーキテクト ◦ 2023

    Japan AWS Top Engineer(Analytics) • データ分析基盤に関するコンサルティング • 最近の高い買い物:ベース • 奈良県出身 大阪オフィス所属 この辺の出身
  2. AWS Glueとは AWSが提供するサーバーレスなデータ統合サービス • PythonとApache Sparkを使った大量データの処理(Glue ETL Job) • データ資産のカタログ化(Glue

    Data Catalog) • GUIでのジョブ作成(Glue Visual Editor/Glue Data Brew) などの様々な機能が提供 Crawler Data Catalog S3 Bucket Amazon Athena Amazon QuickSight Amazon Redshift ETL Job データソース
  3. AWS Glueとは AWSが提供するサーバーレスなデータ統合サービス • PythonとApache Sparkを使った大量データの処理(Glue ETL Job) • データ資産のカタログ化(Glue

    Data Catalog) • GUIでのジョブ作成(Glue Visual Editor/Glue Data Brew) などの様々な機能が提供 Crawler Data Catalog S3 Bucket Amazon Athena Amazon QuickSight Amazon Redshift ETL Job データソース 2023年6月、データ品質検査を担う Glue Data Qualityが一般提供開始
  4. AWS Glue Data Qualityとは • ユーザーが定義したルール に従って、 データの品質検査を実施で きる機能 •

    AWSが開発したOSSである Deequを利用 • ルールの定義にはDQDL (Data Quality Definition Language)を 利用
  5. Data Qualityで利用可能なルール 2024/1現在、27種類 AggregateMatch ColumnCorrelation ColumnCount ColumnDataType ColumnExists ColumnLength ColumnNamesMatchPattern

    ColumnValues Completeness CustomSql DataFreshness DatasetMatch DetectAnomalies DistinctValuesCount Entropy IsComplete IsPrimaryKey IsUnique Mean ReferentialIntegrity RowCount RowCountMatch SchemaMatch StandardDeviation Sum UniqueValueRatio Uniqueness
  6. Data Qualityの便利なところ • DQDLを使って簡単にデータ品質検査のルールを定義可能 • CloudWatchやSNSを組み合わせることで通知可能 • 既存データを自動で分析して最適なルールを レコメンド •

    Glue Job同様、ワーカーを増やしてスケールアップが 可能 • 静的なルールに合致しないデータを検出するだけでなく、 意図しない変化や異常を自動的に検出可能(プレビュー 機能)
  7. Data Qualityの利用パターン Glue Data Catalog • Glue Data Catalogに登録されたテー ブルに対してデータ品質検査ルールを

    定義して実行 • 取り込み後データのチェックに便利 • Glue ETL Jobを使っておらず、 Athenaを利用している場合でも使える Glue ETL Job • Glue ETL Jobの中に組み込む形でデー タ品質検査ルールを定義 • 取り込み前のデータのチェックに便利 • すでにGlue ETL Jobを使っている 場合、既存の処理に組み込める • GlueコネクタがサポートするAWS以外 のデータソースの品質検査も可能
  8. ユースケースその1 テーブルへ投入する前の データファイルの品質を チェック • Glue ETL Jobの中で Data Qualityを利用

    • データの異常を検知した ら通知 • ルールに沿っていれば データレイクへ投入