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
950
20分で大体わかる! AWS Glue Data Qualityによる データ品質検査
Niino
January 31, 2024
Tweet
Share
More Decks by Niino
See All by Niino
〜小さく始めて大きく育てる〜データ分析基盤の開発から活用まで
kniino
0
2.4k
ダッシュボードもコード管理!Amazon QuickSightで考えるBIOps
kniino
0
1.5k
Other Decks in Technology
See All in Technology
RubyKaigi 2024 - Make Your Own Regex Engine!
makenowjust
1
180
使われないものを作るな!出口から作るデータ分析基盤 / Data Platform Development Starting from the User Needs
amaotone
16
4.9k
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
12
7.9k
1Q86
kawaguti
PRO
2
190
動画配信サービスのフロントエンド実装に学ぶ設計原則
yud0uhu
1
140
[PyconUS 2024] Having fun with Pydantic and pattern matching
enforcerpl
0
200
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
5
38k
.NET GraphQL Client のリアル
sansantech
PRO
1
500
マルチテナントマルチクラスタKubernetesでもUXを損なわない認証認可の勘所
pfn
PRO
1
150
技術力の伸ばし方を考える
khirata
0
150
複雑なビジネスルールに挑む:正確性と効率性を両立するfp-tsのチーム活用術 / Strike a balance between correctness and efficiency with fp-ts
kakehashi
5
3.7k
シンプルなHITL機械学習と様々なタスクにおけるHITL機械学習
naohachi89
0
340
Featured
See All Featured
VelocityConf: Rendering Performance Case Studies
addyosmani
321
23k
Fontdeck: Realign not Redesign
paulrobertlloyd
76
4.9k
How STYLIGHT went responsive
nonsquared
92
4.9k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.1k
Designing for humans not robots
tammielis
247
25k
A designer walks into a library…
pauljervisheath
201
23k
Thoughts on Productivity
jonyablonski
60
3.9k
The Art of Programming - Codeland 2020
erikaheidi
43
12k
Principles of Awesome APIs and How to Build Them.
keavy
121
16k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
117
18k
Bootstrapping a Software Product
garrettdimon
PRO
302
110k
Embracing the Ebb and Flow
colly
80
4.2k
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