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

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

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

Knowledge Catalog メタモデル

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

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

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

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

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

エントリ グループ

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

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

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

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

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

エントリとエントリを接続するエントリリンクを含むエントリ グループ。 エントリとエントリを接続するエントリリンクを含むエントリ グループ。
図 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)は、アスペクト タイプに準拠する関連するメタデータ フィールドのセットです。アスペクトは、エントリ、エントリパス(列)、またはエントリリンクにアタッチして、そのリソースを記述します。

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

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

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

たとえば、ContactInfo アスペクト タイプのインスタンスを 値 {"owner_name": "Alex", "email": "alex@example.com"} で作成し、 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 を含む)

  • AI と ML

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

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

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

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

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

    • AlloyDB for PostgreSQL のクラスタ、インスタンス、データベース、スキーマ、テーブル、 ビュー(プレビュー)。 Knowledge Catalog は、AlloyDB プライマリ インスタンスからメタデータを取得するだけで、リードレプリカからは取得しません。詳細については、 Knowledge Catalog を使用して AlloyDB for PostgreSQL リソースを管理するをご覧ください。
    • Cloud SQL インスタンス、データベース、スキーマ、テーブル、ビュー。 Knowledge Catalog は、Cloud SQL プライマリ インスタンスからメタデータを取得するだけで、リードレプリカからは取得しません。詳細については、 Knowledge Catalog を使用して Cloud SQL リソースを管理するをご覧ください。

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

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

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

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

メタデータ変更フィード

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

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

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

料金

Knowledge Catalog は、メタデータ ストレージ SKU に基づいて、保存されたメタデータ ボリュームの料金を課金します。詳細については、 Knowledge Catalog の料金をご覧ください。

次の機能の使用に対して料金は発生しません。

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

次のステップ

クイックスタート

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

取り込み

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

ガバナンス

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

検出

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

AI コンテキスト

LLM 対応のメタデータと Active Context を取得して、生成 AI エージェントを根拠付けます。

移行

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