Skip to main content

Google BigQuery API client library

Project description

GA pypi versions

Querying massive datasets can be time consuming and expensive without the right hardware and infrastructure. Google BigQuery solves this problem by enabling super-fast, SQL queries against append-mostly tables, using the processing power of Google’s infrastructure.

Quick Start

In order to use this library, you first need to go through the following steps:

  1. Select or create a Cloud Platform project.

  2. Enable billing for your project.

  3. Enable the Google Cloud BigQuery API.

  4. Setup Authentication.

Installation

Install this library in a virtualenv using pip. virtualenv is a tool to create isolated Python environments. The basic problem it addresses is one of dependencies and versions, and indirectly permissions.

With virtualenv, it’s possible to install this library without needing system install permissions, and without clashing with the installed system dependencies.

Supported Python Versions

Python >= 3.5

Deprecated Python Versions

Python == 2.7. Python 2.7 support will be removed on January 1, 2020.

Mac/Linux

pip install virtualenv
virtualenv <your-env>
source <your-env>/bin/activate
<your-env>/bin/pip install google-cloud-bigquery

Windows

pip install virtualenv
virtualenv <your-env>
<your-env>\Scripts\activate
<your-env>\Scripts\pip.exe install google-cloud-bigquery

Example Usage

Perform a query

from google.cloud import bigquery

client = 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 request
rows = query_job.result()  # Waits for query to finish

for row in rows:
    print(row.name)

Instrumenting With OpenTelemetry

This application uses OpenTelemetry to output tracing data from API calls to BigQuery. To enable OpenTelemetry tracing in the BigQuery client the following PyPI packages need to be installed:

pip install google-cloud-bigquery[opentelemetry] opentelemetry-exporter-google-cloud

After installation, OpenTelemetry can be used in the BigQuery client and in BigQuery jobs. First, however, an exporter must be specified for where the trace data will be outputted to. An example of this can be found here:

from opentelemetry import trace
from opentelemetry.sdk.trace import TracerProvider
from opentelemetry.sdk.trace.export import BatchExportSpanProcessor
from opentelemetry.exporter.cloud_trace import CloudTraceSpanExporter
trace.set_tracer_provider(TracerProvider())
trace.get_tracer_provider().add_span_processor(
    BatchExportSpanProcessor(CloudTraceSpanExporter())
)

In this example all tracing data will be published to the Google Cloud Trace console. For more information on OpenTelemetry, please consult the OpenTelemetry documentation.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

google-cloud-bigquery-1.28.1.tar.gz (310.3 kB view details)

Uploaded Source

Built Distribution

google_cloud_bigquery-1.28.1-py2.py3-none-any.whl (187.3 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file google-cloud-bigquery-1.28.1.tar.gz.

File metadata

File hashes

Hashes for google-cloud-bigquery-1.28.1.tar.gz
Algorithm Hash digest
SHA256 096583235e7655bc5c05c7f2981420213aef7d71d8f7c8d3c159c0eb52898dc6
MD5 70ac8504f23b093b3c86f27e9d386b5f
BLAKE2b-256 bf54eb7a3ade923ca4477366de3046a7c87bfe7cc2f1bbd58e7dfb9b364ea56d

See more details on using hashes here.

Provenance

File details

Details for the file google_cloud_bigquery-1.28.1-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for google_cloud_bigquery-1.28.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 5d79a8f03b882e4449d2746580e66955b07a2c74b4ec32846061d80147990631
MD5 fd916eb00f2d8291ba5605bfe43621d2
BLAKE2b-256 66a4abcdbe74cfb99e510fbd242ebafd2b1b369dd9263c6965aa2859431cebcb

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page