The Distributed SQL Blog

Thoughts on distributed databases, open source and cloud native

Four Data Sharding Strategies We Analyzed in Building a Distributed SQL Database

A distributed SQL database needs to automatically partition the data in a table and distribute it across nodes. This is known as data sharding and it can be achieved through different strategies, each with its own tradeoffs. In this post, we will examine various data sharding strategies for a distributed SQL database, analyze the tradeoffs, explain the rationale for which of these strategies YugabyteDB supports and what we picked as the default sharding strategy.

Read More

How Plume Handled Billions of Operations Per Day Despite an AWS Zone Outage

Enterprises deploy YugabyteDB clusters across multiple availability zones (AZs) in order to ensure continuous availability of their business-critical services even when faced with cloud infrastructure failures like zone outages. On November 12, 2019, there was one such outage of an entire availability zone in the eu-central-1 region of AWS. This was reported on the AWS status page on that day,

Read More

How YugabyteDB Scales to More than 1 Million Inserts Per Sec

There are a number of well-known experiments where eventually-consistent NoSQL databases were scaled out to perform millions of inserts and queries. Here, we do the same using YSQL, YugabyteDB’s PostgreSQL-compatible, strongly-consistent, distributed SQL API. We created a 100-node YugabyteDB cluster, ran single-row INSERT and SELECT workloads with high concurrency – each for an hour and measured the sustained performance (throughput and latency).

Read More

The Effect of Isolation Levels on Distributed SQL Performance Benchmarking

This post addresses a concern raised about a benchmarking result we recently published comparing the performance of YugabyteDB, Amazon Aurora and CockroachDB. It was pointed out that we unfairly used the default isolation level for each database rather than use serializable isolation level in all databases (even though serializable level was not required for these workloads). In addition,

Read More

Comparing Distributed SQL Performance – YugabyteDB vs. Amazon Aurora PostgreSQL vs. CockroachDB

Update: A new post “The Effect of Isolation Levels on Distributed SQL Performance Benchmarking” includes performance results from running these workloads at serializable isolation level in YugabyteDB.

We are excited to announce the general availability of YugabyteDB 2.0 this week! One of the flagship features of the release was the production readiness of the PostgreSQL-compatible YugabyteDB SQL (YSQL) API.

Read More

Low Latency Reads in Geo-Distributed SQL with Raft Leader Leases

Note: This post contains interactive animations that explain how some of these complex algorithms work. Please view this post in a suitable media (at least 1000px by 600px screen resolution) for best results.

In this blog post, we are going to dive deep into the read performance of Raft – why read performance can take a hit and how it can be improved using leader leases.

Read More

Why We Changed YugabyteDB Licensing to 100% Open Source

We are excited to announce that YugabyteDB is now 100% open source under the Apache 2.0 license. This means previously closed-source, commercial, enterprise features such as Distributed Backups, Data Encryption and Read Replicas are now available in the open source project and are completely free to use. Same applies to upcoming new features like Change Data Capture and 2 Data Center Deployments.

Read More

YugaByte DB Engineering Update – May 2019

A lot is happening at YugabyteDB since we announced 1.2, so we thought we’d provide the community with a quick recap of engineering highlights, announcements and shout outs to catch everyone up. Let’s dive in!

Progress on YugabyteDB 2.0

Check out our “Roadmap for YugabyteDB 2.0” to get more details on the exciting features shipping in the next big release this Summer!

Read More

6 Technical Challenges Developing a Distributed SQL Database

You can join the discussion on HackerNews here.

We crossed the three year mark of developing YugabyteDB in February of this year. It has been a thrilling journey thus far, but not without its fair share of technical challenges. There were times when we had to go back to the drawing board and even sift through academic research to find a better solution than what we had at hand.

Read More