#​570 — September 18, 2024

Web Version

Due to next week's anticipated release of Postgres 17, our next issue may be delayed till September 26 or 27 (next Thursday or Friday). So if you don't get an issue next Wednesday, no panic – we're holding out for the final release! :-)
__
Peter Cooper, your editor

Together with  pgAnalyze

Postgres Weekly

Optimizing Your Database for Analytics — Your database could be great for day to day operations, but when you need to run some complex analytics queries, some big decisions arise. You could replicate the data to do the analytics elsewhere in a variety of ways, or tweak Postgres to handle things better. A solid high-level look at the concepts involved. There’s ▶️ a video version, too.

Karen Jex

Why to Stop Using SERIAL in PostgresSERIAL is a commonly used convenience for generating an automatically incrementing ID column, but it has a variety of quirks and is Postgres specific. The alternative? Identity columns, which are both a part of the SQL:2003 standard and supported by Postgres.

Naiyer Asif

Hands on Postgres 17: What’s New & Impacting Performance — Join us for an exclusive webinar on the Postgres 17 release. Explore new enhancements—faster B-tree scans, adaptive vacuum strategies, and streaming I/O updates—and their impact on database performance & monitoring. Register today!

pganalyze sponsor

Postgres 17 RC1 vs sysbench on Small and Large Servers — If, like us, you’re anxiously awaiting next week’s Postgres 17 release, you might be curious at how it’ll stack up performance wise. Mark ran some benchmarks on 15.8, 16.4, 17 beta 3 and 17 RC1, and while there’s some detail to peck through, the summary is “17rc1 looks great - there are no big regressions and several big improvements.”

Mark Callaghan

QUICK BITS:

Implementing Hybrid Search with Postgres and pgvector — Jonathan sets out to show us how to use pgvector in implementing hybrid search systems, but notes that he doesn’t yet want to answer whether you should – that’s a topic for a future post.

Jonathan Katz

Window Functions for Data Analysis with Postgres — Window functions come in handy when you want to group or compare between rows you’ve already retrieved in a query – for instance, to calculate running totals, perform rankings, or work out rolling averages. They essentially provide higher order querying.

Elizabeth Christensen (Crunchy Data)

📰 Classifieds

Network with thousands of data professionals at PASS Data Community Summit in Seattle. Browse the schedule to discover over 170 sessions.


Dagster+ makes it easier to ingest & replicate data from Postgres with Embedded ELT. Start building now with your Dagster+ free trial.


🐘 Are you one of those devs without an opinion on PostgreSQL? Right. Tell us what you really think in the 2024 PostgreSQL Survey!

📄 Intel Demonstrates Up to 48% Improvement for AVX-512 Optimized Postgres Phoronix

📄 In-Database AI Agents: Teaching Claude to Use Tools with Pgai Haziqa Sajid (Timescale)

📄 Migrating from Temporal to a Postgres-Based Task Orchestrator Robin Guldener (Nango)

📄 Optimizing Postgres with Composite and Partial Indexes Semab Tariq

📄 Postgres Materialized Views from Parquet in S3 with Zero ETL – With Crunchy Bridge for Analytics, specifically. Marco Slot (Crunchy Data)

🛠 Code and Tools

🐸  Rainfrog: A New Database Management TUI for Postgres — We love psql as much as anyone, but are always keen to see new takes, and this Rust-powered terminal UI is an elegant one. You get a query editor with highlighting, Vim-esque shortcuts, and can quickly switch between schemas.

Carl Liu

📱  Selectable: An In-Development Android Postgres Client — A new freemium Android app for interacting with Postgres that’s admittedly still in its ‘early stages’ but available now on the Google Play Store to experiment with.

Selectable Software

  • 🌐 PostGIS 3.5.0 Beta 1 – The latest version of the popular geospatial extension gets ready for Postgres 17. We expect a final release soon after Postgres 17.

  • E-Maj 4.5.0 – Fine-grained write logging and time travel on subsets of a database.

  • Pongo 0.14.4 – Postgres driver for Node.js that presents as a MongoDB-style API.

  • Good Job 4.3 – Postgres-backed job queue for Ruby on Rails.

  • pgmoneta 0.14 – Backup / restore tool.