适用于 BigQuery 的 ODBC 和 JDBC 驱动程序
简介
为了让用户能够充分利用 BigQuery 和 GoogleSQL 的功能,Google 与 Simba 合作,提供专用的 Java Database Connectivity (JDBC) 和 Open Database Connectivity (ODBC) 驱动程序。
借助 JDBC 和 ODBC 驱动程序,您可以将 BigQuery 与首选工具和基础架构结合使用。借助这些驱动程序,您可以访问 BigQuery 功能,例如高性能存储集成和预留管理,否则只能通过 BigQuery API 访问这些功能。这些专用驱动程序专为 BigQuery 而设计,无法与其他产品或服务搭配使用。您无需任何其他许可即可使用这些驱动程序。
当前 ODBC 驱动程序
以下驱动程序是 ODBC 驱动程序的最新稳定版本。
ODBC 版本 3.0.7.1016
ODBC 版本 2.5.2.1004
我们建议您升级到 3.x 版本。2.5.x 版本支持 bug 修复和关键安全更新,但新的 BigQuery 功能仅添加到 3.x 版本中。
当前 JDBC 驱动程序
以下驱动程序是 JDBC 驱动程序的最新稳定版本。
JDBC 版本 1.6.1.1002
ODBC HTAPI 所需的权限
高吞吐量 API (HTAPI) 是 ODBC 的可选 API。如需详细了解 HTAPI,请参阅安装和配置指南。
如需获得使用 High-Throughput API 所需的权限,请让管理员在您的 BigQuery 项目上为您授予 BigQuery Read Session User (roles/bigquery.readSessionUser
) IAM 角色。如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
此预定义角色包含使用 High-Throughput API 所需的权限。如需查看所需的确切权限,请展开所需权限部分:
所需权限
如需使用 High-Throughput API,需要以下权限:
-
resourcemanager.projects.get
-
resourcemanager.projects.list
-
bigquery.readsessions.create
-
bigquery.readsessions.getData
-
bigquery.readsessions.update
限制
- JDBC 和 ODBC 驱动程序不支持 BigQuery 高性能加载或导出功能。您可以使用数据操纵语言 (DML) 语句执行数据插入,但这些语句会受到对 DML 语句的限制。
- JDBC 和 ODBC 驱动程序不支持 GoogleSQL
ARRAY
和STRUCT
数据类型。如果向驱动程序请求这些数据类型的输出,驱动程序会将这些数据类型呈现为JSON
格式。如需避免JSON
输出,请考虑展平重复的值或从记录中选择特定字段。 - JDBC 和 ODBC 驱动程序不支持查询前缀。
- JDBC 和 ODBC 驱动程序支持参数化查询,但使用参数准备查询仅提供查询验证。使用 JDBC 和 ODBC 驱动程序的参数化查询不会影响查询性能。
支持
Cloud Customer Care 可为 JDBC 和 ODBC 驱动程序提供支持。
价格
您可以免费下载驱动程序。不过,使用这些驱动程序运行查询的费用因配置而异:
- 默认情况下,系统会对所有通过这些驱动程序运行的查询应用查询价格。除非将驱动程序配置为支持大型结果集,否则这是唯一使用的定价模式。
- 当驱动程序配置为将大型结果集写入目标表时,除了查询价格之外,系统还会应用存储价格。此类数据会存储 24 小时,在此期间会产生存储费用。
- 只有在使用驱动程序调用 Storage API 时,才会应用 Storage API 价格。此定价模式涵盖直接从查询结果读取的数据,而不涵盖在查询执行期间扫描的数据。请务必注意,Storage API 价格仅适用于大型结果集。