- 3.39.0 (latest)
- 3.38.0
- 3.37.0
- 3.36.0
- 3.35.1
- 3.34.0
- 3.33.0
- 3.31.0
- 3.30.0
- 3.29.0
- 3.27.0
- 3.26.0
- 3.25.0
- 3.24.0
- 3.23.1
- 3.22.0
- 3.21.0
- 3.20.1
- 3.19.0
- 3.18.0
- 3.17.2
- 3.16.0
- 3.15.0
- 3.14.1
- 3.13.0
- 3.12.0
- 3.11.4
- 3.4.0
- 3.3.6
- 3.2.0
- 3.1.0
- 3.0.1
- 2.34.4
- 2.33.0
- 2.32.0
- 2.31.0
- 2.30.1
- 2.29.0
- 2.28.1
- 2.27.1
- 2.26.0
- 2.25.2
- 2.24.1
- 2.23.3
- 2.22.1
- 2.21.0
- 2.20.0
- 2.19.0
- 2.18.0
- 2.17.0
- 2.16.1
- 2.15.0
- 2.14.0
- 2.13.1
- 2.12.0
- 2.11.0
- 2.10.0
- 2.9.0
- 2.8.0
- 2.7.0
- 2.6.2
- 2.5.0
- 2.4.0
- 2.3.1
- 2.2.0
- 2.1.0
- 2.0.0
- 1.28.2
- 1.27.2
- 1.26.1
- 1.25.0
- 1.24.0
- 1.23.1
- 1.22.0
- 1.21.0
- 1.20.0
- 1.19.0
- 1.18.0
- 1.17.0
- 1.16.0
Python Client for Google BigQuery
Querying massive datasets can be time consuming and expensive without theright hardware and infrastructure. GoogleBigQuery solves this problem byenabling super-fast, SQL queries against append-mostly tables, using theprocessing power of Google’s infrastructure.
Quick Start
In order to use this library, you first need to go through the following steps:
Installation
Install this library in avirtualenv using pip.virtualenv is a tool tocreate isolated Python environments. The basic problem it addresses is one ofdependencies and versions, and indirectly permissions.
Withvirtualenv, it’s possible to install this library without needing systeminstall permissions, and without clashing with the installed systemdependencies.
Supported Python Versions
Python >= 3.7
Unsupported Python Versions
Python == 2.7, Python == 3.5, Python == 3.6.
The last version of this library compatible with Python 2.7 and 3.5 isgoogle-cloud-bigquery==1.28.0.
Mac/Linux
pip install virtualenvvirtualenv <your-env>source <your-env>/bin/activate<your-env>/bin/pip install google-cloud-bigqueryWindows
pip install virtualenvvirtualenv <your-env><your-env>\Scripts\activate<your-env>\Scripts\pip.exe install google-cloud-bigqueryExample Usage
Perform a query
from google.cloud importbigqueryclient =bigquery.Client()# Perform a query.QUERY = ( 'SELECT name FROM `bigquery-public-data.usa_names.usa_1910_2013` ' 'WHERE state = "TX" ' 'LIMIT 100')query_job = client.query(QUERY) # API requestrows =query_job.result() # Waits for query to finishfor row in rows: print(row.name)Instrumenting With OpenTelemetry
This application usesOpenTelemetry to output tracing data fromAPI calls to BigQuery. To enable OpenTelemetry tracing inthe BigQuery client the following PyPI packages need to be installed:
pip install google-cloud-bigquery[opentelemetry] opentelemetry-exporter-gcp-traceAfter installation, OpenTelemetry can be used in the BigQueryclient and in BigQuery jobs. First, however, an exporter must bespecified for where the trace data will be outputted to. Anexample of this can be found here:
from opentelemetry import tracefrom opentelemetry.sdk.trace import TracerProviderfrom opentelemetry.sdk.trace.export import BatchSpanProcessorfrom opentelemetry.exporter.cloud_trace import CloudTraceSpanExportertracer_provider = TracerProvider()tracer_provider = BatchSpanProcessor(CloudTraceSpanExporter())trace.set_tracer_provider(TracerProvider())In this example all tracing data will be published to the GoogleCloud Trace console. For more information on OpenTelemetry, please consult theOpenTelemetry documentation.
Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-12-16 UTC.