Technical and Product News and Insights from Rackspace
Originally published in Aug 2019, at ObjectRocket.com/blog
CockroachDB® is part of the Rackspace ObjectRocket family of database technologies. The scaling abilities of CockroachDB are exciting, with data replication and distribution (maximizing high availability), automatic database rebalancing, and multi-geo data centers supporting data-domiciling compliance, to name a few. And all of this with high data integrity and distributed ACID transactions because the CockroachDB data resiliency is a must-have.
We want to share some of the highlights of scaling with CockroachDB and go over what Rackspace ObjectRocket’s DBaaS offers. As a developer, when you use CockroachDB on our managed-services platform, you can focus on building your applications and not on the intricacies of running a database.
Twenty years ago, storage was an expensive concern, and the term Big Data made it clear that we faced big challenges. We had massive amounts of data and no good way to analyze or use that data. But now, technology can handle Big Data and the constant barrage of queries and transactions inherent in our modern world of e-commerce, financial software, research, business administration, and data mining. Another technology frontier, the Internet of Things, increases the number of devices generating data and running transactions online. You can now add cameras, light switches, and refrigerators to the long list of devices that are creating useful data online.
In this landscape, it’s critical to implement a scaling strategy that meets the current demands on your data stores and also allows for the inevitable growth in data and new, not-yet-imagined, sources of even more data and transactions.
Scaling simply means ramping the necessary database resources up (or down) to handle the current workload appropriately. Scale in the following ways:
Most relational databases use vertical scaling. However, most distributed databases (often non-relational) use horizontal scaling—which is better for heavy transactional loads, frequent queries, reads/writes, and resiliency requirements. You can scale vertically only so far, because of the technical (computational) limits of a single piece of hardware.
However, scaling horizontally is not constrained computationally and is limited to only the amount of hardware available and what the software supports. What makes CockroachDB unique is that it provides a great solution for horizontally scaling relational databases (traditionally not possible) in response to the rapid, real-time reads and writes that are inherent in distributed online transaction processing (OLTP) systems. You can also scale CockroachDB vertically, but scaling by adding more nodes is the preferred method.
According to Derek Johnson, Product Manager at Rackspace ObjectRocket, the most exciting aspect of CockroachDB’s scaling is how smart it is.
After you create and configure the first node, adding subsequent nodes is simplified. In multi-node environments, you can leverage the
powerful CockroachDB features of auto-scale, balance data, and self-managed geo-specific compliance requirements to keep your data stores
reliable, compliant, and performant. With optimized configurations, you can take advantage of the real powers of CockroachDB. For example,
by using the
—locality flag to describe the node’s region and availability zone, CockroachDB implements geo-partitioning and automatically
keeps data within the specified region.
Here’s a breakdown of some scaling highlights:
Instead of creating shards that are then geographically siloed, improving latency but preventing cross-geo queries, CockroachDB uses configuration settings at the range level to replicate data within defined regions. CockroachDB delivers double-purpose value with its unique geo-partitioning capabilities. By configuring the specific region to store data, you achieve both application performance (data closer to users’ applications) and GDPR data domiciling compliance.
The CockroachDB Admin UI has a fantastic geographic display called the Node Map, which shows a map of the world with icons for all nodes and the details for each node. This graphical display helps with planning and troubleshooting latency issues between data stores. When accessing your CockroachDB through the ObjectRocket Mission Control UI, you can link easily to the CockroachDB Admin UI to view the Node Map.
CockroachDB offers the following scaling advantages:
ObjectRocket offers complete managed services for your CockroachDB data stores by using a Kubernetes container-based architecture. The service includes design and deployment consulting, full technical support, and all of the benefits of the enterprise-licensed version of CockroachDB.
The key features of the managed CockroachDB solution include:
What this means to you is that you get a relational, ACID-compliant data store with a comfortable SQL interface and PostgreSQL wire compatibility, but with automatic HA, easy scalability, and geographic scaling.
ObjectRocket’s managed CockroachDB offering enables you to select the best option for your data needs from pre-defined node types and then horizontally scale by adding as many more of that node type as needed. Our Kubernetes-based platform automatically replaces failed or problematic nodes so we can ensure that your cluster is always up and available.
This is a great time to check out CockroachDB and what Rackspace ObjectRocket provides with our managed services. For some insight into how a managed offering of CockroachDB might solve your data store requirements, read our Top 5 Use Cases blog. Cockroach® has excellent documentation, and if you are interested in having a conversation about CockroachDB or want to learn more, contact us here at Rackspace.
Click here to view The Rackspace Cloud Terms of Service.
Use the Feedback tab to make any comments or ask questions. You can also click Sales Chat to chat now and start the conversation.