Typically you don't name your company after insects which make people call an exterminator but Cockroach Labs is a great name for a database which is designed to be up 24x7. Put it this way - what other name would be able to allow customers to infer the product can rapidly replicate and survive disasters?
To learn more about this up and coming database, we had an exclusive interview with Nate Stewart, VP of Product, and Jessica Edwards, Director of Marketing and Community.
Nate said, "We have figured out how to take an SQL database and scale it horizontally." He continued, "People thought it was too hard to do this which explains the rise of NoSQL."
The company bills itself as a resilient SQL database for global business. Obviously, business continuity is a core feature as the solution not only minimizes planned and unplanned downtime... It eliminates all downtime.
Nate said, "You don't need to upgrade the database software or the operating system on the machine." He went on to say, "The database is distributed and there is no centralized coordinator so nothing goes offline."
He exclaimed, "While others think about disaster recovery, our customers think about resiliency."
The company uses multi-active availability which is designed without the downsides of active-passive and active-active approaches.
This is done through "consensus replication." In this design, replication requests are sent to at least three replicas, and are only considered committed when a majority of replicas acknowledge that they've received it. This means that you can still have failures without compromising availability.
To prevent conflicts and guarantee your data's consistency, clusters that lose a majority of replicas stop responding because they've lost the ability to reach a consensus on the state of your data. When a majority of replicas are restarted, your database resumes operation.
To eliminate the outage challenges of competitors like AWS, customers can create clusters which span data centers meaning if a data center does go down, the application can still run.
We brought up the fact that this architecture reminds us of BitTorrent (News - Alert) or Skype, to which he responded, "It's a shared-nothing architecture like blockchain, but much faster. In fact, the solution can handle hundreds of thousands of transactions per minute at complex computational workloads."
Speaking of competition, Google (News - Alert) competes with their Spanner service but they are also an investor. Nice way to hedge your bets.
Why choose Cockroach Labs over its search engine competitor? Well, for one, they are open-source, meaning transparency. The software can even run on a laptop, allowing infinite flexibility in data placement, and they can provide an amazing cloud migration path. Companies can gradually move to cloud if they so choose, but use the same database as they migrate. A cluster can, for example, span a private data center and the cloud - whichever cloud a company chooses.
Data is secure - using TLS 1.2 during data transfer and encryption at rest up to AES-256.
Another great benefit is the technology eliminates the need to manage shards with middleware and deal with load balancers.
Perhaps the most important feature has to do with the regulatory environment we are currently facing with governments making various laws regarding data storage and retrieval. The company's geopartitioning is intelligent, meaning apps do not need to be rewritten to handle the morass of regulations.
For example, policies within the database can ensure records which say "Barcelona" are stored in Spain. Once data centers are tagged, you are ready for whatever governments can throw at you when it comes to local data storage regulations. Metadata is yet another way to manage records - allowing data tagged with "Germany" to be stored in the EU for example.
Another important area for the company is edge computing. Cockroach seems to be a natural fit for such decentralized solutions. Serverless is another important trend and Cockroach does help reduce data storage complexity for developers. In a way, this solution can function as a CDN for dynamic data.
Most recently, the company announced Managed CockroachDB, the first cloud-neutral, geo-distributed SQL DBaaS, launching initially on Google Cloud Platform (GCP) and Amazon Web Services (News - Alert) (AWS). It gives CockroachDB customers across the finance, gaming, health, and retail industries a fully-managed database for building resilient, globally-scaled services. Features such as geo-partitioning minimize latency for users by locating data in close proximity to demand; row-level data-domiciling constraints ensure compliance with data localization requirements. These are just some of the capabilities CockroachDB provides, which can make a critical difference for companies doing business in, or looking to expand into, new markets under the constraints of fast-evolving data sovereignty regulations.
"We're launching Managed CockroachDB to meet the surging demand from customers who prefer to outsource the operational burden of deploying and managing a geo-distributed database," said Cockroach Labs CEO and co-founder Spencer Kimball. "We've been seeing significant migration activity away from Oracle (News - Alert), AWS Aurora, and Cassandra, and we're now able to get our customers to market faster with Managed CockroachDB."
The launch of Cockroach Labs' geo-distributed DBaaS coincides with the release of CockroachDB 2.1, which delivers powerful migration tools for MySQL and PostgreSQL as well as significant performance and scale improvements. CockroachDB 2.1 has been tested to handle 5x as much transactional volume as 2.0 and more than 50x the transactional volume as Amazon Aurora when compared using the industry-standard TPC-C benchmark.
Hopefully, by now we have convinced you that when you hear the word cockroach, you shouldn't reach for a can of Raid, but will instead think of a scalable, resilient database built for near-infinite scale and flexibility.
Edited by Erik Linask