Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
20分で大体わかる! AWS Glue Data Qualityによる データ品質検査
Search
Niino
January 31, 2024
Technology
0
14k
20分で大体わかる! AWS Glue Data Qualityによる データ品質検査
Niino
January 31, 2024
Tweet
Share
More Decks by Niino
See All by Niino
祝!Iceberg祭開幕!re:Invent 2024データレイク関連アップデート10分総ざらい
kniino
3
550
Amazon Personalizeのレコメンドシステム構築、実際何するの?〜大体10分で具体的なイメージをつかむ〜
kniino
1
270
Iceberg で Amazon Athena をデータウェアハウスぽく使おう
kniino
0
5.4k
〜小さく始めて大きく育てる〜データ分析基盤の開発から活用まで
kniino
0
3k
ダッシュボードもコード管理!Amazon QuickSightで考えるBIOps
kniino
0
2.4k
Other Decks in Technology
See All in Technology
データモデルYANGの処理系を再発明した話
tjmtrhs
0
530
プルリクエストレビューを終わらせるためのチーム体制 / The Team for Completing Pull Request Reviews
nekonenene
4
2.1k
一歩ずつ成長しながら進める ZOZOの基幹システムリプレイス/Growing Stap by Stap ZOZO BackOffice System Replacement
cocet33000
2
370
ライフステージの変化を乗り越える 探索型のキャリア選択
tenshoku_draft
2
390
開発者のための FinOps/FinOps for Engineers
oracle4engineer
PRO
2
300
どうすると生き残れないのか/how-not-to-survive
hanhan1978
13
10k
エンジニアのキャリアパスと、 その中で自分が大切にしていること
noteinc
4
3.3k
【Forkwell】「正しく」失敗できるチームを作る──現場のリーダーのための恐怖と不安を乗り越える技術 - FL#83 / A team that can fail correctly by forkwell
i35_267
2
190
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
3
560
20250307_エンジニアじゃないけどAzureはじめてみた
ponponmikankan
2
280
Platform Engineeringで クラウドの「楽しくない」を解消しよう
jacopen
5
320
20250304_赤煉瓦倉庫_DeepSeek_Deep_Dive
hiouchiy
2
150
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
BBQ
matthewcrist
87
9.5k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
13
1k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
How STYLIGHT went responsive
nonsquared
99
5.4k
GitHub's CSS Performance
jonrohan
1030
460k
Thoughts on Productivity
jonyablonski
69
4.5k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
Scaling GitHub
holman
459
140k
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Transcript
20分で大体わかる! AWS Glue Data Qualityによる データ品質検査 クラスメソッド株式会社 niino
⾃⼰紹介 niino • データアナリティクス事業本部 インテグレーション部 コンサルティングチーム ◦ ソリューションアーキテクト ◦ 2023
Japan AWS Top Engineer(Analytics) • データ分析基盤に関するコンサルティング • 最近の高い買い物:ベース • 奈良県出身 大阪オフィス所属 この辺の出身
本題 データ分析においてデータの品質は重要! データパイプラインが エラーになった… 分析結果が 間違ってる…
とはいえ、データ品質検査にもいろんな課題が データが大量だし 形式も様々で 品質チェックの 実行も一苦労 品質検査にはどの ツールを 使うべき? データの変動を 把握したい
AWS Glueの新たな機能、 AWS Glue Data Quality
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 データソース
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が一般提供開始
AWS Glue Data Qualityとは • ユーザーが定義したルール に従って、 データの品質検査を実施で きる機能 •
AWSが開発したOSSである Deequを利用 • ルールの定義にはDQDL (Data Quality Definition Language)を 利用
Data Qualityの基本的な使い方 ①ルールを定義 ルールタイプを 選択 ルールを定義 自動でルール をリコメンド
Data Qualityの基本的な使い方 ②実行
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
Data Qualityの便利なところ • DQDLを使って簡単にデータ品質検査のルールを定義可能 • CloudWatchやSNSを組み合わせることで通知可能 • 既存データを自動で分析して最適なルールを レコメンド •
Glue Job同様、ワーカーを増やしてスケールアップが 可能 • 静的なルールに合致しないデータを検出するだけでなく、 意図しない変化や異常を自動的に検出可能(プレビュー 機能)
Data Qualityの利用パターン Glue Data Catalog • Glue Data Catalogに登録されたテー ブルに対してデータ品質検査ルールを
定義して実行 • 取り込み後データのチェックに便利 • Glue ETL Jobを使っておらず、 Athenaを利用している場合でも使える Glue ETL Job • Glue ETL Jobの中に組み込む形でデー タ品質検査ルールを定義 • 取り込み前のデータのチェックに便利 • すでにGlue ETL Jobを使っている 場合、既存の処理に組み込める • GlueコネクタがサポートするAWS以外 のデータソースの品質検査も可能
実際の操作はこんな感じ
None
ユースケースいろいろ
ユースケースその1 テーブルへ投入する前の データファイルの品質を チェック • Glue ETL Jobの中で Data Qualityを利用
• データの異常を検知した ら通知 • ルールに沿っていれば データレイクへ投入
ユースケースその3 データの変化を把握する • 2023年11月に発表されたプレビュー機能 • 過去のデータと比較して変化を検知 • 異常を検知するだけでなく、データの傾向の変化を把握できる
ユースケースその3 データの変化を把握する • 2023年11月に発表されたプレビュー機能 • 過去のデータと比較して変化を検知 • 異常を検知するだけでなく、データの傾向の変化を把握できる
まとめ
まとめ • AWS Glue Data Qualityを使って、サーバーレスで AWSマネージドという取り組みやすい環境で データ品質検査ができる • 他AWSサービスと組み合わせて異常検知の際の通知
も可能 • データの変化の傾向把握にも使える
None