2023年5月15日

【Google Cloud】DataplexのAutoDQを使ってみた


Content
みなさま、こんにちは。Y.Yです。

今回は、Google Cloud(GCP)で現在(本記事執筆時点)プレビューで公開されているDataplexのAutoDQに関する記事です。
AutoDQを使うと、以下のような指定したルールに基づいてデータの品質をチェックすることができます。
・範囲チェック(格納されている数値データは0以上1000以下かなど)
・Not Nullチェック(NULLデータが含まれていないか)
・一意性チェック(重複データが含まれていないか)
・正規表現チェック(○○から始まる文字列データが入っているかなど)
など

本記事ではAutoDQを使い、人口データテーブルに対して、人口データが0より大きい値で構成されていることを確認し、0以下のデータが含まれていたらアラートを飛ばしてみます。

是非ご覧ください!

設定

まずは、データ品質スキャンの設定を行っていきます。
ConsoleでDataplexのデータ品質画面を開き、「データ品質スキャンを作成」を押下します。

スキャンID、スキャンするテーブル、範囲を指定します。
スキャンするテーブルは、Dataplexで定義したレイク・ゾーン・アセット内のテーブルから選択できます。
(レイク・ゾーン・アセットの設定はDataplexプロファイル機能の記事で行ったため省略します。)
範囲はデータ全体かインクリメンタル(タイムスタンプ列を指定)のいずれかです。

データ品質ルールを定めます。
今回は、「推奨/事前定義済み」のルールを指定します。

チェック対象の列とルールのソースを指定します。

ルールを追加したら編集ボタンを押下して、範囲を指定します。

今回は0より大きければ合格値です。最小値に0を入れます。
(下のチェックを設定すると0は合格に含まれません)

最後にスケジュールを指定します。今回はオンデマンドにします。
(繰り返しを指定すれば、データ品質スキャンを定期実行できます。)

データ品質スキャン実行

スキャンの作成が完了したので実行してみます。
作成したスキャンのページを開き、「今すぐ実行」を押下します。

正常時

データが正常なときの実行結果です。

エラー発生時

エラー発生時(チェックに引っかかるデータがあるとき)の実行結果です。

実行結果の画面からは
・スキャンしたレコード数
・エラー数
・エラーレコードを取得するSQL
・ジョブのログ
などが確認できました。

アラート設定

最後に、Cloud LoggingとCloud Monitoringを用いて、スキャンでエラーになった際にアラートを飛ばす設定を行ってみます。

アラート作成

Cloud Loggingでログベースの指標を作成します。

ログフィルタには以下の式を入力します。

resource.type="dataplex.googleapis.com/DataScan"
AND labels."dataplex.googleapis.com/data_scan_state"="SUCCEEDED
AND resource.labels.resource_container="projects/{プロジェクトNo}"
AND resource.labels.datascan_id="{スキャンID}
AND NOT jsonPayload.dataQuality.passed=true

ログベースの指標を作成したら、アラートを作成します。
指標を作成すると、下図のように「指標に基づくアラートを作成する」と表示されます。
押下してアラート作成画面に移ります。

metricには先程作成したログベースの指標をフィルタリングする式が入力されます。
指標が1度でもカウントされたらアラートが飛ぶように設定していきます。

アラート確認

アラートを作成できたら、もう一度データ品質スキャンを実行してみます。
エラーデータがある状態で実行したところ、以下のアラートメールが届きました。

まとめ

今回は、DataplexのAutoDQを実際に使ってみました。
ルールに基づいたデータの品質チェックをスケジューリングできるのは便利ですね。
データを定期連携するようなシステムで効果を発揮しそうです。

皆さんも是非使ってみてください!

ご覧いただきありがとうございました。

当社、システムサポートは、Google Cloudの導入・移行・運営支援を行っています。
お問い合わせは以下よりお願いいたします。

Google Cloud導入についてのお問い合わせはこちら

2023年5月15日 【Google Cloud】DataplexのAutoDQを使ってみた

Category Google Cloud

ご意見・ご相談・料金のお見積もりなど、
お気軽にお問い合わせください。

お問い合わせはこちら