Google 表格
设置
要向 Redash 添加 Google 表格数据源,您首先需要在 Google 中创建一个服务帐户。服务帐户允许 Redash 等第三方应用程序从您的 Google 应用读取数据,而无需每次都登录。在服务帐户设置期间,您将获得一个 JSON 密钥文件。设置数据源时,您需要将此文件上传到 Redash。
如何创建 Google 服务帐户?
- 打开API 凭据页面。如果出现提示,请选择或创建一个项目。
- 单击“创建凭据”按钮。在出现的下拉列表中,选择“服务帐户密钥”。
- 在以下页面上,使用下拉列表选择您在步骤 1 中选择的项目。对于角色,从树形菜单中选择
项目 > 查看者
。 - 在密钥类型下,选择 JSON 并点击“创建”。
然后,一个 .json
文件将下载到您的计算机。在 Redash 的“设置”下,为 GoogleSpreadsheet
添加一个新的数据源。在出现的模态框中,为此连接命名,并上传您从 Google 凭据控制台下载的 .json
文件。
查询
设置数据源后,您可以将电子表格加载到 Redash 中。为此,您需要将电子表格与服务帐户的电子邮件地址共享。这可以在Google 表格 API 凭据页面或 JSON 文件中的 "client_email"
键下找到。共享方式与您与任何普通用户共享的方式相同。
在与您的服务帐户电子邮件地址共享电子表格后,在 Redash 中创建一个新查询并选择您的 Google 表格数据源。在查询编辑器文本框中,键入您所需的电子表格 ID。您可以选择通过添加其选项卡位置作为以零索引的数字,并用竖线或管道符号分隔来选择电子表格的特定选项卡。
例如
1DFuuOMFzNoFQ5EJ2JE2zB79-0uR5zVKvc0EikmvnDgk|0
加载第一个工作表,或者
1DFuuOMFzNoFQ5EJ2JE2zB79-0uR5zVKvc0EikmvnDgk|1
加载第二个工作表。这就是整个查询。此时请省略任何 SQL。
您可以在其 URL 中找到您的电子表格 ID。因此,如果电子表格 URL 为
https://docs.google.com/spreadsheets/d/
b94d27b9934d3e08a52e52d7da7dabfac484efe37
则 ID 将为
b94d27b9934d3e08a52e52d7da7dabfac484efe37
如果您的组织对与外部帐户共享电子表格有限制,则此过程可能会失败。为了改善结果,请确保使用同一组织中的 Google 帐户创建服务帐户。
筛选数据
当您将 Google 表格与 Redash 连接时,我们将完整加载它。您可以从数据生成可视化效果并将其添加到您的仪表板。如果您想筛选某些数据或聚合数据,使其超出数据透视表所能完成的范围,则可以使用以下方法之一
- 使用查询结果数据源,它允许您查询其他查询的结果。
- 使用Google BigQuery 与 Google 云端硬盘的集成基于 Google 电子表格创建 Google BigQuery 外部表。
关于日期的注意事项
Redash 使用Python-dateutil 从 Google 表格解析日期。如果您遇到 Redash 错误解析日期的问题,请尝试将表格中的日期格式调整为 ISO8601 或此处显示的格式之一。