CockroachDB is a cloud-native SQL database for building global, scalable cloud services that survive disasters.
- What is CockroachDB?
- Docs
- Training
- Quickstart
- Client Drivers
- Deployment
- Need Help?
- Contributing
- Design
- Comparison with Other Databases
- See Also
What is CockroachDB?
CockroachDB is a distributed SQL database built on a transactional and strongly-consistent key-value store. It scales horizontally; survives disk, machine, rack, and even datacenter failures with minimal latency disruption and no manual intervention; supports strongly-consistent ACID transactions; and provides a familiar SQL API for structuring, manipulating, and querying data.
For more details, see our FAQ or architecture document.
Here’s a quick explainer video:
Status
CockroachDB is production-ready. See our Roadmap for a list of features planned or in development.
Docs
For guidance on installation, development, deployment, and administration, see our User Documentation.
Training
Our self-guided training will show you how to install CRDB, import data, administrate a cluster, troubleshoot common issues, and complete necessary maintenance tasks.
Quickstart
-
Start a local cluster and talk to it via the built-in SQL client.
-
Use a PostgreSQL-compatible driver or ORM to build an app with CockroachDB.
-
Explore core features, such as data replication, automatic rebalancing, and fault tolerance and recovery.
Client Drivers
CockroachDB supports the PostgreSQL wire protocol, so you can use any available PostgreSQL client drivers to connect from various languages.
-
For recommended drivers that we've tested, see Install Client Drivers.
-
For tutorials using these drivers, as well as supported ORMs, see Build an App with CockroachDB.
Deployment
- Test Deployment - Easiest way to test an insecure, multi-node CockroachDB cluster.
- Production Deployments
- Manual - Steps to deploy a CockroachDB cluster manually on multiple machines.
- Cloud - Guides for deploying CockroachDB on various cloud platforms.
- Orchestration - Guides for running CockroachDB with popular open-source orchestration systems.
Need Help?
-
If this is your first time using CRDB, we suggest completing training before building your first cluster. It's the same training we use internally. It covers everything from installing and importing your data to troubleshooting and decommissioning nodes, as well as the most common issues that trip up first-time users.
-
Check out our troubleshooting documentation - Learn how to troubleshoot common errors, cluster and node setup, and SQL query behavior, and how to use debug and error logs.
-
If that doesn't help and you're stuck or have a question, [contact us on the CockroachDB Forum] (https://forum.cockroachlabs.com/) or Stack Overflow. Our support team monitors the forum first for new questions.
-
If you've found a bug, or want to request a new feature, help us out by opening a Github issue.
Contributing
We're an open source project and welcome contributions. See our Contributing Guide for more details.
Engineering discussion takes place on our public mailing list, cockroach-db@googlegroups.com.
Design
For an in-depth discussion of the CockroachDB architecture, see our Architecture Guide.
For the original design motivation, see our design doc.
Comparison with Other Databases
To see how key features of CockroachDB stack up against other databases, visit the CockroachDB in Comparison page on our website.
See Also
- Tech Talks by CockroachDB founders and engineers
- The CockroachDB User documentation
- The CockroachDB Blog
- Key Design documents:
