#​527 — October 25, 2023

Web Version

Together with  EDB

Postgres Weekly

Introducing pg_timetable v5.6pg_timetable (GitHub repo) is a powerful standalone job scheduler for Postgres. v5.6 adds a feature to asynchronously initiate task chains with a time delay.

Pavlo Golub

Citus's New Technical README for Distributed Postgres — The Citus team at Microsoft has produced a Citus technical README that goes deep into the technical details of how Citus transforms Postgres into a distributed database, detailing the underlying mechanisms and optimizations – details that may be also of value to developers of other Postgres extensions.

Onder Kalaci (Microsoft)

The Flexibility and Power to Run Postgres DBaaS on Any Cloud.. Start for Free with $300 in Credits — Innovate faster with fully managed Postgres now available with high availability and distributed capabilities – with access to top-tier Postgres experts whenever you need them.

EDB BIgAnimal sponsor

Versioning Data in Postgres: Testing a 'git'-Like Approach — Sam explores a way to manually model git-esque data versioning in Postgres. However, this is a common enough requirement that there are a lot of out-of-the-box solutions if you need them, ranging from solutions like Neon’s branching feature, an extension like temporal_tables, Postgres.ai, or the PL/pgSQL-based Temporal Tables approach.

Samuel Bodin

IN BRIEF:

Prepared Statements in Transaction Mode for PgBouncer — Last week, we mentioned that PgBouncer now supports prepared statements. This post digs further, breaking down the performance gains of prepared statements and why they have traditionally posed a challenge.

Greg Sabino Mullane

How to Use Psycopg2: The Postgres Adapter for Python — A quick review of some of the most popular Postgres libraries for Python, before focusing on the long standing and highly popular psycopg2. (It’s worth bearing in mind that there’s psycopg3 too which offers asyncio support.)

Anber Arif (Tailscale)

A Simple Query Optimization: Avoiding the Sequential Scan“Optimizing Postgres queries can seem complicated, let’s make it simple.”

Jason Zucchetto

Postgres 101 Webinars – A Series of Key Topics for New Postgres Users

Redgate sponsor

You Don't Need a Dedicated Cache Service: Using Postgres as a Cache
Martin Heinz

Deploying Crunchy Postgres for Kubernetes in a Multi-Zone Cluster
Bob Pacheco (Crunchy Data)

High CPU Usage in Postgres: How to Detect and Fix It
Charlie Custer (Cockroach Labs)

Code and Tools

pglift: A New Way to Deploy Postgres at Scalepglift is a CLI tool and Ansible collection for deploying production-ready Postgres clusters complete with optional ancillary services for doing backup and monitoring.

DALIBO

Making an Anonymized Dump of Your Postgres Data — Instead of installing an extension in your production database, this approach relies upon making a copy in a local database then using PostgreSQL Anonymizer from that.

Steven Miller

  • FerretDB 1.13 – MongoDB alternative using Postgres for storage. (There's now an online FerretDB playground to play with, too.)

  • Pigsty 2.5 – Open source RDS-a-like Postgres distro bundled with lots of extensions. Now uses Postgres 16 and supports Ubuntu/Debian.

  • Piccolo 1.0 – User friendly Python ORM and query builder.

  • pgAdmin 4 v7.8 – Popular Web-based Postgres management tool.

  • pg_cron 1.6.2 – Run periodic jobs. Simpler than pg_timetable.

  • Prisma 5.5 – Next-gen ORM for Node.js & TypeScript.

  • sqlc 1.23 – Generate type-safe Go code from SQL.

  • pg-parquet-py – Python script to write Postgres data to Parquet.