借助 Antigravity 的 Google Cloud Data Agent Kit 扩展程序,您可以使用笔记本进行数据清理、特征工程和深度分析。您可以选择三种类型的笔记本。
- BigQuery DataFrames 笔记本 。这些是 Python 笔记本,可让您使用熟悉的 Pandas 和 scikit-learn API 处理 BigQuery 中的海量数据集。除了 Python 之外,它们还支持使用 GoogleSQL for BigQuery 编写代码。
具有本地内核的托管式 Apache Spark 笔记本 。这些是 Python 笔记本,可让您使用 Managed Service for Apache Spark 的 Spark Connect 库在 Managed Service for Apache Spark 上创建和执行作业。
具有远程内核的托管式 Apache Spark 笔记本 。借助这些笔记本,您可以在完全在 Managed Service for Apache Spark 上运行的远程内核上执行笔记本。您的代码的任何部分都不会在本地计算机上执行。除了 PySpark 之外,您还可以借助
%%sparksql单元魔法使用 Spark SQL 编写代码。
准备工作
对于 BigQuery 笔记本,必须在执行笔记本的同一 Python 虚拟环境中安装 bigframes 库。创建新笔记本时,初始化单元格包含以下注释行:
#%pip install --upgrade bigframes
可选:如果您未在 Python 虚拟环境中安装
bigframes库,请移除注释。可选:如果您打算在笔记本中编写 SQL 代码,请安装
bigquery-magics:
pip install --upgrade bigquery-magics
所需角色
如需获取执行 BigQuery 笔记本所需的权限,请让您的管理员在您在扩展程序中选择的项目中授予您 BigQuery Studio User (roles/bigquery.studioUser) 角色。
如需获取 Managed Service for Apache Spark 笔记本所需的权限,请让您的管理员在项目中授予您以下角色:
- Dataproc Editor
(
roles/dataproc.editor) - Dataproc Serverless
Editor
(
roles/dataproc.serverlessEditor)
如需详细了解如何授予角色,请参阅管理对项目、 文件夹和组织的访问权限。您 也可以通过自定义 角色或其他预定义 角色来获取所需的权限。
转换数据
对于 BigLake 或 BigQuery 表中的数据,该扩展程序提供了笔记本模板,可帮助您快速入门。
前往表格
前往 BigQuery 或 BigLake 表:
- 按
Ctrl/Cmd-Shift-P打开命令面板。 - 展开目录探索器,找到您的 BigQuery 或 BigLake。
- 右键点击表 ID。
在浮动菜单中,选择在 Spark DataFrame 中加载 或在 BigQuery DataFrame 中加载 。系统会显示一个新编辑器,其中包含有关该表的信息。
您还可以使用通用搜索功能查找表格。点击表 ID 以打开新编辑器,点击数据 标签页,然后选择在 Spark DataFrame 中加载 或在 BigQuery DataFrame 中加载 。
初始化笔记本
加载表格后,系统会在编辑器标签页中打开一个新的 Jupyter 笔记本,其中包含在您选择的 DataFrame 类型中加载表格所需的代码。
如果您未在 Python 虚拟环境中安装所需的库,请取消对 pip install 行的注释。
点击选择内核 ,然后选择 Python 内核。
对于具有远程内核的 Managed Spark 笔记本,您必须选择远程 Spark 内核。
点击单元格底部的 ▷ 全部运行 或按
Shift+Enter,以运行该单元格。如果系统提示您安装缺失的软件,请点击安装 。
该单元格会创建一个 DataFrame,其中包含所选表格中的数据。
对 DataFrame 应用数据转换
向笔记本添加其他单元格,并编写代码来转换数据。 对于 BigQuery DataFrames,您可以使用 BigQuery DataFrames 提供的与 Pandas 兼容的 API 转换 DataFrame。
或者,BigQuery DataFrames 提供了一个魔法命令,您可以使用该命令在 Jupyter 笔记本中使用 SQL 转换 DataFrame。如需使用 SQL 转换数据,请完成以下步骤:
创建并运行一个单元格以激活 Jupyter 魔法。
%load_ext bigframes使用
%%bqsql魔法创建 SQL 单元格。
保存结果
使用 DataFrame 类型提供的众多输出方法之一,将转换后的数据保存到 BigQuery 或 Cloud Storage。对于 BigQuery DataFrames,输出方法包括以下内容:
对于少量数据,您可以导出到 Arrow 或 Pandas 以便在本地进行进一步操作和可视化。
清理
为避免系统向您的 Google Cloud 账号收取费用,请删除您创建但不再需要的任何 资源。