Google has partnered with Simba Technologies Inc, a Magnitude Software Company to provide ODBC and JDBC drivers that leverage the power of BigQuery's Standard SQL.
The intent of these drivers is to help users connect the power of Google BigQuery with existing tooling and infrastructure that does not have native integration. If you are building new integrations with BigQuery, we recommend you consider the native API. The functionality exposed by an ODBC/JDBC connection is necessarily a subset of the full capabilities of BigQuery.
Current ODBC Driver Releases (220.127.116.110)
- Windows 32-bit (msi)
- Windows 64-bit (msi)
- Linux 32-bit (tar.gz)
- Linux 64-bit (tar.gz)
- Mac OS X (dmg)
Previous Version (18.104.22.1681)
Current JDBC Driver Releases (22.214.171.1240)
Previous Version (126.96.36.1998)
Known Issues and FAQ
Can I use these drivers to ingest or export data between Google BigQuery and my existing environment?
These drivers leverage the query interface for BigQuery, and don't provide functionality to leverage BigQuery's large scale ingestion mechanisms or export functionality.
While you can use DML to issue small volumes of INSERT requests, it is subject to the limits on DML.
How do the drivers deal with BigQuery's nested and repeated data schemas?
Nested and repeated data (also known as STRUCTS and ARRAYS in standard SQL) is represented as the JSON output from the BigQuery API for these types because the ODBC data model does not have an appropriate way to represent the data. While you might execute queries that manipulate these types, if the output schema from a query has complex types the drivers will present these encoded in JSON format.
Do the drivers support parameterized queries?
Yes, the drivers support positional parameterization. Note that preparing a query prior to execution provides validation information, but does not affect performance of the executed query.
Do the drivers provide the ability to manage tables (e.g. CREATE TABLE)?
No. BigQuery itself does not support a data definition language (DDL), and the drivers make no attempt to emulate one.
Do the drivers require a license?
Previous versions of the documentation accompanying the drivers made reference to licensing files. These provided drivers do not require a license file, and the documentation has been updated to make this clearer.
Do the drivers support the SQL query prefix?
While BigQuery supports using query prefixes to switch between the legacy SQL and standard SQL dialects, the drivers do not. The drivers maintain specific state related to the SQL mode used and set the option explicitly when creating the connection. Because the SQL mode is fixed when the connection is created, the drivers do not support switching SQL dialects using query prefixes.
How do I get support for these drivers?
Please consult our support page for support options. The BigQuery team does not provide direct engineering support for the drivers, but instead coordinates with the Simba team as necessary to address reported issues.