Blog
Product
How to optimize write latency for global tables in CockroachDB
Achieving low latency reads in a transactionally consistent, multi-region database is a unique challenge. In CockroachDB, two approaches are frequently used: geo-partitioning data so that it is located in the region where it is accessed most frequently, and historical reads, which read slightly stale data from local replicas. However, there is a third approach that is used less frequently because it fits a narrower use case: global tables. Global tables offer low-latency non-stale reads from all regions at the cost of higher write latency, and they can be used in many cases where the workload has a high read to write ratio.
Jon St. John
November 8, 2022
Product
Collect and deliver data with Vector by Datadog and CockroachDB
In my technical journey, I struggled to find a simple tool that gave me the flexibility to collect and deliver data to other monitoring tools. Until, one day, I found it.
Julian Hernandez
November 7, 2022
Product
Secure network egress with private CockroachDB clusters
As part of zero-trust focus, InfoSec and Risk teams pay extra attention to data exfiltration threat vectors, including both when it comes to how service providers manage their data, and how to control & manage insider risk exposure through their employees. Solutions to a number of those requirements manifest in the form of network security controls, especially for egress. With regard to database clusters, restricting clusters to access only specific resources for things like backup-restore, publishing real-time change events, or sending observability data can be challenging.
Abhinav Garg
November 4, 2022
Product
How to build modern gaming services — with reference architecture
Let game developers develop games. It doesn’t exactly sound revolutionary. But back in the day, that’s not always how things worked. Every game had its own systems for things like stat tracking, item purchases, user entitlements (in-game items a user has purchased or unlocked), and game devs often got bogged down building bespoke functionality into each of their games to handle these user features.
Charlie Custer
November 3, 2022
Product
Have some CAKE: The new (stateful) serverless stack
Serverless application stacks have been stuck in a dilemma: Most applications need some kind of state store, but most state stores aren’t serverless. Rich-data applications like payment apps, buy online/pick up in store services, and real-time online sports betting are incompatible with fully serverless architecture simply because, at some point, the database becomes a bottleneck. Why?
Keith McClellan
October 27, 2022
Product
How to get your data into CockroachDB Serverless
So you’ve spun up a free CockroachDB cluster, and now you’ve got a next-generation distributed SQL database. That’s great! Now, how do you actually get your data into it? Thankfully, there are lots of ways to get your data into CockroachDB. So many, in fact, that we can’t actually cover all of them. In this post, we’ll take a look at some of the most common ways to get your data into CockroachDB, whether you’re working with a database dump from something like MySQL or PostgreSQL, or you’ve just got a CSV you exported from Excel.
Charlie Custer
October 24, 2022
Product
How we built a serverless SQL database
We recently announced general availability (GA) for Serverless, with support for change data capture (CDC), backup and restore, and a 99.99% uptime SLA. Read on to learn how CockroachDB Serverless works from the inside out, and why we can give it away for free – not free for some limited period, but free. It required some significant and fascinating engineering to get us there. I think you’ll enjoy reading about it in this blog or watching the recent presentation I gave with my colleague Emily Horing:
Andy Kimball
October 11, 2022
Product
Which GCP instances are best for OLTP workloads?
Choosing the right instance type for your workload can be a tricky proposition. It’s not always clear how a particular configuration is going to perform for your workload, and running the tests to find out is time consuming and expensive.
Charlie Custer
October 10, 2022
Product
No time to live: James Bond explains row-level time to live
“Do you know what time it is? Time to die.” -Nomi That’s it. That’s row-level TTL in a James Bond nutshell. Which is appropriate given that today is James Bond Day. You probably don’t need to read further than that one quote from Nomi (possibly the next 007?). Because you get it now. But row-level TTL has been one of our most requested features dating back to 2017. It’s rare for issues on our github to get this many votes. So I hope you’ll forgive me for indulging in this metaphor a bit longer.
Dan Kelly
October 5, 2022