直观呈现图表

如需请求支持或对此功能提供反馈,请发送电子邮件至 bq-graph-preview-support@google.com

BigQuery Graph 可视化图表可以显示查询返回的图表元素或图表架构元素。您可以在 笔记本环境中直观呈现图表,例如 BigQuery Studio、Google ColabJupyter Notebook

可视化图表可帮助您了解数据点(节点)的连接方式(边缘)。虽然包含数百个数据点的表可能难以解读,但其图表可视化效果可以揭示模式、依赖关系和异常情况。

在笔记本环境中直观呈现查询结果和架构

您可以在笔记本环境中直观呈现图表查询结果和图表架构,例如 BigQuery Studio、Google Colab 和 Jupyter Notebook。可视化图表以 IPython Magics 的形式实现。

直观呈现图表查询结果

如需在笔记本中直观呈现查询结果,请按以下步骤操作:

  1. 在笔记本单元格中,运行以下命令以安装最新的 BigQuery Magics 库:

    !pip install bigquery_magics==0.12.1
    
  2. 在笔记本环境中,确保您已安装 BigQuery Graph 客户端库。

  3. 在笔记本单元格中,使用 %%bigquery --graph Magic 命令,后跟您的 GQL 查询。查询必须使用 the TO_JSON function 以 JSON 格式返回图表元素。建议您返回图表路径,而不是单独返回节点和边缘。返回路径具有以下优势:

    • 路径包含节点和边缘的完整数据。如果您返回的是各个节点和边缘,则复杂查询的可视化图表中的某些中间节点和边缘可能不可用。

    • 如果您返回路径,则 RETURN 语句的复杂程度会低于单独返回节点和边缘的复杂程度。

  4. 运行单元。可视化图表会显示在单元的输出区域中。

以下示例查询会查找人员、其账号和已还贷款,然后在笔记本中返回结果:

%%bigquery --graph
GRAPH graph_db.FinGraph
MATCH
  p = ((person:Person {name: "Dana"})-[own:Owns]->
  (account:Account)-[transfer:Transfers]->(acount2:Account)<-[own2:Owns]-(person2:Person))
RETURN
  TO_JSON(p) AS path;

运行查询后,输出区域会显示可视化图表。详细信息面板会显示节点和边缘的标签摘要,以及每个标签的计数。点击节点或边缘即可浏览图表并查看属性、近邻项和连接。下图显示了属性、近邻项和连接。

直观呈现查询结果。

直观呈现 BigQuery Graph 架构

图表的结构(包括其节点、边缘、标签和属性)由其架构定义,该架构将 BigQuery 表中的数据映射到图表元素。图表定义存储在您使用输入表创建的架构中。

您可以直观呈现使用架构创建的图表。直观呈现架构有助于您了解图表的结构,包括其中包含的节点和边缘的类型及其连接。这对于复杂图表非常有用,因为它可以清晰地显示关系,而这些关系可能很难从您用于创建图表的 DDL 语句中推断出来。下图显示了图表架构可视化图表的示例。

图表架构的可视化图表。

如需在笔记本中查看 BigQuery Graph 架构的可视化图表,请按以下步骤操作:

  1. 在笔记本单元格中,运行以下命令以安装 BigQuery Magics 库:

    !pip install bigquery_magics==0.12.1
    
  2. 在笔记本环境中,确保您已安装 BigQuery Graph 客户端库。

  3. 在笔记本单元格中,使用 %%bigquery --graph Magic 命令,后跟您的 GQL 查询。查询必须使用 the TO_JSON 函数以 JSON 格式返回图表元素。

  4. 运行单元。可视化图表会显示在单元的输出区域中。

  5. 在可视化图表输出中,依次点击 schema 架构视图

排查 BigQuery Graph 可视化图表问题

以下信息可帮助您排查和了解 BigQuery Graph 可视化图表问题和行为。

BigQuery Graph 查询未显示可视化图表

问题:您运行 BigQuery Graph 查询,但该查询仅以表 格式显示。

可能的原因:查询未以 JSON 格式返回图表元素。

例如,以下查询会返回属性值,而不是以 JSON 格式返回图表元素,因此无法直观呈现:

GRAPH graph_db.FinGraph
MATCH (person:Person {name: "Dana"})-[owns:Owns]->(account:Account)
RETURN owns.create_time, account.nick_name;

解决方案

使用 TO_JSON以 JSON 格式返回图表元素。如需了解详情,请参阅 直观呈现 BigQuery Graph 查询结果

BigQuery Graph 查询结果仅部分直观呈现

问题:查询结果可视化图表仅显示部分查询结果。

可能的原因:查询返回的数据超过 2 MB。查询可视化图表最多可以显示 2 MB 的数据。

解决方案:简化查询,使其返回的数据小于 2 MB。

某些图表元素未显示在 BigQuery Graph 可视化图表中

问题:可视化图表包含所有返回的节点和边缘,但部分图表 元素未显示。

可能的原因:用于创建 BigQuery Graph 可视化图表的查询返回的是各个节点和边缘,而不是图表路径。

解决方案:更新查询以返回图表路径。

后续步骤