#​547 — March 20, 2024

Web Version

Together with  Ottertune logo

Postgres Weekly

Figma's Nine Month Journey to Shard Its Postgres Stack — In a quest to unlock '(nearly) infinite scalability', Figma’s database team had a lot of work to do in moving to a horizontally sharded architecture ("End to end, it took our team roughly nine months to shard our first table"). This post goes into the depths of how they planned out and executed the project.

Sammy Steele (Figma)

OtterTune Optimizes Your RDS and Aurora Postgres Databases — No mock-ups or fake screenshots — use our product tour to click through all of OtterTune and learn how you can use AI to optimize your Postgres databases. And then put it to the test: do a free, 30-day trial on an unlimited number of databases.

OtterTune sponsor

'Look Ma, I Wrote a New JIT Compiler for Postgres' — Before you get too excited, the author’s pg-copyjit project is experimental (and x86-64 only), but they do seek feedback on how it works out for you — so if you’re feeling brave and are seeking some potential performance gains...

Pinaraf / Pierre Ducroquet

Distributed Queries for pgvector — Distributing a workload across multiple databases provides another way to scale once a single instance has maxed out. Jonathan takes a look into how pgvector and Postgres can be used to scale vector workloads horizontally too.

Jonathan Katz

IN BRIEF:

Postgres Performance Boost: HOT Updates and Fill Factor — There’s a way for Postgres to only update the heap (the table) without having to update all the indexes – a so-called HOT update, where HOT stands for ‘heap only tuple.’

Elizabeth Christensen

When Postgres is Not Enough? Performance Evaluation of Postgres vs. Distributed DBMSs — An empirical study of Postgres, CockroachDB, and YDB by way of the TPC-C benchmark, as well as a consideration of reliability/performance trade-offs in Postgres.

Evgeniy Ivanov

Extracting Database Metadata for Presentation in Excel Format
Rayis Imayev

📰 Classifieds

Can you create a copy of a 1TB database in one second? With the copy-on-write storage model in Neon Postgres, you can.


📢 Free pgEdge distributed Postgres DB with 3 node active-active cluster and one-click provisioning across 3 regions. Free t-shirt to first 500.

🛠 Code and Tools

pgzx: Create Postgres Extensions using Zig — If you’re familiar with pgrx as a way to build Postgres extensions with Rust, this is a similar idea with Zig, another modern systems language that’s a little more C-like than Rust.

Xata

WAL-G 3.0: Database Archive Restoration Tool — A tool for database archival and restoration for Postgres, MySQL/MariaDB, MongoDB, and several other DBMSs – v3.0 introduces failover storage, plus a WAL archiving daemon for Postgres in particular.

Citus Data Inc.

transqlate: Transpile SQL into the PostgreSQL Dialect — Focusing on Oracle-flavored SQL, this Go-powered tool (which is admittedly still in the early stages) aims to let you transpile SQL into the ‘PostgreSQL dialect’ in terms of style, syntax, and semantics.

DALIBO

  • pgweb 0.15 – Cross-platform desktop client for Postgres.

  • pgwire 0.20 – Postgres wire protocol in a Rust library.