ENH: make use_bqstorage_api True by default
It’ll give people the best experience if the fast method is also the default method. Since this requires an additional API to be enabled, it’s technically a breaking change. Similar to how we handled the switch to standard SQL in googleapis/python-bigquery-pandas#195, I propose we complete this work in two phases:
- [ ] Add
use_bqstorage_apito the global context object with a value ofFalse. It is overridable by settingpandas_gbq.context.use_bqstorage_api = True. If the default value ofuse_bqstorage_api=Noneis passed intoread_gbq, it uses the default value from the global context. - [ ] Make a release with this new context value. (Make sure
pandas.read_gbqalso sends downNoneforuse_bqstorage_apiif not supplied.) - [ ] Update default value in the global context to
True. (Possibly after the BigQuery Storage API goes GA, though maybe sooner.)
Any news on when this will be implemented?
Nothing blocking it, now that the API is GA. We probably want to use the create_bqstorage_client parameter in the to_dataframe method for future compatibility.
This is long overdue. Bumping the priority on this.
Doesn't use_bqstorage_api=True incur more cost? Or is kind of neglible when you're talking roughly 1-10GBs of data?
It's free to read from anonymous tables created by a query.