Upgrade to Pro — share decks privately, control downloads, hide ads and more …

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. 20分で大体わかる!

    AWS Glue Data Qualityによる

    データ品質検査

    クラスメソッド株式会社

    niino


    View full-size slide

  2. ⾃⼰紹介
    niino
    ● データアナリティクス事業本部
    インテグレーション部
    コンサルティングチーム
    ○ ソリューションアーキテクト
    ○ 2023 Japan AWS Top Engineer(Analytics)
    ● データ分析基盤に関するコンサルティング
    ● 最近の高い買い物:ベース
    ● 奈良県出身 大阪オフィス所属
    この辺の出身

    View full-size slide

  3. 本題
    データ分析においてデータの品質は重要!
    データパイプラインが
    エラーになった…
    分析結果が
    間違ってる…

    View full-size slide

  4. とはいえ、データ品質検査にもいろんな課題が
    データが大量だし
    形式も様々で
    品質チェックの
    実行も一苦労
    品質検査にはどの
    ツールを
    使うべき?
    データの変動を
    把握したい

    View full-size slide

  5. AWS Glueの新たな機能、
    AWS Glue Data Quality

    View full-size slide

  6. 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
    データソース

    View full-size slide

  7. 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が一般提供開始

    View full-size slide

  8. AWS Glue Data Qualityとは
    ● ユーザーが定義したルール
    に従って、
    データの品質検査を実施で
    きる機能
    ● AWSが開発したOSSである
    Deequを利用
    ● ルールの定義にはDQDL
    (Data Quality
    Definition Language)を
    利用

    View full-size slide

  9. Data Qualityの基本的な使い方
    ①ルールを定義
    ルールタイプを
    選択
    ルールを定義
    自動でルール
    をリコメンド

    View full-size slide

  10. Data Qualityの基本的な使い方
    ②実行

    View full-size slide

  11. 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

    View full-size slide

  12. Data Qualityの便利なところ
    ● DQDLを使って簡単にデータ品質検査のルールを定義可能
    ● CloudWatchやSNSを組み合わせることで通知可能
    ● 既存データを自動で分析して最適なルールを
    レコメンド
    ● Glue Job同様、ワーカーを増やしてスケールアップが
    可能
    ● 静的なルールに合致しないデータを検出するだけでなく、
    意図しない変化や異常を自動的に検出可能(プレビュー
    機能)

    View full-size slide

  13. Data Qualityの利用パターン
    Glue Data Catalog
    ● Glue Data Catalogに登録されたテー
    ブルに対してデータ品質検査ルールを
    定義して実行
    ● 取り込み後データのチェックに便利
    ● Glue ETL Jobを使っておらず、
    Athenaを利用している場合でも使える
    Glue ETL Job
    ● Glue ETL Jobの中に組み込む形でデー
    タ品質検査ルールを定義
    ● 取り込み前のデータのチェックに便利
    ● すでにGlue ETL Jobを使っている
    場合、既存の処理に組み込める
    ● GlueコネクタがサポートするAWS以外
    のデータソースの品質検査も可能

    View full-size slide

  14. 実際の操作はこんな感じ

    View full-size slide

  15. ユースケースいろいろ

    View full-size slide

  16. ユースケースその1
    テーブルへ投入する前の
    データファイルの品質を
    チェック
    ● Glue ETL Jobの中で
    Data Qualityを利用
    ● データの異常を検知した
    ら通知
    ● ルールに沿っていれば
    データレイクへ投入

    View full-size slide

  17. ユースケースその3
    データの変化を把握する
    ● 2023年11月に発表されたプレビュー機能
    ● 過去のデータと比較して変化を検知
    ● 異常を検知するだけでなく、データの傾向の変化を把握できる

    View full-size slide

  18. ユースケースその3
    データの変化を把握する
    ● 2023年11月に発表されたプレビュー機能
    ● 過去のデータと比較して変化を検知
    ● 異常を検知するだけでなく、データの傾向の変化を把握できる

    View full-size slide

  19. まとめ
    ● AWS Glue Data Qualityを使って、サーバーレスで
    AWSマネージドという取り組みやすい環境で
    データ品質検査ができる
    ● 他AWSサービスと組み合わせて異常検知の際の通知
    も可能
    ● データの変化の傾向把握にも使える

    View full-size slide