---
title: "You know I'd run a billion transactions.."
publication: "Postgres Weekly"
issue: 480
published_at: "2022-11-09"
canonical_url: "https://postgresweekly.com/issues/480"
---

Plus a new serverless Postgres service, OR vs UNION, and getting up to speed with the Postgres insider lingo. |        

#​480 — November 9, 2022 

[Web Version](https://postgresweekly.com/issues/480)  

Together with [![Dynaboard logo\](https://res.cloudinary.com/cpress/image/upload/c_fill,g_auto,e_trim,w_500,h_100/e_make_transparent/co_white,e_outline:7/xh5y6qe2tcrjx1vxyfer.png)](https://dynaboard.com/?utm_source=cooperpress&utm_medium=email&utm_campaign=procode-q42022)  

Postgres Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/eyfbrsatyf4bgj2fi8lb.jpg)](https://kmoppel.github.io/2022-11-09-postgres-v15-a-billion-transactions-later/)  

[Postgres 15, A Billion Transactions Later](https://kmoppel.github.io/2022-11-09-postgres-v15-a-billion-transactions-later/) — Last week B-tree and BRIN indexes [battled it out](https://www.cybertec-postgresql.com/en/btree-vs-brin-2-options-for-indexing-in-postgresql-data-warehouses/), now it’s 2017’s Postgres 10 vs Postgres 15! Kaarel put them both under a billion transaction stress test and made some observations, including v15’s improved storage efficiency. 

Kaarel Moppel   

[Postgres Insider Terminology](https://www.crunchydata.com/blog/challenging-postgres-terminology) — Want to seem like one of the cool Postgres kids? No? Well, tough, Paul is here to bring us up to speed with tuples, TOAST, relations, pages, and more. If you want to go a step further, did you know Postgres has [an official glossary](https://www.postgresql.org/docs/current/glossary.html) too? 

Paul Ramsey   [![\](https://copm.s3.amazonaws.com/26e6f0be.png)](https://dynaboard.com/?utm_source=cooperpress&utm_medium=email&utm_campaign=procode-q42022) 

[Dynaboard: The Pro-Code Web App Builder Made for Developers](https://dynaboard.com/?utm_source=cooperpress&utm_medium=email&utm_campaign=procode-q42022) — Build high performance public and private web apps in a collaborative — code forward — WYSIWYG environment. 

Dynaboard sponsor    

[On Rewriting `OR` to `UNION` in Your Queries](https://www.cybertec-postgresql.com/en/rewrite-or-to-union-in-postgresql-queries/) — A few years ago, Laurenz wrote about [avoiding `OR` for performance reasons](https://www.cybertec-postgresql.com/en/avoid-or-for-better-performance/), instead leaning on a `UNION` based approach. But is it always a winner, and why doesn’t Postgres optimize for this anyway? Laurenz has some answers. 

Laurenz Albe   

**IN BRIEF:** 

- Amit Kapila summarizes [the enhancements made to logical replication](http://amitkapila16.blogspot.com/2022/11/logical-replication-improvements-in.html) in Postgres 15.
- This week's _Postgres Person of the Week_ is Wilfried Roset who [answers some questions](https://postgresql.life/post/wilfried_roset/) about his work as a database reliability engineer at OVHcloud.
- Percona's Kai Wagner went to his first Postgres conference ever and what a way to start with PGConf.EU 2022. [His writeup](https://www.percona.com/blog/first-postgresql-conference-ever-what-youve-missed/) goes into a lot of detail both about the event and what he got out of it.
- Are all NULLs the same? [Not in Postgres 15](https://www.percona.com/blog/postgresql-are-all-nulls-the-same/), they aren't.
- 📅 The first _Citus Con_ event was such a success.. they're doing it again! [Citus Con 2023](https://www.citusdata.com/cituscon/2023/) is a Postgres event taking place April 18-19, 2023, and it'll be free, virtual, and global like before.
- [bit.io](https://blog.bit.io/bit-io-launches-serverless-postgres-4db33ef4a2cc) has now launched its serverless Postgres service.   

[How `LISTEN` and `NOTIFY` Promote High Availability at the App Layer](https://www.enterprisedb.com/blog/listening-postgres-how-listen-and-notify-syntax-promote-high-availability-application-layer) — Shaun looks at some alternatives to using triggers for sending notifications on a fictional social network such as leaning on Postgres’s built-in pub/sub functionality (via [NOTIFY](https://www.postgresql.org/docs/current/sql-notify.html) and LISTEN) to outsource work to an external daemon process. 

Shaun Thomas   

[Using JSON Functions to Navigate Restaurant Reviews](https://dev.to/ftisiot/using-postgresqlr-json-functions-to-navigate-reviews-of-restaurants-in-india-39ld) — Practical examples of using Postgres’s JSON querying functionality are always welcomed by me. This starts from the basics but moves on to things like creating a histogram of restaurant ratings in a single query. 

Francesco Tisiot   

[What is PostgreSQL Commitfest and How to Contribute](https://supabase.com/blog/postgresql-commitfest) — A time-tested method for contributing to the core Postgres code. 

Pavel Borisov (Supabase)    

🛠 Code and Tools  

[Orafce 4.0: Oracle Compatibility Functions for Postgres](https://github.com/orafce/orafce) — Orafce implements some of the functions from Oracle that might be useful for users migrating to Postgres. v4.0 drops Postgres 9.6 and 10 support and merges in _orafce_sql_, a Postgres [subset](https://github.com/orafce/orafce_sql#functionality) of Oracle’s DBMS_SQL interface. 

Orafce   

[Monitor Custom PostgreSQL Metrics with Datadog’s OOTB Dashboards](https://www.datadoghq.com/dg/monitor/postgresql-dashboards-benefits/?utm_source=advertisement&utm_medium=newsletter&utm_campaign=dg-cooperpress-applications-ww-postgres-b-dashboards) 

Datadog sponsor   

[pg_builder 2.1.0: A Query Builder in PHP for Postgres](https://www.postgresql.org/about/news/pg_builder-210-released-with-support-for-postgres-15-syntax-2535/) — Curiously it contains a partial reimplementation of Postgres’s query parser and works by converting queries to and from an AST. v2.1 boasts improved Postgres 15 support. 

Alexey Borzov   

- [pgmetrics 1.14](https://pgmetrics.io/)
 ↳ Collect info & stats from a running PG server.
- [Leoric 2.9](https://github.com/cyjake/leoric)
 ↳ JavaScript ORM for MySQL, Postgres, & SQLite.
- [Cornucopia 0.9](https://github.com/cornucopia-rs/cornucopia)
 ↳ Generate type-checked Rust from SQL.
- [pglast 3.17](https://github.com/lelit/pglast)
 ↳ Python-based PG SQL statement parser.
- [DenoDB 1.1](https://github.com/eveningkid/denodb)
 ↳ MySQL, SQLite, MariaDB, Postgres and MongoDB ORM for Deno.
- [sqlc 1.16](https://github.com/kyleconroy/sqlc) – Make type-safe Go code from SQL.
- [Prisma 4.6](https://github.com/prisma/prisma) — ORM for Node + TypeScript.
- [pspg 5.5.9](https://github.com/okbob/pspg) – Rich Unix pager for tabular data.    

**Got a new email?** You can [change your address here](https://postgresweekly.com/edit_subscription/*|UID|*). 

--- 

**Bored of us?** [Click here to stop getting Postgres Weekly](https://postgresweekly.com/leave/*|UID|*). 

--- 

**Got a link for us?** Reply and tell us. We can't include everything but we'll look at anything you send. Thanks! 

--- 

Published by Cooper Press Ltd.
Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom 

Postgres, PostgreSQL and the Slonik Logo are trademarks or registered trademarks of the PostgreSQL Community Association of Canada. 

[Stop getting this newsletter.](https://postgresweekly.com/leave/*|UID|*)
