#​485 — December 14, 2022

Web Version

Together with  Timescale logo

Postgres Weekly

pg_crdt: An Experimental CRDT Extension — Supabase has open sourced a new extension (that they’re very keen to stress is ‘experimental’) for supporting conflict-free replicated data types (CRDTs) as commonly used in distributed and collaborative systems to allow multiple users to make simultaneous changes which are then reconciled thereafter.

Paul Copplestone (Supabase)

Faceting Large Result Sets in Postgres — When it comes to searching and query interfaces, ‘faceting’ is the idea of honing in on a result set by applying increasing numbers of conditions (for example, a shirt.. that’s red.. in a certain size). Counting all of the matching rows for a certain set of facets can be made more efficient, as shown here.

Ants Aasma (Cybertec)

Timescale Launches New Object Storage Layer on Amazon S3 — With Timescale’s new capability, learn how you can now store an infinite amount of data in Timescale Cloud, paying only for what you store and accessing it as if it all lived in one single continuous PostgreSQL table.

Timescale sponsor

'Just Use Postgres for Everything' — Preaching to the choir here and we agree with most of the points, but this brief opinion piece is interesting, too, partly because of speculation that ChatGPT wrote it(!)

Stephan Schmidt

IN BRIEF:

Enums vs Check Constraints in Postgres — Enums or check constraints, which one is better? Craig suggests that check constraints offer more options.

Craig Kerstiens

pg_dump Compression Specifications in Postgres 16 — Dumps created with pg_dump can be compressed by pg_dump itself by using various command line flags. Postgres 16 will take things a step further by letting you specify the level of compression and method of compression via flags.

Pavlo Golub

'I Migrated from a Postgres Cluster to Distributed SQLite with LiteFS' — Not your typical database migration, but with interest around the file-oriented SQLite database picking up, I think we’ll continue to see it pick up more use cases that may have traditionally fallen to Postgres or MySQL.

Kent C Dodds

▶  Being a Better Developer with EXPLAIN — This isn’t new but is a classic 40-minute talk that digs into the world of query parsing and planning and how to analyze query plans created with the EXPLAIN command. Continues to be relevant and useful.

Louise Grandjonc

🛠 Code and Tools

'How We Built the Fastest Postgres DB for Analytics' — A bold claim. Hydra is an open-source (code here) data warehouse built on top of Postgres for OLAP and hybrid workloads that’s commercialized by way of a fully-managed platform. Along with the expected favorable benchmarks, this post goes into some depth on just how Hydra approaches the performance issue.

Joe Sciarrino (Hydra)

PGTracer: EBPF-Powered Tracing Tools for Postgres — For when you want to go deep. Uses Linux’s eBPF facilities (in short, a way to inspect activities within the kernel that began its life as a packet filtering tool) to attach to a running Postgres backend, monitor queries, and instrument things.

Aiven

Dynaboard: The Pro-Code Web App Builder Made for Developers

Dynaboard sponsor

An 'Edge-Compatible' Serverless Driver for Postgres on Neon — A serverless PostgreSQL driver for connecting to Neon (a new ‘serverless Postgres’ platform) databases from Cloudflare Workers and other environments supporting WebSockets.

George MacKerron (Neon)

Redis FDW: A Postgres Foreign Data Wrapper for Redis — Bills itself as an “at your own risk” project, but is apparently used in production.

Andrew Dunstan and Dave Page