The Distributed SQL Blog

Thoughts on distributed databases, open source, and cloud native

Four Compelling Use Cases for PostgreSQL Table Functions

Welcome to part three of a three-part series of posts on PostgreSQL’s table functions. These functions can be easily leveraged in a distributed SQL database like YugabyteDB, which is PostgreSQL compatible.

In this final post, I’ll discuss four realistic use cases that call for user-defined table functions and I’ll explain how each case is met using complete,

Read More

Implementing PostgreSQL User-Defined Table Functions in YugabyteDB

Welcome to part two of a three-part series of posts on PostgreSQL’s table functions. These functions can be easily leveraged in a distributed SQL database like YugabyteDB, which is PostgreSQL compatible.

In part one I gave a brief introduction to PostgreSQL’s table functions. Part three will cover some realistic use cases. I’ll introduce this second post by quoting that paragraph:

A regular language plpgsql user-defined function is implemented using the plain return statement.

Read More

An Introduction to PostgreSQL Table Functions in YugabyteDB

Welcome to the first of a three-part series of posts on PostgreSQL’s table functions. These functions can be easily leveraged in a distributed SQL database like YugabyteDB, which is PostgreSQL compatible.

This series follows on from my “Using Stored Procedures in Distributed SQL Databases” post. In this series of posts we’ll cover:

  • What table functions are and why they’re useful
  • Demonstrate the use of some built-in SQL table functions
  • Introduce how you can implement a user-defined table function,

Read More

Getting Started with PostgreSQL’s Row Level Security in YugabyteDB

In this blog post we are going to introduce you to how PostgreSQL’s row level security feature works in the latest YugabyteDB 2.0.6 release. YugabyteDB supports RLS and a host of other security and encryption features “out-of-the-box,” as part of the open source distribution.

What’s YugabyteDB? It is an open source, high-performance distributed SQL database built on a scalable and fault-tolerant design inspired by Google Spanner.

Read More

Using Stored Procedures in Distributed SQL Databases

These days, most monolithic SQL databases support stored procedures. This support first emerged in commercially available offerings in the late nineteen eighties. However, stored procedure support is not yet standard in distributed SQL databases. In fact, YugabyteDB is just one of two in this category—supporting stored procedures written in PostgreSQL’s PL/pgSQL. (Aurora also supports stored procedures.) This post recaps the case for stored procedures that motivated their introduction all those years ago.

Read More

Announcing YugabyteDB on Crossplane, the Open Source Multicloud Control Plane

We are excited to announce that YugabyteDB is now available as a self-managed database service on Crossplane, the open-source multicloud control plane. Built on top of our recent Rook Kubernetes Operator for YugabyteDB, this offering makes YugabyteDB one of the first distributed SQL databases available on Crossplane.

Benefits of the Joint Solution

With Crossplane as the single control plane,

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

Getting Started with PostgreSQL Triggers in a Distributed SQL Database

Triggers are a basic feature that all monolithic SQL systems like Oracle, SQL Server and PostgreSQL have supported for many years. They are very useful in a variety of scenarios ranging from simple audit logging, to advanced tasks like updating remote databases in a federated cluster. In this blog, we’ll look at examples of INSERT, UPDATE and INSTEAD OF triggers in Yugabyte DB.

Read More