Spanner Graph の可視化を使用する

このページでは、Spanner Graph の可視化を使用する方法について説明します。Spanner Graph の可視化では、クエリによって返されたグラフ要素やグラフスキーマの要素を表示できます。可視化は、データポイント(ノード)がどのように接続されているか(エッジ)を把握する際に役立ちます。数百個のデータポイントを含むテーブルは解釈が難しい場合がありますが、グラフとして可視化することによりパターン、依存関係、異常を明らかにできます。

Spanner Graph のクエリ結果を可視化する

Spanner Studio で Spanner Graph のクエリ結果を可視化するには、クエリで SAFE_TO_JSON 関数または TO_JSON 関数を使用してグラフ要素を JSON 形式で返す必要があります。ノードとエッジを個別に返すのではなく、グラフパスを返すことをおすすめします。パスを返すメリットは次のとおりです。

  • パスには、ノードとエッジの完全なデータが含まれます。個々のノードとエッジを返すと、複雑なクエリの可視化で一部の中間ノードとエッジが使用できない場合があります。

  • パスを返す場合、ノードとエッジを個別に返す場合よりも RETURN ステートメントが複雑にならない場合があります。

次のサンプルクエリは、可視化可能なアカウント移行のパスを返します。

GRAPH FinGraph
MATCH result_paths = (account:Account {is_blocked: True})-[:Transfers]->(dest_account:Account)
RETURN SAFE_TO_JSON(result_paths) AS result_paths

クエリを実行すると、クエリ結果の領域に可視化が表示されます。詳細パネルには、ノードラベルとエッジラベルの概要と、それぞれの数が表示されます。ノードまたはエッジをクリックしてグラフを移動し、プロパティ、隣接ノード、接続を表示します(以下のスクリーンショットを参照)。また、クエリ結果をテーブルとして表示することも、基になるグラフスキーマの可視化に切り替えることもできます。

クエリ結果の切り替えボタン。

詳細については、グラフ要素を JSON として返すをご覧ください。

Spanner Graph の可視化レイアウトを選択する

可視化パネルのメニューには、次のレイアウト オプションがあります。

  • 強制レイアウト(デフォルト): ノードは互いに反発するポイント、接続されたノードは互いに引き寄せられるポイントとして表示されます。物理的な力をシミュレートすることで、視覚的で直感的なレイアウトを作成します。

  • 階層型: 接続に基づく視覚的な階層を作成するようにノードを配置します。

  • 順序型: 接続に基づく視覚的なシーケンスを作成するようにノードを配置します。

  • ラベルを表示: グラフ上のすべてのノードラベルとエッジラベルを、すべてのズームレベルで表示します。

Spanner Graph の可視化のトラブルシューティング

次の項目は、Spanner Graph の可視化に関する問題と動作のトラブルシューティングと理解に役立ちます。

Spanner Graph クエリの可視化が表示されない

問題: Spanner Graph クエリを実行すると、テーブル形式でのみ表示されます。

考えられる原因: クエリがグラフ要素を JSON 形式で返していません。次に例を示します。

  • 次のクエリはノードとエッジ ID を返すため、可視化できません。
GRAPH FinGraph
MATCH (person:Person {name: "Dana"})-[owns:Owns]->(account:Account)
RETURN person.id as person_id, account.id as account_id
  • 次のクエリはプロパティ値を返すため、可視化できません。
GRAPH FinGraph
MATCH (person:Person {name: "Dana"})-[owns:Owns]->(account:Account)
RETURN owns.create_time, account.nick_name

推奨される解決策:

SAFE_TO_JSON または TO_JSON を使用して、グラフ要素を JSON 形式で返します。詳細については、Spanner Graph のクエリ結果を可視化するをご覧ください。

Spanner Graph のクエリ結果が一部だけ可視化される

問題: クエリ結果の可視化に、クエリ結果の一部しか表示されません。

考えられる原因: クエリが 10 MB を超えるデータを返しています。クエリの可視化では、最大 10 MB のデータが表示されます。

推奨される解決策: クエリを簡素化して、10 MB 未満のデータが返されるようにします。

Spanner Graph の可視化に予期しないラベルのノードまたはエッジが含まれている

問題: Spanner Graph の可視化のノードまたはエッジに予期しないラベルが表示されます。

考えられる原因: ノードまたはエッジに複数のラベルが付いています。Spanner Graph の可視化では、ノードとエッジごとに 1 つのラベルを表示できます。ノードまたはエッジに複数のラベルが付いている場合、最初のラベルが可視化に表示されます。

推奨される解決策: なし。表示されるラベルは変更できません。

Spanner Graph の可視化で一部のグラフ要素が表示されない

問題: 可視化には返されたノードとエッジがすべて含まれていますが、一部のグラフ要素が表示されません。

考えられる原因: Spanner Graph の可視化の作成に使用されたクエリが、グラフパスではなく個々のノードとエッジを返します。

推奨される解決策: グラフパスを返すようにクエリを更新します。

次のステップ