Using stored procedures effectively in a distributed PostgreSQL database
Bryn Llewellyn is a Developer Advocate at Yugabyte, Inc. YugabyteDB is an open source, cloud native distributed SQL database that looks like PostgreSQL to the developer. Bryn’s speciality is SQL and stored procedures in the context of distributed SQL.
Bryn has worked in the software field for more than forty years. He started working with SQL when he joined Oracle UK in 1990. He relocated to Oracle HQ (Redwood Shores, CA) in 1996 and his last role, before leaving, was as the Product Manager for PL/SQL. He left Oracle in April 2019 to join YugaByte, Inc.
Bryn started off doing image analysis and pattern recognition at Oxford University (programming in FORTRAN) and then worked in Oslo, first at the Norwegian Computing Center and then in a startup. In Norway, Bryn programmed in Simula—recognized as the first object-oriented programming language and was the inspiration for C++.
YugabyteDB is an open-source, cloud-native, high-performance database that belongs in the emerging distributed SQL category. Its storage layer uses a “shared nothing” architecture inspired by Google Spanner that brings linear write scalability, low read latency, and intrinsic fault tolerance. And, uniquely in its category, its query layer is implemented by using the “upper half” of the PostgreSQL 11.2 code to bring both wire-protocol and SQL dialect compatibility with vanilla PostgreSQL. This means that you can use stored procedures in YugabyteDB just as you use them in vanilla PostgreSQL. This session recaps the case for using stored procedures—which case is as strong when you use a distributed SQL database as when you use a monolithic one. And it proposes a scheme that ensures that connecting clients can only invoke the procedures that define the database’s API. In other words, they cannot even see the underlying tables, let alone query and change them with direct SQL.
- 50 min
- Postgres Conference 2020
- Distributed SQL