👓

【GCP】Data CatalogでDMP/DWHのメタデータ管理

2022/04/26に公開

概要

GCPで構築するDMP/DWH環境のメタデータ管理に何が最適なのか調査していて、
Data Catalogも調べてみたので記載しておきます。

Data Catalogとは

Google Cloud のデータ分析プロダクト ファミリーに含まれる、
フルマネージドのスケーラブルなメタデータ管理サービス

公式

https://cloud.google.com/data-catalog?hl=ja

仕組み

構成

以下のようにgoogleのストレージリソースからデータを取り込むことが可能。

カタログ化

特定のプロジェクトについて、Data Catalog は次のアセットを自動的にカタログ化可能

GUIはこんな感じ

自動カタログ化の条件

GCSに配置したデータを自動的にカタログ化するには、
データアセット(RAWデータ)のメタデータを読み取れる必要がある。
 →DataCatalogが認識できるデータ形式である必要がある。
GCSのデータをBQからクエリ可能な外部テーブルとして設定する際の
対応可能な形式の一覧から推測すると
以下のような形式のファイルは自動カタログ化できそう

参考

https://cloud.google.com/bigquery/external-data-cloud-storage?hl=ja

半構造化データ

上記の自動カタログ化形式のようにできるものもある。

非構造化データ

画像や音声などの非構造化データは
自動ではカタログ化できない。

非構造化データのカタログ化

カタログ化するには、タグというメタデータ付与機能で
自分でデータアセットにメタデータを紐づけることは可能。
タグは「ビジネスメタデータ」という位置づけ。

タグとは

テーブルのカラム単位に、これは個人情報を含むカラムだよ的な情報の付与を行える機能。
またポリシーによる列レベルのアクセス制限なども可能。
https://cloud.google.com/data-catalog/docs/tags-and-tag-templates?hl=ja
https://cloud.google.com/blog/ja/products/data-analytics/cloud-metadata-management-tagging-tips
https://cloud.google.com/data-catalog/docs/quickstart-tagging?hl=ja

料金

前提

Data Catalogには以下の概念がある

テクニカルメタデータ

データセット、テーブルやカラムの構成(テーブル定義に相当するような情報)

ビジネスメタデータ

  • Data Catalog のタグ テンプレートとタグ
  • Data Catalog によって取り込まれたオンプレミス メタデータ。

メタデータストレージ課金

1Mibは少ないかもと思うけど
タグの1つは数byte〜1000byte程度なのである程度のタグ付与は可能。
ただし、「タグbyte数×適用テーブル数」のサイズで課金計上されるのでそこは注意。

API発行

テクニカル、ビジネスメタデータに関わらず、
DataCatalogの操作(GUI含む)で発行したAPIの回数によって課金される。

公式

https://cloud.google.com/data-catalog/pricing?hl=ja

評価

メタデータ管理対象をテクニカルメタデータのみで利用するというような
シンプルなケースでは、課金額は微々たるもので済みそう。
ただし、DMPとして利用するデータのメタデータ管理で
保有データの個人情報の判別等を付与したいケースは、
ままありそうなので一概にビジネスメタデータ利用しなくても良いとも言えない。
とは言え、テクニカルメタデータのみで利用する場合も
データセット、テーブル単位はもちろんカラム単位で検索を実施できたりと有用性は高い。

また、BigQueryをDMP/DWHとしてデータを集約しているのであれば、
DataCatalogを「利用開始するだけ」で
一定水準のメタデータ管理状態を達成できるのは便利。

Discussion