Spanner Graph アルゴリズムの概要

グラフ アルゴリズムの概要

Spanner Graph は、Google Research Graph Mining と連携して、不正行為の検出、エンティティ解決、レコメンデーションなどの主要なユースケースをカバーする高性能グラフ アルゴリズムのスイートを提供します。アルゴリズムは、数分から数十分の実行時間で、数十億のエッジまでスケーリングできます。Spanner Graph でアルゴリズムを実行するには、Spanner Graph クエリでアルゴリズム関数を呼び出します。

フルマネージド

Spanner Graph アルゴリズムは、Spanner Data Boost と大規模なグラフ分析ワークロードに適した独立したオンデマンド コンピューティング リソースを使用するフルマネージド サービスです。このアーキテクチャを使用すると、プロビジョニングされた Spanner インスタンス上の既存のワークロードへの影響がほぼゼロの状態で、計算負荷の高いグラフ アルゴリズムを実行できます。

シームレスな GQL 統合

グラフ アルゴリズムは、Spanner Graph クエリの組み込み関数呼び出しとして呼び出されます。アルゴリズムの出力を Cloud Storage にエクスポートするか、Spanner に書き戻してグラフを拡張できます。 Google Cloud コンソール、Google Cloud CLI、クライアント ライブラリ、REST API、RPC API を使用して、他の Spanner Graph クエリを実行するのと同じ方法で、アルゴリズム呼び出しを含む Spanner Graph クエリを実行できます。

次の例は、FinGraph というグラフで連結成分分析を実行して、Transfers で連結された Accounts のクラスタを特定し、出力を my-bucket-name/my-output.csv として Cloud Storage に永続化する方法を示しています。詳細については、アルゴリズムを実行するをご覧ください。

EXPORT DATA OPTIONS (
  uri = "gs://my-bucket-name/my-output.csv",
  format = "csv"
) AS
GRAPH FinGraph
CALL WeaklyConnectedComponents(node_labels => ['Account'], edge_labels => ['Transfers']) YIELD node, cluster
RETURN node.id, cluster;

課金

Spanner Graph アルゴリズムは、アルゴリズムの実行に Spanner Data Boost と独立したコンピューティング リソースを使用します。アルゴリズム コンピューティングがアクティブなときに消費された実際のサーバーレス プロセッシング ユニット(SPU)に対してのみ料金が発生します。グラフ アルゴリズムの課金情報は、 Google Cloud コンソールで確認できます。

  1. [お支払いレポート] に移動
  2. [フィルタ] パネルで、グラフ アルゴリズムが使用された各リージョンの Spanner Data Boost SKU に SKU をフィルタします。

Spanner の料金の詳細については、Spanner の料金をご覧ください。

権限

グラフ アルゴリズムを呼び出すには、プリンシパルに spanner.databases.runGraphAlgorithms Identity and Access Management(IAM)権限が必要です。この権限を管理するには、roles/spanner.graphIntelligenceUser IAM を付与するか、spanner.databases.runGraphAlgorithms 権限を持つカスタムロールを作成します。roles/spanner.graphIntelligenceUser には roles/spanner.databaseReaderWithDataBoost が含まれています。

次のステップ