Amazon DataZone で実現するデータガバナンス - データの発見・共有・アクセス制御

ドメインベースのデータカタログを構築し、サブスクリプションワークフローでデータの発見・共有・アクセス制御を実現する手法を紹介します。

DataZone の概要

DataZone は組織内のデータの発見・共有・ガバナンスを統合するサービスで、数千のデータアセットと数百のユーザーを管理できます。データプロデューサーがデータアセットをカタログに公開し、データコンシューマーがカタログから必要なデータを検索してサブスクリプションを申請します。承認後、コンシューマーは AthenaRedshift から直接データにアクセスできます。DataZone はポータル UI を提供しており、技術者でないビジネスユーザーもブラウザからデータアセットを検索・閲覧できます。組織のデータ資産の全体像を可視化し、サイロ化したデータを横断的に活用可能にすることが主な目的です。

ドメインとサブスクリプション

ドメインは事業部門やチームに対応する論理的なグループで、データの所有権と管理責任を明確化します。各ドメインにはデータオーナーを設定でき、そのドメイン内のアセット公開やサブスクリプション承認の権限を委譲できます。プロジェクトはドメイン内でユーザーがデータを利用する作業単位で、分析環境 (Athena/Redshift) への接続を管理します。サブスクリプションワークフローでは、コンシューマーがデータアセットへのアクセスを申請し、プロデューサーまたは管理者が承認します。承認後、Lake Formation の権限が自動的に付与され、コンシューマーは Athena からクエリを実行できます。自動承認ルールを設定すれば、特定条件 (同一ドメイン内など) のリクエストを人手を介さず即時承認することも可能です。サブスクリプションには有効期限を設定でき、期限切れ後はアクセス権が自動失効するため、データの不必要な長期共有を防ぎます。

データ品質とカタログ管理

DataZone のデータ品質ルールで、公開されるデータアセットの品質を自動検証します。完全性 (NULL 値の割合)、一意性 (重複レコード)、鮮度 (最終更新日) などのルールを定義し、品質スコアをカタログに表示します。ビジネス用語集 (グロッサリー) で組織共通の用語定義を管理し、データアセットにタグ付けすることで、技術的なテーブル名だけでなくビジネス上の意味でデータを検索できます。メタデータフォームでデータの所有者、更新頻度、機密レベルなどのカスタム属性を定義し、ガバナンスに必要な情報をデータアセットに付与します。Glue データカタログとの統合で、既存のテーブル定義を DataZone に自動インポートできます。Redshift のテーブルも同様にカタログに登録可能です。検索機能は自然言語クエリに対応しており、テーブル名を正確に知らなくても「売上に関するデータ」のような曖昧な検索で目的のアセットを発見できます。 DataZone の設計パターンを網羅的に学ぶなら、技術書 (Amazon)を参照してください。

DataZone の料金

DataZone の料金はカタログに登録されたデータアセット数とメタデータ API コール数で構成されます。データアセットは 1 つあたり月額約 0.10 ドルで、メタデータ API は 100 万リクエストあたり約 4.25 ドルです。サブスクリプションの承認・管理は追加料金なしで利用できます。大規模な組織ではデータアセット数が数千に達するため、不要なアセットの定期的な棚卸しでコストを管理します。Glue データカタログとの統合で既存のメタデータを活用し、重複したカタログ管理を避けることで運用コストも削減できます。

Lake Formation ・ Glue との連携と設計パターン

DataZone は Lake Formation と深く統合されており、サブスクリプション承認時の権限付与は Lake Formation のテーブル・カラムレベルのアクセス制御で実現します。これにより、同じ S3 上のデータを参照しつつ、コンシューマーごとに見えるカラムを制限する列レベルセキュリティが実装できます。Glue データカタログとは双方向に同期し、Glue 側で新しいテーブルが検出されると自動的に DataZone カタログに反映されます。マルチアカウント構成では、中央ガバナンスアカウントに DataZone ドメインを配置し、ワークロードアカウントの Glue カタログを連携させる Hub-Spoke 型が推奨されます。この構成によりガバナンスポリシーを一元管理しつつ、データの物理的な保存場所は各アカウントに分散できます。環境 (Environment) の設定で Athena ワークグループや Redshift クラスターを紐付け、コンシューマーが承認後すぐにクエリを開始できる状態を自動プロビジョニングします。

導入時の落とし穴と運用のベストプラクティス

DataZone の導入時にありがちな失敗パターンがあります。ドメイン設計が粗すぎると (全社で 1 ドメインなど) 承認フローが集中してボトルネックになり、細かすぎると (テーブルごとにドメインなど) 管理が煩雑になります。事業部門やプロダクトラインを単位とする粒度が実務上バランスが良い構成です。ビジネス用語集を整備せずに運用開始すると、カタログの検索精度が低くなり利用者が目的のデータを見つけられません。DataZone 導入前に、主要なデータドメインの用語定義を 50〜100 語程度整備しておくことを推奨します。データ品質ルールを最初から厳格にしすぎると、品質スコアが低い既存テーブルが公開できず実運用に乗りません。まず緩い閾値で公開を開始し、品質改善を並行して進めるアプローチが現実的です。カタログの陳腐化を防ぐため、データオーナーに四半期ごとの棚卸し責任を課し、使われていないアセットを非公開にする運用ルールを設けると効果的です。

まとめ

DataZone はデータの発見・共有・ガバナンスを統合し、組織全体でデータの価値を最大化するサービスです。ドメインベースの所有権管理でデータの責任を明確化し、サブスクリプションワークフローで承認ベースのデータ共有を実現します。Lake Formation との統合による列レベルセキュリティとマルチアカウント対応で、エンタープライズ規模のガバナンス要件に対応します。データ品質ルールとビジネス用語集で、カタログの信頼性と検索性を向上させます。