查询 Google BigQuery
使用 Flux 查询 Google BigQuery:
导入
sql包。使用
sql.from()并提供以下参数:- driverName: bigquery
- dataSourceName: 查看数据源名称
- query: 要执行的SQL查询
import "sql"
sql.from(
driverName: "bigquery",
dataSourceName: "bigquery://projectid/?apiKey=mySuP3r5ecR3tAP1K3y",
query: "SELECT * FROM exampleTable",
)
BigQuery 数据源名称
bigquery 驱动程序使用以下 DSN 语法(也称为 连接字符串):
bigquery://projectid/?param1=value¶m2=value
bigquery://projectid/location?param1=value¶m2=value
常见的 BigQuery URL 参数
- dataset - BigQuery 数据集 ID。当设置时,您可以在查询中使用未限定的表名。
BigQuery 认证参数
Flux BigQuery 实现使用 Google Cloud Go SDK。
使用以下方法提供您的身份验证凭据:
设置
GOOGLE_APPLICATION_CREDENTIALS环境变量以识别您的凭证 JSON 文件的位置。提供您的 base-64 编码的服务账户、刷新令牌或 JSON 凭证,使用credentials URL 参数在您的 BigQuery 数据源名称中。
示例凭据URL参数
bigquery://projectid/?credentials=eyJ0eXBlIjoiYXV0...
数据类型转换
sql.from() 将 BigQuery 数据类型转换为 Flux 数据类型。
| BigQuery 数据类型 | Flux 数据类型 |
|---|---|
| 整数 | int |
| 浮点数, 数值 | float |
| 时间戳 | time |
| 布尔值 | bool |
所有其他 BigQuery 数据类型(包括 DATE、TIME 和 DATETIME)都转换为字符串。