This page answers the frequently asked questions about CockroachDB Serverless (beta) and CockroachDB Dedicated.
What is CockroachDB Serverless (beta)?
CockroachDB Serverless (beta) delivers free and pay-as-you-go CockroachDB clusters for you and your Organization. It is a managed instance of CockroachDB that lets you start using your database immediately and auto-scales based on your application traffic.
For a deeper dive into serverless database concepts and how to get started with CockroachDB Serverless, take the free Introduction to Serverless Databases and CockroachDB Serverless course on Cockroach University.
How do I start using CockroachDB Serverless (beta)?
To get started with CockroachDB Serverless (beta), sign up for a CockroachDB Cloud account, click Create Cluster, then click Create your free cluster. Your cluster will be ready in 20-30 seconds. For more information, see Quickstart.
What are the usage limits of CockroachDB Serverless (beta)?
Clusters start with 10M RUs of free burst capacity each month and earn 100 RUs per second up to a maximum of 250M free RUs per month. Earned RUs can be used immediately or accumulated. If you use all of your burst capacity and earned RUs, your cluster will revert to baseline performance.
If you set a spend limit, your cluster will not be throttled to baseline performance once you use all of your free earned RUs. Instead, it will continue to use burst performance as needed until you reach your spend limit. If you reach your spend limit, your cluster will revert to the baseline performance of 100 RUs per second.
You can create a maximum of five Serverless clusters per organization.
What is a Request Unit?
All resource usage in CockroachDB Serverless (beta) is measured in Request Units, or RUs. RUs represent the compute and I/O resources used by a query. All database operations cost a certain amount of RUs depending on the resources used. For example, a "small read" might cost 2 RUs, and a "large read" such as a full table scan with indexes might cost 100 RUs.
Do I have to pay for CockroachDB Serverless (beta)?
No, you can create a Serverless cluster that is free forever. If you choose to set a spend limit for your cluster, you will only be charged for the resources you use up to your spend limit.
How can I estimate how many RUs my workload will consume?
The best way to estimate your resource usage is to enter a spend limit you're comfortable with and run your workload. You can see the RUs and storage your cluster has used in the Usage this month section of the Cluster Overview page. Once enough usage data is available, you can also see a graph of your monthly resource usage and recommended spend limit on the Edit cluster page.
What can I use CockroachDB Serverless (beta) for?
Free CockroachDB Serverless (beta) clusters can be used for proofs-of-concept, toy programs, or to use while completing Cockroach University.
For examples of applications that use free clusters, check out the following Hack the North projects:
Paid Serverless clusters include additional resources to maintain higher performance. They are ideal for applications with varying workloads and spikes in traffic. We do not recommend using CockroachDB Serverless for production applications that need an SLA while it is still in beta.
How do I connect to my cluster?
To connect to a cluster, download the CA certificate, and then generate a connection string or parameters. You can use this information to connect to your cluster through the CockroachDB SQL client or a Postgres-compatible driver or ORM. For more details, see Connect to Your CockroachDB Serverless (beta) Cluster.
I created a CockroachCloud Free (beta) cluster before CockroachDB Serverless (beta) was available. Can I still use my cluster?
Yes, your free cluster has been automatically migrated to CockroachDB Serverless (beta). Your ability to use your cluster should not be affected, and you will now have the option to add a spend limit for your cluster with no downtime.
My cluster doesn't have any current connections, but I'm seeing my RU usage go up while observing the cluster. Why is the cluster using RUs when there are no connections?
Some pages on the Console runs background queries against your cluster, which means they consume a small number of RUs, up to 8 RUs per second. The baseline performance of 100 RUs per second includes the RUs used while observing an idle cluster.
Why does my RU usage briefly spike when I'm running a steady workload?
CockroachDB automatically collects statistics in a background process when certain conditions are met (for example, when more than 20% of rows in a table are modified). The statistics are used by the cost-based optimizer to tune statements for higher performance.
When automatic statistics collection starts your cluster may consume RUs above the 100 RUs per second baseline when your workload is otherwise consuming RUs below the baseline. You can turn off automatic statistics collection to avoid these RU bursts, but the cost-based optimizer may choose inefficient statement plans as it doesn't have access to the latest statistics.
What is the cold start latency of a Serverless cluster?
When a Serverless cluster is idle, it will scale down to zero and consume no RUs. When the cluster becomes active again it will begin serving requests within a fraction of a second, typically around 600 milliseconds.
What does it mean for CockroachDB Serverless to be in beta?
CockroachDB Serverless (beta) is in beta while we continue to add new features and improve our own testing for existing features. We don’t provide a Support Policy or Service Level Agreement (SLA) for beta products.
Where can I submit feedback or bugs on the beta?
You can submit feedback or log any bugs you find through this survey.
Is my cluster secure?
Yes, we use separate certificate authorities for each cluster, and all connections to the cluster over the internet use TLS 1.3.
Is encryption-at-rest enabled on CockroachDB Serverless (beta)?
Yes. All data on CockroachDB Cloud is encrypted-at-rest using the tools provided by the cloud provider that your cluster is running in.
- Data stored in clusters running in GCP are encrypted-at-rest using persistent disk encryption.
- Data stored in clusters running in AWS are encrypted-at-rest using EBS encryption-at-rest.
Because we are relying on the cloud provider's encryption implementation (as noted above), we do not enable CockroachDB's internal implementation of encryption-at-rest. This means that encryption will appear to be disabled in the DB Console, since it is unaware of cloud provider encryption.
Is my cluster isolated? Does it share resources with any other clusters?
CockroachDB Serverless (beta) is a multi-tenant offering and resources are shared between clusters. For more information, see CockroachDB Serverless Architecture.
Can I upgrade my free CockroachDB Serverless (beta) cluster's performance?
Can I upgrade the version of CockroachDB my CockroachDB Serverless (beta) cluster is running on?
No, CockroachDB Serverless (beta) clusters are upgraded automatically for you. You can see what version of CockroachDB your cluster is running in the CockroachDB Cloud Console or in the latest release notes.
Do you have a UI? How can I see details?
Can I run bulk operations such as
EXPORT from my cluster?
Yes, you can run bulk operations on Serverless clusters. If you add billing information to your organization, even if you don't set a spend limit, you can run bulk operations using cloud storage providers. If you don't have billing set up for your organization, you can set up a
userfile location for bulk operations.
We don't recommend
EXPORT operations. You can either add billing information to your organization to enable access to cloud storage, or export data to a local CSV file.
Is change data capture available to me?
Yes, CockroachDB Serverless clusters have access to Core Changefeeds.
Can I backup my CockroachDB Serverless (beta) cluster? Does Cockroach Labs take backups of my cluster?
CockroachDB Cloud does not take incremental backups of Serverless clusters, and you cannot restore backups from the Console. However, you can backup and restore your CockroachDB Serverless (beta) cluster manually. If you don't have billing information on file for your organization, you can take backups locally to
userfile. Once you enter billing information, even if you don't set a spend limit, you can also backup to cloud storage.
Running a bulk operation to cloud storage from a CockroachDB Serverless (beta) cluster without first entering billing information will cause the following error:
external network access is disabled.