Start Now

The Distributed SQL Blog

Thoughts on distributed databases, open source, and cloud native

Relational Data Modeling with Foreign Keys in a Distributed SQL Database

Note added on October 31, 2019

A lot has happened since this post was published in July 2019. Back then, the current YugabyteDB version was 1.2.10. And now, it’s 2.0.3. My original text included some caveats and comments like “Until this support is added in a future release…”. Now, no caveats are needed. I therefore revised my text and the companion downloadable code to remove all reference to those earlier, interim,

Read more

YugabyteDB Engineering Update – June 27, 2019

We are pleased to announce that YugabyteDB 1.2.11 is live! You can read the release notes of this and previous versions here. This release is shipping with stored procedures support, plus 30 new features, enhancements and bug fixes. Here’s a few highlights from the 1.2.11 release.

What’s YSQL? It’s YugabyteDB’s PostgreSQL-compatible, distributed SQL API.

[#1155] Support for FUNCTION and PROCEDURE

Stored procedures allow developers to “bundle up” operations that would otherwise take several queries and round trips into a single function.

Read more

GO-JEK’s Performance Benchmarking of CockroachDB, TiDB & YugabyteDB on Kubernetes

Iqbal Farabi and Tara Baskara, Systems Engineers from GO-JEK Indonesia, recently presented the results of their benchmarking of cloud native databases on Kubernetes at KubeCon Europe in Barcelona. The three databases they benchmarked were CockroachDB, TiDB and YugabyteDB. This post brings their presentation (video recording) and slides (PDF) to the attention of our readers. It also highlights a few areas of collaboration between the GO-JEK team and YugabyteDB Engineering.

Read more

Best Practices for Deploying Confluent Kafka, Spring Boot & Distributed SQL Based Streaming Apps on Kubernetes

In our previous post “Develop IoT Apps with Confluent Kafka, KSQL, Spring Boot & Distributed SQL”, we highlighted how Confluent Kafka, KSQL, Spring Boot and YugabyteDB can be integrated to develop an application responsible for managing Internet-of-Things (IoT) sensor data. In this post, we will review the challenges and best practices associated with deploying such a stateful streaming application on Kubernetes.

Challenges of Streaming Apps

Streaming apps are inherently stateful in nature given the large volume of data managed and that too continuously.

Read more

How Data Sharding Works in a Distributed SQL Database

Editor’s note: This post was updated August 28, 2020 to include new sharding features available starting in YugabyteDB 2.2

Enterprises of all sizes are embracing rapid modernization of user-facing applications as part of their broader digital transformation strategy. The relational database (RDBMS) infrastructure that such applications rely on suddenly needs to support much larger data sizes and transaction volumes. However, a monolithic RDBMS tends to quickly get overloaded in such scenarios.

Read more

YugabyteDB Engineering Update – June 4, 2019

We are pleased to announce that YugabyteDB 1.2.10 is live! You can read the release notes of this and previous versions here. This release is shipping with foreign key support plus 16 new features, enhancements and bug fixes. Here’s a few highlights from the 1.2.10 release:

YSQL Updates

What’s YSQL? It’s YugabyteDB’s PostgreSQL-compatible, distributed SQL API.

  • Basic support for FOREIGN KEY constraints is now available!

Read more

Spring Data REST Services Powered By Distributed SQL – A Hands-on Lab

The Spring application development framework is arguably the most popular framework among Java developers. However, given its extensive breadth and depth, it can be difficult to learn for new users. As the name suggests, Spring Boot makes it easy to `boot up` with the Spring framework. It shortens development time by taking an opinionated view of the framework and the associated third-party libraries. Annotation configuration and default codes are two examples of such a view.

Read more

How to Handle Runaway Queries in a Distributed SQL Database

Runaway queries are queries that scan through a large set of data. Such queries consume vast amounts of I/O and CPU resources of the database in the background, even if the results appear as harmless timeouts to the end user or the client application. How do runaway queries get executed in the first place, anyway? Everyone who uses databases has at some point or another entered SELECT * from some_large_table, only to realize they forgot to add a LIMIT n clause.

Read more

Develop IoT Apps with Confluent Kafka, KSQL, Spring Boot & Distributed SQL

In our previous post “5 Reasons Why Apache Kafka Needs a Distributed SQL Database”, we highlighted why Kafka-based data services need a distributed SQL database like YugabyteDB as their highly scalable, long-term persistent data store. In this post, we show how Confluent Kafka, KSQL, Spring Boot and YugabyteDB can be integrated to develop an application for managing Internet-of-Things (IoT) sensor data.

The Scenario – IoT-Enabled Fleet Management

A trucking company wants to track its fleet of IoT-enabled vehicles that are delivering shipments across the country.

Read more

Get started in any cloud, container or data center