Knowledge Catalog のメタデータについて

Knowledge Catalog(旧称 Dataplex Universal Catalog)は、分散データ資産全体で統合された構造化メタデータ管理プラットフォームを提供します。技術構造、ビジネス コンテキスト、データ品質指標、運用上の関係を自動的に検出、インデックス登録、整理します。

メタデータを柔軟で拡張可能なメタモデルに整理することで、Knowledge Catalog は Google の Agentic Data Cloud 内で Active Context Graph の構造基盤を確立します。このコンテキスト グラフにより、データチームはアセットを検出して管理し、生成 AI エージェントは信頼できるビジネス コンテキストを取得できます。

Knowledge Catalog メタモデル

Knowledge Catalog は、コンテナ、アセット、スキーマ、関係のモジュラー階層を通じてメタデータを整理します。

  • コンテナとアセット: エントリ グループは、個々のデータアセットとそのスキーマ列を表すエントリを整理します。
  • 構造化エンリッチメント: アスペクト タイプはアスペクトのスキーマを定義します。これにより、構造化メタデータがエントリ、列、またはリレーションシップに付加されます。
  • 標準とガバナンス: エントリタイプは、エントリに必要なアスペクトを適用するテンプレートを定義します。
  • 関係: エントリリンクタイプは、関連するエントリとビジネス用語を結び付ける関係(エントリリンク)を定義します。

次の表に、システム管理リソース( Google Cloudによって自動的に提供される)とユーザー定義のカスタム リソースの違いをまとめます。

メタモデル要素 システム マネージド(組み込み) ユーザー定義(カスタム)
エントリ グループ Google Cloud サービス(@bigquery@spanner@pubsub など)ごとに事前定義されています。 カスタム データアセットと権限をグループ化して管理するためにユーザーが作成します。
Entries Google Cloud ソース(BigQuery のテーブル、ビュー、データセット、モデルなど)から自動的に入力されます。 ユーザーがカスタム データソース、ファイル、サードパーティ データベースを表すために作成します。
アスペクト タイプ 事前定義されたシステム テンプレート(SchemaOverviewContactsDataQualityLineage など)。 ユーザーが作成し、ドメイン固有のメタデータ スキーマ(PII 分類や SLA 階層など)を定義します。
Aspects ソースシステム、クエリログ、自動スキャンから自動的に入力されます。 ユーザー、パイプライン、エージェントによって作成され、エントリ、列、エントリリンクに関連付けられます。
エントリタイプ Google Cloud リソースタイプを表す事前定義されたテンプレート。 カスタム データアセットの必須アスペクトとオプションのアスペクトを指定するためにユーザーが定義します。
エントリリンク 組み込みの関係タイプ(synonymdefinitionschema-joinrelated など)。 特定のエントリまたは列の間に作成されたインスタンス。システム間の接続をモデル化します。

以降のセクションでは、Knowledge Catalog メタモデルを構成する主なコンポーネントについて説明します。

エントリ グループ

エントリ グループ(EntryGroup)は、エントリとエントリ リンクのリージョン コンテナであり、これらのリソースを管理するための管理境界とセキュリティ境界として機能します。

エントリ グループを使用して、次の構成を行います。

  • Identity and Access Management のアクセス制御: 個々のエントリ権限を変更せずに、エントリ グループの特定のチームに表示権限または編集権限を付与します。
  • ロケーションとプロジェクトの属性: 地理的リージョンとプロジェクトの所有権でアセットをグループ化します。

Google Cloud ソースの場合、Knowledge Catalog はプロジェクトごとにシステム エントリ グループ(@bigquery@spanner など)を自動的に作成します。カスタム データソースの場合は、カスタム エントリ グループを作成します。

たとえば、財務チームは production_finance_data という名前のカスタム エントリ グループを作成して、財務関連のすべてのカスタム エントリのアクセス権限を一元管理できます。

エントリとエントリを接続するエントリリンクを含むエントリ グループ。 エントリとエントリを接続するエントリリンクを含むエントリ グループ。
図 1. エントリ グループ、エントリ、エントリ リンク(クリックして拡大)

詳細については、エントリ グループをご覧ください。

エントリとスキーマパス

エントリ(Entry)は、単一のデータアセットを表します。エントリは、構造化データベース テーブル、分析モデル、非構造化オブジェクト テーブル、カスタム外部データセットを表すことができます。

エントリの主なコンポーネントは次のとおりです。

  • エントリ識別子: 親エントリ グループ内の一意のリソース名。
  • エントリタイプ: エントリの構造と必須アスペクトを定義するテンプレート。
  • アスペクト: エントリにアタッチされた構造化メタデータ属性。
  • スキーマパス(列): データアセット内の特定のサブセクションまたはフィールド(BigQuery テーブルの列や JSON スキーマのフィールドなど)。

列を使用すると、アセット内の個々のフィールドにメタデータを追加できます。列は手動で定義しません。schema タイプのアスペクトをエントリに付加すると、列が入力されます。ネストされたフィールドは、ドット表記のパス(customer.address.postal_code など)を使用して参照できます。

たとえば、orders_project.sales.customer_orders という名前の BigQuery テーブルはエントリとして表されます。そのテーブル内の email_address フィールドに機密情報が含まれていることを記述するには、分類アスペクトを email_address 列パスに直接適用します。

詳細については、エントリをご覧ください。

アスペクト タイプ

アスペクト タイプ(AspectType)は、アスペクトのフィールド、データ型、検証ルールを定義する再利用可能なスキーマ テンプレートです。各アスペクトは、アスペクト タイプのインスタンスです。

アスペクト タイプは、システム定義( Google Cloudによって提供)またはカスタム(組織によって作成)にできます。

カスタム アスペクト タイプの metadata_template を定義するときに、次のサポートされているデータ型を使用できます。

フィールドのデータ型 説明 使用例
string テキスト値(UTF-8)。 所有者のメールアドレス、データ分類ラベル、部門名。
integer/number 数値(整数または浮動小数点数)。 データ保持日数、SLA 目標割合、優先度ランク。
boolean True または False のフラグ。 contains_pii: trueis_certified: false
enum 許可された文字列値の事前定義されたリスト。 環境: ["DEV", "STAGING", "PROD"]
datetime/timestamp ISO 8601 形式の日時。 最終認定日、コンプライアンス レビューの期限。
record 子フィールドを含むネストされた構造化オブジェクト。 ContactInfo { name: string, email: string, phone: string }
array 任意のプリミティブ型またはレコード型の繰り返し値のリスト。 セカンダリ データ オーナーのリスト: ["user1@example.com", "user2@example.com"]
map 拡張可能な属性の Key-Value 文字列ペア。 カスタム デプロイタグ: {"cost_center": "1042", "tier": "gold"}

たとえば、連絡先情報の再利用可能なテンプレートを定義するには、owner_namestring)、emailstring)、support_channelstring)のフィールドを含む ContactInfo という名前のアスペクト タイプを作成します。

エントリに付加されるアスペクトを定義するアスペクト タイプと、アスペクト タイプを必要とするエントリタイプ。 エントリに付加されるアスペクトを定義するアスペクト タイプと、アスペクト タイプを必要とするエントリタイプ。
図 2. アスペクト タイプ、アスペクト、エントリタイプ(クリックして拡大)

詳細については、アスペクト タイプをご覧ください。

アスペクト

アスペクト(Aspect)は、アスペクト タイプに準拠する関連するメタデータ フィールドのセットです。アスペクトは、エントリ、エントリパス(列)、またはエントリリンクにアタッチされ、そのリソースを説明します。

以前のタグ付けシステムとは異なり、ナレッジ カタログのアスペクトは親エントリまたはエントリリンク内に直接カプセル化されるため、アトミックな読み取り / 書き込みオペレーションを実行できます。

アスペクトは複数の関数で使用されます。

  • 技術構造: Schema アスペクトは、テーブルの列、データ型、説明を記述します。
  • ビジネス コンテキスト: カスタム アスペクトは、所有権、コンプライアンス、ライフサイクル ステータスを記述します。
  • 運用の信頼性: データ品質の側面で、自動化ルールのスキャンの結果と検証スコアが記録されます。
  • 非構造化エンティティ グラフ: GraphProfile アスペクトは、未加工のファイルから AI によって抽出されたエンティティと関係エッジをキャプチャします。

たとえば、値 {"owner_name": "Alex", "email": "alex@example.com"} を持つ ContactInfo アスペクト タイプのインスタンスを作成し、customer_orders エントリにアタッチできます。

詳細については、アスペクトをご覧ください。

エントリタイプ

エントリタイプ(EntryType)は、カスタム エントリを作成するためのガバナンス テンプレートです。このタイプのエントリに付加する必要がある必須のアスペクト タイプを設定することで、メタデータの品質基準を適用します。

特定のエントリタイプのエントリを作成すると、Knowledge Catalog は、エントリタイプで required としてマークされているすべてのアスペクト タイプが存在し、有効であることを検証します。

たとえば、OwnerInfo アスペクト タイプと DataRetentionPolicy アスペクト タイプを必須として指定する CertifiedDataProduct という名前のエントリタイプを作成できます。このエントリタイプで作成された新しいエントリには、保存する前にこれらのアスペクトを含める必要があります。

詳細については、エントリタイプをご覧ください。

エントリリンクとエントリリンク タイプ

エントリリンク(EntryLink)は、2 つのデータ エントリ間、またはエントリ内の特定の列間のセマンティック関係を確立します。すべてのエントリリンクは、エントリリンク タイプ(EntryLinkType)のインスタンスです。

エントリ リンクには、方向性のあるものと方向性のないものがあります。

  • 対称(非方向性): 両側がピアの関係(synonymrelatedschema-join など)。
  • 非対称(方向性あり): 明示的なソースとターゲットを持つ関係(例: definition。ビジネス用語集の用語をテーブル列にリンクする)。

アスペクトをエントリリンクに直接関連付けることもできます(schema-join リンクを除く)。これにより、結合の信頼度スコア、変換ルール、マッピング ノートの記録など、関係自体を記述できます。

Knowledge Catalog は、次の組み込みエントリ リンクタイプをサポートしています。

  • synonym: 同等のビジネス コンセプトまたは代替用語を接続します。
  • related: システム間で疎結合のアセットを接続します。
  • definition: ビジネス用語集の定義を物理列またはエントリに接続します。
  • schema-join: 一致する外部キーまたはスキーマパスに沿って結合できるテーブルを接続します。
リンクされたエントリ、アスペクト、それらのタイプを含むエントリリンク。 リンクされたエントリ、アスペクト、それらのタイプを含むエントリリンク。
図 3. リンクされたエントリ、アスペクト、そのタイプを含むエントリリンク(クリックして拡大)。

詳細については、EntryLinks REST リファレンスをご覧ください。

ビジネス用語集と用語

ビジネス用語集を使用すると、用語集、カテゴリ、ビジネス用語を定義して、正式なビジネス分類法を確立できます。

definition または synonym タイプのエントリリンクを使用すると、ビジネス用語を物理エントリと列パスに直接マッピングできます。ユーザーまたは AI エージェントが自然言語を使用してカタログを検索すると、検索エンジンはこれらのビジネス用語を解決して、正しい物理データアセットを見つけます。

詳細については、ビジネス用語集を管理するをご覧ください。

サポートされている Google Cloud ソース

Knowledge Catalog は、次のGoogle Cloud ソースからメタデータを自動的に取り込みます。AlloyDB for PostgreSQL や Cloud SQL などの一部のサービスでは、メタデータを取り込む前に Knowledge Catalog 統合を有効にする必要があります。

  • 分析とレイクハウス

    • BigQuery のデータセット、テーブル、ビュー、モデル、ルーティン、接続、リンクされたデータセット、グラフプレビュー
    • BigQuery Sharing(旧 Analytics Hub)のエクスチェンジとリスティング
    • Dataform リポジトリとコードアセット
    • Dataproc Metastore のサービス、データベース、テーブル
    • Iceberg REST カタログ テーブル( Google Cloud Lakehouse ランタイム カタログ IRC、Databricks Unity IRC、AWS Glue Data Catalog IRC、Snowflake Horizon IRC を含む)

    • Apache Hive テーブル

    • SAP Business Data Cloud(BDC)Delta Lake テーブル

    • Lakehouse ランタイム カタログで管理される Apache Iceberg テーブル

  • AI と ML

    • Vertex AI のモデル、データセット、特徴グループ、特徴ビュー、オンライン ストア インスタンス
  • ビジネス インテリジェンス

    • Looker(Google Cloud コア)インスタンス、ダッシュボード、ダッシュボード要素、Look、LookML プロジェクト、モデル、Explore、ビュー(プレビュー
  • データベース

    • Bigtable のインスタンス、クラスタ、テーブル(列ファミリーの詳細を含む)
    • Spanner のインスタンス、データベース、テーブル、ビュー
  • ストリーミングとメッセージング

    • Pub/Sub トピック
  • 非構造化データ

  • オペレーショナル データベース

サードパーティ ソースから Knowledge Catalog にメタデータをインポートするには、Knowledge Catalog コネクタまたはマネージド接続パイプラインを使用します。詳細については、Knowledge Catalog コネクタについてマネージド接続の概要をご覧ください。

プロジェクトとロケーションの制約

Knowledge Catalog のカタログ リソースは、特定の Google Cloud プロジェクトと地理的位置に保存されます。次のスコープ制約が適用されます。

リソース ロケーション ルール プロジェクト ルール
Entries エントリのロケーションは、その EntryType のロケーションと一致するか、EntryTypeglobal である必要があります。 グローバルまたは同じプロジェクトのエントリ タイプを参照できます。
エントリの側面 アスペクトの AspectType は、エントリと同じロケーションに保存されているか、AspectTypeglobal である必要があります。 グローバルまたは同じプロジェクトのアスペクト タイプを参照できます。
エントリリンク エントリリンクのロケーションは EntryLinkType と一致しているか、EntryLinkTypeglobal である必要があります。 同じ組織内の異なるプロジェクトに存在するエントリをリンクできます。
エントリタイプ エントリタイプと同じロケーションに保存されているアスペクト タイプ、または global のアスペクト タイプで構成されます。 エントリタイプがカスタム アスペクト タイプを参照する場合、アスペクト タイプは同じプロジェクトとロケーションに存在する必要があります。

メタデータ変更フィード

Knowledge Catalog は、メタデータ変更フィードを使用して、メタデータ変更イベントをほぼリアルタイムでストリーミングできます。

メタデータ変更フィードは、エントリの作成、更新、削除に関する通知を、構成した Pub/Sub トピックにパブリッシュします。サブスクライバー クライアントは、これらのイベントを使用して、スキーマの変更時のデータ品質評価のトリガーやダウンストリーム ガバナンス ダッシュボードの更新など、運用ワークフローを自動化できます。

詳細については、メタデータ変更フィードについてをご覧ください。

料金

Knowledge Catalog では、メタデータ ストレージ SKU に基づいて保存されたメタデータ量に対して料金が請求されます。詳細については、Knowledge Catalog の料金をご覧ください。

以下については料金は発生しません。

  • カタログ メタモデル リソース(エントリタイプ、アスペクト タイプ、エントリ グループ、エントリ、エントリリンク)の作成と管理。
  • Google Cloud コンソールで実行された検索 API 呼び出しと検索クエリ。

次のステップ

クイックスタート

アセットを検出し、カスタム アスペクト メタデータを BigQuery テーブルに添付します。

取り込み

エントリ タイプを定義し、外部データベースとパイプラインからカスタム メタデータを取り込みます。

ガバナンス

ビジネス分類を作成し、用語を物理テーブルと列に直接マッピングします。

検出

検索述語を使用して、Google Cloud とカスタムソース全体のリソースを検出します。

AI コンテキスト

LLM 対応のメタデータとアクティブ コンテキストを取得して、生成 AI エージェントの基盤を構築します。

移行

タグ テンプレート、カスタム エントリ、ワークフローを Knowledge Catalog に移行します。