Understanding Billing for Database Replication¶
Charges based on database replication are divided into two categories: data transfer and compute resources. Both categories are billed on the target account (i.e. the account that stores the secondary database that is refreshed).
- Data transfer
The initial database replication and subsequent synchronization operations transfer data between regions. Cloud providers charge for data transferred from one region to another within their own network.
The data transfer rate is determined by the location of the source account (i.e. the account that stores the primary database). For data transfer pricing, see the pricing page (on the Snowflake website).
For more information about data transfer billing, see Understanding Snowflake Data Transfer Billing.
- Compute resources
Replication operations use Snowflake-provided compute resources to copy data between accounts across regions.
Note
The target account also incurs standard storage costs for the data in each secondary database in the account.
If the initial database replication or a subsequent refresh operation fails, the next attempt (if performed within 14 days) can reuse the data that was already copied; that is, the data is not copied again during the next attempt. For this reason, database replication charges are applied even if the initial database replication or a subsequent refresh operation fails.
In this Topic:
Estimating and Controlling Costs¶
In general, monthly billing for database replication is proportional to:
Amount of table data in the primary database that changes as a result of data loading or DML operations.
Frequency of secondary database refreshes from primary databases.
You can control the cost of replication by carefully choosing which primary databases to replicate and their refresh frequency. You can stop incurring replication costs by ceasing database refresh operations.
Viewing Actual Costs¶
Users with the ACCOUNTADMIN role can use the Snowflake web interface or SQL to view the amount of replication data transferred (in bytes) for your Snowflake account within a specified date range.
To view the data transfer amounts for your account:
- Web Interface
Click on Account
» Billing & Usage. Replication utilization is shown as a special Snowflake-provided warehouse named
REPLICATION. Click the Data Transfer button to view the data transfer costs. Note that the web interface does not break down data transfer costs for replication.
- SQL
Query either of the following:
REPLICATION_USAGE_HISTORY table function (in the Information Schema). This function returns replication usage activity within the last 14 days.
REPLICATION_USAGE_HISTORY View view (in Account Usage). This view returns replication usage activity within the last 365 days (1 year).