BigQuery BI Engine pricing
When you use BigQuery BI Engine, your charges are based on the BI Engine capacity you purchased for your project. There are two ways to purchase BI Engine capacity:
- Purchasing capacity on-demand
- Bundling BI Engine capacity when you enroll in BigQuery flat-rate pricing
BI Engine stores BigQuery metadata and table data in memory. The amount of data stored is constrained by the amount of capacity you purchase. When you run a query that retrieves results from data that is stored in BI Engine, you are not charged for reading the data.
If you run a query that produces query results larger than the size of your BI Engine capacity, the BI Engine self-tuning feature uses BigQuery slots to run the query. When BigQuery slots are used to run a query, you are charged based on BigQuery on-demand query pricing for the query job. When slots are used to run a query, all BigQuery quotas and limits on query jobs apply.
BI Engine offers up to 1 GB of free capacity to Google Data Studio users. This free tier is available to all Data Studio users, without needing a reservation. This free capacity is intended for testing purposes only and should not be used to run production workloads. There are no SLO guarantees around this free tier. For production workloads, purchase BI Engine capacity as described in the next section.
On-demand capacity pricing
BI Engine on-demand capacity pricing is as follows:
Flat-rate capacity pricing
BigQuery offers flat-rate pricing for high-volume or enterprise customers who prefer a stable monthly cost for queries rather than paying the on-demand price per GB of data processed.
|Number of slots purchased, with annual commitment||No-cost, additional BI Engine capacity (GB)|
The maximum additional no-cost BI Engine capacity that you can receive is 100 GB with the purchase of 2,000 BigQuery slots. If you have additional BigQuery slots and need more than 100 GB in BI Engine capacity, then you can purchase more capacity at the on-demand rate.
If your projects use separate billing accounts, then each account is billed an amount proportional to how much capacity its projects use.
Example of purchasing slots
In the following example, a company has purchased 2,000 BigQuery flat-rate slots, earning them 100 GB of additional BI Engine capacity. However, all their projects combined require 120 GB of capacity. Therefore, the remaining 20 GB must be purchased at the on-demand rate. Each account is billed for a fraction of the additional 20 GB, based on the proportion of the total it needs.
In this example, the Sales account is billed for 5 GB of on-demand capacity. We find this figure by dividing the additional capacity (20 GB) by the total amount (120 GB), then multiplying by the total capacity needed by the project (30 GB).
|Cloud project||Billing account||Capacity needed||Additional billing|
|Project A||Sales||30 GB||5 GB|
|Project B||Finance||40 GB||6.67 GB|
|Project C||HR||20 GB||3.33 GB|
|Project D||HR||30 GB||5 GB|
|Total: 120 GB||Total: 20 GB|
For more information about BigQuery flat-rate pricing, see the BigQuery Pricing page.
Accelerated vs non-accelerated subqueries
BigQuery BI Engine-accelerated subqueries (stages) do not count towards your slot reservations. Only slotMs for stages that are not accelerated by BI Engine count towards a slot reservation.
Example of slotM metrics
For instance, the slotMs reported as part of per stage metrics for a BI Engine accelerated leaf subquery stage may be non-zero; but is not counted towards your slot reservations.
The totalSlotMs metric as part of JobStatistics is cumulative, and includes both accelerated and non-accelerated stages. The non-accelerated subquery stages will count towards your slot reservations, but the accelerated subquery stages will not.