apache / apache/beam

Replace bigquery_v2_client with Google Cloud BigQuery client (and associated libraries)

Open
#25,678 0 comments 0 reactions 0 assignees View on GitHub
io new feature P2 python
Dominant language
Java
Stars
8.7k
Forks
4.7k
Avg merge
1d 20h
Merged PRs (30d)
196

Description

Replace references to the apitools-generated BigQuery client (sdks/python/apache_beam/io/gcp/internal/clients/bigquery) with analogous calls to the [Google Cloud BigQuery](https://github.com/googleapis/python-bigquery) client, supplementing with other [Google Cloud Python](https://github.com/googleapis/google-cloud-python) clients (especially supporting BigQuery client libraries) if necessary.

Please ensure that all client references are being thoroughly tested before swapping the GCP client in for the old client. The job is done when the old client can be safely deleted from Beam without impacting functionality.

Background:

apitools is deprecated and continued reliance on it is complicating Beam's dependency management. In order to remove it we need to replace the clients that it currently generates with [Google Cloud Python](https://github.com/googleapis/google-cloud-python) clients, which are being actively maintained (and should be reasonably up-to-date in google3, though please confirm for any particular libraries you end up using.)

Tracking issue: #19073

### Issue Priority

Priority: 2 (default / most feature requests should be filed as P2)

### Issue Components

- [X] Component: Python SDK
- [ ] Component: Java SDK
- [ ] Component: Go SDK
- [ ] Component: Typescript SDK
- [ ] Component: IO connector
- [ ] Component: Beam examples
- [ ] Component: Beam playground
- [ ] Component: Beam katas
- [ ] Component: Website
- [ ] Component: Spark Runner
- [ ] Component: Flink Runner
- [ ] Component: Samza Runner
- [ ] Component: Twister2 Runner
- [ ] Component: Hazelcast Jet Runner
- [ ] Component: Google Cloud Dataflow Runner

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.