Snowflake on AWS東京リージョンをデータカタログで可視化してみた

クラウド対応データウェアハウスのユニコーン企業 Snowflakeにより、AWSのTokyo Regionでの製品サービス提供が始まりましたので、さっそくインフォマティカのAI搭載データカタログ(Enterprise Data Catalog、以下EDC)を使って、可視化してみました。
データカタログについてはこちらを参照

Snowflake社のホームページから30日間の無料トライアルを申し込む事ができます。さすがクラウド対応型データウェアハウスと言う事もあり、数ステップですぐに利用開始が可能となります。

トライアル環境にはサンプルデータも入っているので、すぐに利用を開始する事ができるため、さっそく弊社データカタログ製品のEDCで可視化してみます。

Snowflakeをデータカタログでスキャン

まずはカタログ化をするために、スキャンと呼ばれるメタデータ取得を実施します。スキャン対象によって手順は異なりますが、Snowflakeの場合は実行環境(AWS)のURLと、ユーザ名とパスワードを指定し、スキャンジョブを実行するだけです。

これだけでSQLやプログラムを一切書くことなく、Snowflake上のデータベース配下にあるテーブルやビュー、カラムなどのメタデータをカタログ化する事ができました。今回は、サンプルデータとして提供されているTPC-H(業界標準のクエリベンチマークで利用されるデータ群)から一部のスキーマをスキャンしてみました。

下の図がスキャン結果ですが、スキーマやテーブルがカタログ化されたことがわかります。ここからさらにドリルダウンする事で詳細が確認できます。

サンプルデータのTPC-Hの中から、TPCH_SF1、TPCH_SF10のスキーマをスキャン

プロファイリング

スキャンジョブでは、データウェアハウスの構成(データベース名、テーブル名、カラム名)などのメタデータに加え、SQLを叩く事なくデータカタログ上から格納データの傾向や頻度、特性などデータそのものも確認できます。それらをデータの「プロファイリング」と言います。

例えば、下記の図はTPCH_SF1スキーマのCUSTOMERテーブルですが、C_PHONEカラム上に格納されているデータをプロファイリングし、データの頻度、傾向(重複あり・なし)最大・最小、パターン(データフォーマット)、推測されたデータ型などを自動的に分析し、データカタログ上で確認することができます。これによりSQLやプログラムを使うことなく、自分の使うべきデータを探す事が可能となります。

カラム定義情報に加え、データ値、件数、割合などの頻度情報、データパターン、データドメイン(この場合は電話番号フォーマット)などのプロファイリング情報を一画面で確認可能

またデータドメイン分析も強力な機能です。図中では、右真ん中あたりにデータドメイン 「PhoneNumber」と記載されていますが、これはデータカタログのAI機能が自動的にデータ特性を把握し、推測されるラベルをタグ付けしてくれます。この機能は予め用意されているラベルを使うことも出来ますし、業務やビジネスに応じて、任意のラベルのルールを定義し利用することも出来ます。例えば製品型番や顧客番号など、ユーザ固有のルール定義を自由に作成することが出来ます。


リネージ

さらに下記の図のように全体の流れや流通経路(リネージ)を確認する事ができ、データの流れをテーブル/ファイル単位、もしくはカラム単位で可視化することができます。

このリネージにより、データがどこから発生して、どんなロジックで加工・編集され、どのように消費されているかが一目瞭然で把握できます。分析者目線で言うと現在利用しているデータが信頼に足るものなのかの裏付けをとったり、またIT開発者目線で言うとテーブルやカラムの変更による影響範囲のインパクト分析などが実現できます。

下記の図は、Snowflakeのテーブルからビューを作成され、さらにそのビューに対してTableauのワークブック上にある分析用ワークシートにおいて2つの項目を利用している場合の見え方です。このようにデータウェアハウスからBI、さらに設定によってはETLでのロジック、源流システム(DB、ストレージ)まで一気通貫で可視化することができる強力な機能です。

カラムレベルのリネージを表示。左の箱がsnowflake、右の箱がTableauのメタデータです。ここから関連する別のオブジェクトに遷移する事もでき、分析時の試行錯誤する時間を短縮することができます。

類似カラム分析(Similarity)

分析中に同じようなカラムが散在していて、実は古い情報が入ったカラムを使っていたり、どのカラムを使うべきなのか迷うことがあると思いますが、EDCではAI機能を使って、カタログにある同じようなカラムを自動的に抽出し、類似性をランキングした一覧を確認することができます。カラム名が似ているなどの単純なアルゴリズムではなく、データ特性やデータパターン、データドメインなどを加味し比較した上で算出されているため、精度の高い結果を得ることができます。

閲覧中のカラムと類似するカラムを ランキング形式で推奨表示することができる

まとめ

今回はSnowflake上のサンプルデータを、データカタログで可視化してみました。
簡単な設定のみで、データウェアハウスが持つデータやメタデータが可視化でき、新たなインサイトが得られる事がおわかり頂けたかと考えます。

今回はデータカタログのみの利用でしたが、次回はETLでデータを投入と加工、BIによる可視化まで分析プロセス全体のユースケースをご紹介できればと思います。