googleapis / googleapis/google-cloud-python

support the Arrow PyCapsule Interface without a pyarrow dependency

Abierto
#15,699 3 comentarios 3 reacciones 1 asignado Reclamado por @tswast Ver en GitHub
api: bigquery
Lenguaje dominante
Python
Estrellas
5.4k
Forks
1.8k
Merge medio
3 d 4 h
PR fusionados (30 d)
122

Descripción

**Is your feature request related to a problem? Please describe.**

The polars community uses the arrow in-memory format without a need for a dependency on the heavy weight pyarrow package, but the easiest way to get arrow out of and into BigQuery with this client requires the use of the pyarrow dependency.

**Describe the solution you'd like**

Expose the Arrow PyCapsule Interface on RowIterator (returned by QueryJob.result(), Client.query_and_wait(), Client.list_rows()). This functionality should not require pyarrow. See: https://gist.github.com/tswast/99b017b20386e324f5c7d2bd49f21b5f for a related example of how this could be done.

**Describe alternatives you've considered**

* Separate package exposing the Arrow PyCapsule Interface
* Always require pyarrow
* Directly integrate into polars (in-progress)

**Additional context**

* [[Python] Promote usage of the Arrow PyCapsule Protocol (for the C Data Inteface) #39195](https://github.com/apache/arrow/issues/39195)
* [support adbc APIs in DB-API package](https://github.com/googleapis/python-bigquery/issues/2015#top)
* [Support inserting data into BigQuery directly from a Polars DataFrame](https://github.com/googleapis/google-cloud-python/issues/15710#top)

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.