Google announced that they will be updating Google BigQuery pricing on July 5th. This will impact both on-demand and reserved models for analysis.
BigQuery offers a free tier usage that includes 1TB of data analysis and 10GB of storage each month.
After the initial free tier, the data cost for processing when using on-demand pricing will increase by 25% from $5 to $6.25 per TB of data scanned. When using the on-demand pricing model, your queries are assigned up to 2,000 slots from a pool of available slots. You can use Cloud Monitoring to figure out your usual slot usage by observing the Slot Utilization metric.
Instead of using on-demand pricing for your queries, it may have been more efficient to reserve processing slots. With the flat-rate model, you were able to reserve slots in batches of 100 via short-term (minute to days), monthly or annual commitments. These commitments guaranteed the price for your analysis and slot availability. The cost ranged from ~$0.024 (annual commitment) per slot per hour (flex-slot) to $0.04 (flex-slots).
On July 5th, this will change not only in terms of pricing but in terms of service. The flat-rate model is being replaced by BigQuery Editions.
The BigQuery Editions come with a similar concept to flat-rate pricing but introduce three different levels of slots (editions), autoscaling, compressed storage and a few other innovations. Standard is only available in no commitment (flexible format) at $0.04 per slot hour, while Enterprise and Enterprise Plus both come with three options resembling the historical flat-rate commitments (pay as you go, 1-year and 3-year commitment).
Edition\Commitment Model | Pay as you go | 1 year | 3 years |
Standard Edition | $0.04 | / | / |
Enterprise Edition | $0.06 | $0.048 | $0.036 |
Enterprise Plus Edition |
$0.1 | $0.08 | $0.06 |
* All cost is per slot hour |
As you can notice, the prices between the editions are quite significant. The reason for it is that each edition offers different features.
Features\Editions | Standard Edition | Enterprise Edition | Enterprise Plus Edition |
Committed Use Discount | None | 1-year, 3-year | 1-year, 3-year |
BQML | No | Yes | Yes |
BQ Omni Support | No | Yes | No |
BI Engine acceleration | No | Yes | Yes |
Encryption | Google-managed | Google-managed | Google and customer-managed keys |
Compliance Controls | No | No | Yes |
VPC Service Controls | No | Yes | Yes |
Reservation Cap | 1600 slots | / | / |
Autoscaling | Yes | Yes + Baseline | Yes + Baseline |
Visit documentation for an in-depth review of differences.
All three editions allow you to choose between a flat-rate or an autoscaling capacity model. With the autoscaling model, you get to pick a baseline (minimum number of slots active in the reservation) and the maximum size of the reservation. With a flat-rate you reserve a specific number of slots.
Just as with historical flat-rate pricing, slots can be reserved in different Google Cloud locations as well as in Azure and AWS.
Check out the official documentation BigQuery Editions intro, for additional comparison info.
As always, BigQuery storage and processing are completely separate and treated differently. Changes in processing do not impact how storage cost is calculated.
However, unlike with flat-rate pricing, editions will allow you to use the physical storage option.
The default storage cost includes paying for the logical bytes (uncompressed data). The cost is $0.02 per GB per Month, which drops to $0.01 for tables older than 90 days (active vs long-term storage).
You can, however, select to be charged for physical bytes (compressed storage and "time-travel"* storage), which in many cases may be several times smaller (9x compression in the example below). Physical storage cost is double the logical storage ($0.04 and $0.02 per GB per month).
*time travel in BQ allows you to access a historical snapshot of a table in a window set (configurable) that can include between two and seven days of historical data.
Your queries after the free tier will become 25% more expensive.
You can start using editions immediately by navigating to "Capacity Management" in your BigQuery.
If you are already using flat-rate pricing, you can begin migrating to the right edition based on your needs. Price per slot will increase, yet it is quite possible that autoscaling and the ability to use physical storage billing option will save you some money.
It won't.