在 BigQuery 和数据洞察中使用数据应用
借助 Colab 数据应用,您可以将 Colaboratory 笔记本中的数据分析转化为精美的互动式应用。现在,您无需分享代码或静态报告,而是可以构建包含交互式可视化、数据表和机器学习推理的可分享体验。
数据应用提供以下功能:
- 自助式数据分析。业务用户可以调整日期范围或过滤条件等参数,以查看所需数据,而无需修改代码。
- 无需为应用查看者进行设置。消费者使用网址访问您的应用。 他们无需浏览 Google Cloud 控制台或运行笔记本。
- 灵活性。集成任何 Python 可视化库或微件,轻松构建自定义的复杂数据应用。为节省时间,您可以使用集成代理为您生成代码。
- 托管式生命周期。管理员和作者可以控制共享、版本和资源使用情况。
准备工作
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
启用 BigQuery API 和 Dataform API(如果尚未启用)。
启用 API 所需的角色
如需启用 API,您需要拥有
serviceusage.services.enable权限。如果您创建了项目,则可能已经通过 Owner 角色 (roles/owner) 拥有此权限。否则,您可以通过 Service Usage Admin 角色 (roles/serviceusage.serviceUsageAdmin) 获得此权限。了解如何授予角色。对于新项目,BigQuery API 会自动启用。
所需的角色
如需获得创建数据应用所需的权限,请让管理员向您授予项目的以下 IAM 角色:
- BigQuery Read Session User (
roles/bigquery.readSessionUser) - BigQuery Studio User (
roles/bigquery.studioUser)
如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
如果您刚开始接触 BigQuery 中的 Colab Enterprise,请参阅创建笔记本页面上的所需权限。
限制
数据应用受限于以下限制:
首次打开应用时,可能需要 2 到 5 分钟才能加载完毕,具体取决于应用的复杂程度。
互动会话持续 30 分钟。30 分钟后,应用会失去与内核的连接并变为静态。如需启动新的 30 分钟会话,您可以重新加载页面或刷新数据。
无论应用中显示哪些单元,所有单元都会按从第一个到最后一个的顺序运行。如果不可见的单元正在运行并消耗内核资源,则应用可能会显示为无响应,直到内核资源释放为止。
您无法使用服务账号或最终用户凭据 (EUC) 访问数据或查看数据应用。
数据应用的组件
您可以添加到数据应用的组件派生自底层笔记本。如果您使用的是现有笔记本,则可以将其中的任何现有单元添加到数据应用中。
您可以向数据应用添加可在 Colab 笔记本中创建的任何受支持的单元类型,包括 SQL 单元、代码单元、文本单元和可视化单元。您可以手动创建单元格类型,也可以使用 Colab 数据科学智能体或 Gemini 为您生成单元格。
如需了解如何向笔记本添加不同的单元格类型,请参阅以下教程:
使用第三方库创建的控件
数据应用支持使用第三方 widget 库创建的控件。例如:
- 您可以使用
ipywidgets软件包或anywidget库向笔记本添加交互式控件。您可以使用 Colab 数据科学智能体生成这些 widget。 - 在笔记本级别,您可以将 widget 单元串联起来。您可以在笔记本开头定义一个 widget,其输出可供其他单元(例如可视化单元)使用。通过此设置,您可以为数据应用设置全局过滤条件。
创建和发布 Data 应用
您可以使用现有笔记本或创建新笔记本,来创建数据应用。在以下示例中,您将使用面向 Python 用户的笔记本使用入门模板生成笔记本,并从中创建数据应用。
创建数据应用后,您可以将其发布到数据洞察,将数据分析转化为可分享的互动体验。
发布数据应用时,您可以将其连接到现有 Colab 运行时,也可以使用模板创建新运行时。借助模板,您可以根据工作负载调整运行时的大小,还可以设置空闲关停时间,以平衡费用和应用启动时间。
如需创建和发布数据应用,请按以下步骤操作:
在 Google Cloud 控制台中,前往 BigQuery Studio 页面。
如需打开模板库,请执行以下任一操作:
在左侧窗格中,点击 探索器,展开您的项目,然后依次选择Notebook > 查看操作 > 创建笔记本 > 所有模板。

如果您没有看到左侧窗格,请点击 展开左侧窗格以打开该窗格。
在 Studio 页面上,点击查看笔记本库:
点击面向 Python 用户的笔记本使用入门卡片,或在库中搜索该卡片。
模板打开后,点击使用此模板,将模板转换为可运行的笔记本。
点击信息中心 Data app。
可选:在组件窗格中,使用复选框在应用中添加和移除单元:
如需创建新组件,请执行以下操作:
- 如需返回笔记本,请点击 arrow_back 笔记本。
- 如需添加新单元,请点击 代码或 文本旁边的下拉箭头。
- 点击保存。
- 如需返回应用,请点击信息中心 数据应用。
如果您对应用的布局感到满意,请点击发布。
在发布页面上,输入以下内容:
在名称字段中,输入应用的名称。应用名称不必与用于创建应用的笔记本名称相同。
在运行时部分中,选择连接到现有运行时,然后从运行时列表中选择运行时,或选择创建新的运行时,然后从运行时模板列表中选择适当的模板。
如果您选择连接到现有运行时,则必须先将笔记本连接到运行时,然后才能发布应用。
点击发布。
如果系统提示您向数据洞察授予对您 Google 账号的访问权限,请点击允许。
如果您对源笔记本和应用进行了更改,请点击发布更改以更新应用。
或者,您也可以在数据洞察中依次点击 more_vert 更多选项 > 修改,以修改应用。
源笔记本会在 BigQuery Studio 中打开。
查看和共享数据应用
您可以使用数据洞察查看 Colab 数据应用,并与他人共享您的应用。
查看应用时,可交互性取决于您添加的组件。例如,Matplotlib 图表是静态的,而使用 Colab 可视化单元或 Plotly 等库创建的图表是交互式的。
您可以与代码中定义的小部件进行交互,并将其用于过滤或更改输出等任务。这些互动因用户而异。
如需在数据洞察中查看和分享您的应用,请按以下步骤操作:
如需在数据洞察中查看您的应用,请点击查看数据应用。
如需共享您的应用,请在数据洞察中点击 person_add 共享。
在与用户和群组共享页面上,执行以下操作:
在添加用户和群组字段中,输入您要向其授予访问权限的群组和个人。
为您指定的的用户和群组选择访问权限:
- 编辑者:用户可以修改应用、创建和修改时间表和提醒,以及与他人共享应用。
- 查看者:用户可以查看应用,但无法修改应用或与他人共享应用。
点击发送。
如需邀请他人、获取报告链接、分享或下载应用,请点击分享选项旁边的 arrow_drop_down,然后选择以下选项之一:
- 邀请他人
- 获取报告链接
- Download report
如需详细了解如何在数据洞察中共享资源,请参阅邀请他人访问您的报告。
重新连接并刷新数据应用
互动会话持续 30 分钟。30 分钟后,应用会失去与内核的连接并变为静态。如需启动新的 30 分钟会话,您可以重新加载页面或刷新数据。
如需刷新数据洞察中的数据,请执行以下操作:
- 打开应用后,依次点击 more_vert 更多报告操作 > 刷新数据。
用于在数据应用中运行单元的凭证
默认情况下,数据应用会使用应用创建者的凭据来访问数据和呈现可视化图表。所有查看者都会根据作者的访问权限看到呈现的数据应用。在共享有权访问敏感数据的 Data App 之前,请考虑这一后果。
删除数据应用
您可以使用数据洞察删除数据应用。 删除用于创建应用的笔记本不会删除应用,也不会阻止应用运行。
如需在数据洞察中删除数据应用,请按以下步骤操作:
在最近页面上,找到您的应用。
在行末,依次点击 more_vert 更多选项 > 移除:
价格
您需要为在笔记本的运行时中运行代码付费,并为使用的任何 BigQuery 槽付费。如需了解详情,请参阅 Colab Enterprise 价格。