google-bigquery

Difference between BigQuery API and BigQuery Storage API?


What is the difference between the BigQuery API Client Libraries and BigQuery Storage API Client Libraries?

In the Overview section of BigQuery Storage Read API, it says

The BigQuery Storage Read API provides fast access to BigQuery-managed storage by using an rpc-based protocol.

Is BigQuery Storage API just faster because it uses rpc?


Solution

  • Yes you are correct it is fast since it uses rpc, and also as stated in this documentation,

    The Storage Read API does not provide functionality related to managing BigQuery resources such as datasets, jobs, or tables.

    Basically, you would want to use BigQuery Storage API on top of BigQuery API when your operation requires the need to scan large volumes of managed data as it exposes high throughput data reading for consumers. Otherwise, use of BigQuery API is enough for interactions with core resources such as datasets, tables, jobs, and routines.

    For further reading, see this documentations on some of the key features of Storage Write API and Storage Read API.