在 Gemini 的协助下分析数据

本教程介绍如何在 Gemini in BigQuery 中使用依托 AI 技术的助理来分析数据。

对于本教程中的示例,设想您是一名数据分析师,需要根据数据集分析和预测产品销售情况。

本教程假定您熟悉 SQL 和基本的数据分析任务。您不一定要了解 Google Cloud 产品。如果您刚开始接触 BigQuery,请参阅 BigQuery 快速入门

目标

  • 使用 Gemini in BigQuery 可以回答有关 BigQuery 如何处理特定数据分析任务的问题。
  • 提示 Gemini in BigQuery 查找数据集,并解释和生成 SQL 查询。
  • 构建机器学习 (ML) 模型,预测未来周期。

费用

本教程使用以下可计费的 Google Cloud 产品:

如需根据您的预计使用量来估算费用,请使用价格计算器

准备工作

  1. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  2. 确保已为您的 Google Cloud 项目设置了 Gemini in BigQuery
  3. 在 Google Cloud 控制台中,转到 BigQuery 页面。

    转到 BigQuery

  4. 创建一个数据集 bqml_tutorial。您可以使用该数据集来存储数据库对象,包括表和模型。

  5. 如需启用完成本教程所需的 Gemini in BigQuery 功能,请在 BigQuery 工具栏中依次点击 pen_spark Gemini,然后选择以下选项:

    • 自动补全
    • 自动生成
    • 说明

了解 BigQuery 功能

在开始之前,设想您想要详细了解 BigQuery 如何处理数据查询。如需获取帮助,您可以向 Gemini in BigQuery 发送自然语言语句(或提示),如下所示:

  • “如何开始使用 BigQuery?”
  • “使用 BigQuery 进行数据分析有什么好处?”
  • “BigQuery 如何处理查询的自动扩缩?”

Gemini in BigQuery 还可以提供有关如何分析数据的信息。对于此类帮助,您可以发送提示,例如:

  • “如何在 BigQuery 中创建时序预测模型?”
  • “如何将不同类型的数据加载到 BigQuery 中?”

访问和分析数据

Gemini in BigQuery 可以帮助您了解可以访问哪些数据进行分析,以及如何分析这些数据。

在本例中,设想您需要以下方面的帮助:

  • 查找要分析的销售数据集和表。
  • 了解销售数据集中数据表和查询之间的关系。
  • 了解复杂查询并编写使用该数据集的查询。

查找数据

在查询数据之前,您需要知道自己可以访问哪些数据。每个数据产品都会以不同方式整理和存储数据。

如需帮助,您可以向 Gemini in BigQuery 发送提示,例如“如何了解我可以在 BigQuery 中使用的数据集和表?”。

  1. 在 Google Cloud 控制台中,转到 BigQuery 页面。

    转到 BigQuery

  2. 在 Google Cloud 控制台工具栏中,点击 spark 打开或关闭 Gemini AI 聊天

  3. Gemini 窗格中,输入以下提示 How do I learn which datasets and tables are available to me in BigQuery?

  4. 点击 send 发送提示

    了解 Gemini for Google Cloud 如何以及何时使用您的数据

    响应中包含多种用于列出数据集中项目、数据集或表的方法。

  5. 可选:如需重置聊天记录,请在 Gemini 窗格中依次点击 delete Gemini,然后点击Gemini

了解和编写 BigQuery SQL

在此示例中,假设您选择了要分析的数据,现在想要查询该数据。Gemini in BigQuery 可以帮助您使用 SQL,无论是帮助您理解复杂且难以解析的查询,还是生成新的 SQL 查询。

让 Gemini 协助解释 SQL 查询的提示

设想您想要了解其他人编写的复杂查询。Gemini in BigQuery 可以使用纯文本语言(例如查询语法、底层架构和业务上下文)解释查询。

  1. 在 Google Cloud 控制台中,转到 BigQuery 页面。

    转到 BigQuery

  2. 在查询编辑器中,打开或粘贴您要解释的查询。 例如:

    SELECT
      u.id AS user_id,
      u.first_name,
      u.last_name,
      avg(oi.sale_price) AS avg_sale_price
    FROM `bigquery-public-data.thelook_ecommerce.users` AS u
    JOIN `bigquery-public-data.thelook_ecommerce.order_items` AS oi
      ON u.id = oi.user_id
    GROUP BY 1, 2, 3
    ORDER BY avg_sale_price DESC
    LIMIT 10
    
  3. 突出显示相应查询,然后点击 auto_awesome 解释此所选查询

    Gemini 窗格中会返回类似于以下内容的回答:

    The intent of this query is to find the top 10 users by average sale price.
    The query first joins the users and order_items tables on the user_id
    column. It then groups the results by user_id, first_name, and last_name,
    and calculates the average sale price for each group. The results are then
    ordered by average sale price in descending order, and the top 10 results
    are returned.
    

生成 SQL 查询,按天和产品对销售额进行分组

在本示例中,您希望生成一个查询以列出每天的热门商品。然后,使用 thelook_ecommerce 数据集内的表,输入提示来让 Gemini in BigQuery 生成查询,按订单商品和商品名称计算销售额。

这类查询通常比较复杂,但您可以使用 Gemini in BigQuery 自动创建语句。您可以提供提示,以根据数据架构生成 SQL 查询。即使您手头没有查询代码,对数据架构的了解有限,或者对 SQL 语法只有基本了解,Gemini 协助功能也可以推荐一个或多个 SQL 语句。

如需提示 Gemini in BigQuery 生成查询以列出热门商品,请按照以下步骤操作:

  1. 在 Google Cloud 控制台中,转到 BigQuery 页面。

    转到 BigQuery

  2. 在导航菜单中,点击 BigQuery Studio

  3. 点击 编写新查询探索器窗格会自动加载所选数据库。

  4. 在查询编辑器中,输入以下提示,然后按 Enter 键:

    # select the sum of sales by date and product casted to day from bigquery-public-data.thelook_ecommerce.order_items joined with bigquery-public-data.thelook_ecommerce.products
    

    井号字符 (#) 用于提示 Gemini in BigQuery 生成 SQL 查询。Gemini in BigQuery 建议的 SQL 查询可能类似于以下内容:

    SELECT
      sum(sale_price),
      DATE(created_at),
      product_id
    FROM
      `bigquery-public-data.thelook_ecommerce.order_items`
        AS t1
    INNER JOIN `bigquery-public-data.thelook_ecommerce.products` AS t2
      ON t1.product_id = t2.id
    GROUP BY 2, 3
    
  5. 若要接受建议的代码,请按 Tab 键,然后点击运行以运行 SQL 语句。您还可以滚动浏览建议的 SQL 语句,并接受语句中建议的具体字词。

  6. 查询结果窗格中,查看查询结果。

构建预测模型并查看结果

在此示例中,使用 BigQuery ML 执行以下操作:

  • 使用趋势查询来构建预测模型。
  • 使用 Gemini in BigQuery 来解释查询,并帮助您编写查询语句来查看预测模型的结果。

您可以使用以下示例查询,并将实际销售额作为模型的输入。该查询是创建 ML 模型的一部分。

  1. 若要创建预测 ML 模型,请在查询编辑器中运行以下 SQL 查询:

    CREATE MODEL bqml_tutorial.sales_forecasting_model
      OPTIONS (
        MODEL_TYPE = 'ARIMA_PLUS',
        time_series_timestamp_col = 'date_col',
        time_series_data_col = 'total_sales',
        time_series_id_col = 'product_id')
    AS
    SELECT
      sum(sale_price) AS total_sales,
      DATE(created_at) AS date_col,
      product_id
    FROM
      `bigquery-public-data.thelook_ecommerce.order_items`
        AS t1
    INNER JOIN `bigquery-public-data.thelook_ecommerce.products` AS t2
      ON t1.product_id = t2.id
    GROUP BY 2, 3;
    

    您可以使用 Gemini in BigQuery 来帮助您理解此查询

    创建模型后,查询结果窗格的结果标签页会显示类似于以下内容的消息:

    Successfully created model named sales_forecasting_model.
    
  2. Gemini 窗格中,输入 Gemini in BigQuery 提示,让 Gemini 帮您编写一个查询,以在模型完成后从模型中获取预测结果,例如输入 How can I get a forecast in SQL from the model?

    根据提示的上下文,回答中包含一个用于预测销售额的 ML 模型示例:

    SELECT
      *
    FROM
      ML.FORECAST(
        MODEL `PROJECT_ID.bqml_tutorial.sales_forecasting_model`,
        STRUCT(
          7 AS horizon,
          0.95 AS confidence_level))
    

    在此答案中,PROJECT_ID 是您的 Google Cloud 项目。

  3. Gemini 窗格中,复制 SQL 查询。

  4. 在查询编辑器中,运行 SQL 查询。

清理

为避免系统因本教程中使用的资源而向您的 Google Cloud 账号收取费用,您可以删除为本教程创建的 Google Cloud 项目。或者,您也可以删除各个资源。

删除项目

  1. In the Google Cloud console, go to the Manage resources page.

    Go to Manage resources

  2. In the project list, select the project that you want to delete, and then click Delete.
  3. In the dialog, type the project ID, and then click Shut down to delete the project.

删除数据集

删除项目也将删除项目中的所有数据集和所有表。如果您希望重复使用该项目,则可以删除在本教程中创建的数据集。

  1. 在 Google Cloud 控制台中,转到 BigQuery 页面。

    转到 BigQuery

  2. 在导航菜单中,选择您创建的 bqml_tutorial 数据集。

  3. 如需删除数据集、表和所有数据,请点击删除数据集

  4. 如需确认删除,请在删除数据集对话框中输入数据集的名称 (bqml_tutorial),然后点击删除

后续步骤