#​505 — May 10, 2023

Web Version

Together with  Crunchydata

Postgres Weekly

▶  The Citus Con 2023 Talks — Microsoft recently put on their second annual virtual Postgres conference, and while I haven’t had time to watch many of these yet (so watch out for more direct recommendations over the next few issues) there’s a lot to enjoy with 37 talks now available on YouTube.

Citus Con 2023

How to Force a Join Order in Postgres — Despite Postgres not having an inherent ‘query hint’ feature (here’s why), it’s still possible to force the query optimizer to use a certain join order when joining tables under certain circumstances.

Laurenz Albe

Can Postgres Do That? — The answer is often yes. Just Postgres can do a lot. Not a “Postgres” compatible imitation, actual Postgres. Want a provider that can assist you? We’re here to help.

Crunchy Data sponsor

How to Track Performance Differences with pg_stat_statements — How to track the impact of configuration changes to a specific workload using the venerable pg_stat_statements module.

Ryan Lambert

Michael Christofides also has some helpful queries you can use to get the most out of pg_stat_statements.


Building AI-Powered Search using Amazon SageMaker and pgvector — As hyped as the AI space is right now, there are some fascinating ways to take advantage of recent developments, including in Postgres. Using complex vectors and embeddings as a way to perform similiarity searches is now reasonably straightforward. In this case, AWS takes centre stage with SageMaker providing the embeddings.

Krishna Sarabu (AWS)

Performance Tips Using Postgres and pgvector
Christopher Winslett

Various Restoration Techniques Using Point-In-Time Recovery — Not something you ever want to do, but it’s worth running through the process in case you need it one day.

Tristen Raab

How to Submit a Patch by Email, 2023 Edition — An update of a similar post 14 years ago but to modern “nowadays we use git” standards.

Peter Eisentraut

Best Practices for Optimizing Postgres Query Performance (eBook)

pganalyze sponsor

Let’s Party and Upgrade Postgres and PostGIS Together — Florian’s idea of a party is a bit different from mine, but nonetheless, here’s one way to approach a Postgres 13 + PostGIS 2.5.5 to 15/3.3.2 upgrade.

Florian Nadler

Use DOMAIN Rules to Validate Columns of Data — A domain is a data type with optional constraints.

Francesco Tisiot

Running Postgres on Two Ports? — Don’t. Or, if you must, use a third party tool.

Christophe Pettus

Code and Tools

What’s New in Citus 11.3 for Multi-Tenant SaaS WorkloadsCitus is well established as a way to add distributed tables to Postgres. A common use case is building multi-tenant apps with tables distributed by tenant. Citus 11.3 introduces tenant monitoring providing visibility into per-tenant query counts and CPU usage over a configurable time period.

Marco Slot (Citus Data)

HeidiSQL 12.5: A Native Windows App for Database Work — If you’re on Windows, HeidiSQL is a handy, open source database management tool. Supports Postgres, MySQL, SQL Server, and SQLite. Written in Delphi and is open source.

Ansgar Becker

  • FerretDB 1.1
    ↳ MongoDB alternative using Postgres for storage.

  • Bob 0.21
    ↳ SQL query builder and ORM for Go.

  • Prisma 4.14
    ↳ Popular ORM for Node.js and TypeScript.