---
title: "An experimental JIT compiler for Postgres"
publication: "Postgres Weekly"
issue: 547
published_at: "2024-03-20"
canonical_url: "https://postgresweekly.com/issues/547"
---

Plus Figma's epic journey to shard their Postgres stack. |        

#​547 — March 20, 2024 

[Web Version](https://postgresweekly.com/issues/547)  

Together with [![Ottertune logo\](https://res.cloudinary.com/cpress/image/upload/c_fill,g_auto,e_trim,w_450,h_100/e_make_transparent/co_white,e_outline:7/d92wjjhrmysrssm2xhjm.png)](https://ottertune.com/product-tour?utm_source=postgres_weekly&utm_medium=email&utm_campaign=march_24_primary)   

Postgres Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/tjuxk6slt19hp3wuekxx.jpg)](https://www.figma.com/blog/how-figmas-databases-team-lived-to-tell-the-scale/)  

[Figma's Nine Month Journey to Shard Its Postgres Stack](https://www.figma.com/blog/how-figmas-databases-team-lived-to-tell-the-scale/) — 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)   [![\](https://copm.s3.amazonaws.com/c4b57860.png)](https://ottertune.com/product-tour?utm_source=postgres_weekly&utm_medium=email&utm_campaign=march_24_primary) 

[OtterTune Optimizes Your RDS and Aurora Postgres Databases](https://ottertune.com/product-tour?utm_source=postgres_weekly&utm_medium=email&utm_campaign=march_24_primary) — 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'](https://www.pinaraf.info/2024/03/look-ma-i-wrote-a-new-jit-compiler-for-postgresql/) — Before you get too excited, the author’s [pg-copyjit](https://github.com/pinaraf/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](https://jkatz05.com/post/postgres/distributed-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:_ 

- [Xata launched](https://xata.io/blog/xata-public-release) as a serverless database platform in 2022, but [now it acts like a serverless _Postgres_ platform too](https://xata.io/blog/serverless-postgres-platform) built atop AWS Aurora.
- Dalibo's Florent Jardin is [this week's _PostgreSQL Person of the Week_](https://postgresql.life/post/florent_jardin/).
- Nile's Gwen Shapira wrote [a neat Twitter/X thread on TOAST](https://twitter.com/gwenshap/status/1770209083225981418) and its effect on performance.   

[Postgres Performance Boost: HOT Updates and Fill Factor](https://www.crunchydata.com/blog/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](https://blog.ydb.tech/when-postgres-is-not-enough-performance-evaluation-of-postgresql-vs-distributed-dbmss-23bf39db2d31) — An empirical study of Postgres, CockroachDB, and [YDB](https://ydb.tech/) 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](https://datanrg.blogspot.com/2024/03/extracting-postgresql-database-metadata.html) 
Rayis Imayev      

📰 Classifieds   

Can you [create a copy of a 1TB database in one second?](https://neon.tech/blog/how-to-copy-large-postgres-databases-in-seconds?utm_source=cooperpress&utm_medium=newsletter&utm_campaign=postgresweekly&utm_content=classified) With the copy-on-write storage model in [Neon Postgres](https://neon.tech/blog/how-to-copy-large-postgres-databases-in-seconds?utm_source=cooperpress&utm_medium=newsletter&utm_campaign=postgresweekly&utm_content=classified), you can. 

--- 

📢 Free [pgEdge](https://www.pgedge.com/get-started/cloud?utm_campaign=Cloud%20Developer%20Launch&utm_source=Postgres%20Weekly%20Sponsorship&utm_medium=Postgres%20Weekly&utm_term=Postgres%20Weekly&utm_content=Postgres%20Weekly) distributed Postgres DB with 3 node active-active cluster and one-click provisioning across 3 regions. [Free t-shirt to first 500](https://www.pgedge.com/get-started/cloud?utm_campaign=Cloud%20Developer%20Launch&utm_source=Postgres%20Weekly%20Sponsorship&utm_medium=Postgres%20Weekly&utm_term=Postgres%20Weekly&utm_content=Postgres%20Weekly).      

🛠 Code and Tools  

[pgzx: Create Postgres Extensions using Zig](https://github.com/xataio/pgzx) — If you’re familiar with [pgrx](https://github.com/pgcentralfoundation/pgrx) as a way to build Postgres extensions with _Rust_, this is a similar idea with [Zig](https://ziglang.org/), another modern systems language that’s a little more C-like than Rust. 

Xata   

[WAL-G 3.0: Database Archive Restoration Tool](https://github.com/wal-g/wal-g/releases/tag/v3.0.0) — 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](https://gitlab.com/dalibo/transqlate) — 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](https://sosedoff.github.io/pgweb/) – Cross-platform desktop client for Postgres.
- [pgwire 0.20](https://github.com/sunng87/pgwire) – Postgres wire protocol in a Rust library.    

**Got a new email?** You can [change your address here](https://postgresweekly.com/edit_subscription/*|UID|*). 

--- 

**Bored of us?** [Click here to stop getting Postgres Weekly](https://postgresweekly.com/leave/*|UID|*). 

--- 

**Got a link for us?** Reply and tell us. We can't include everything but we'll look at anything you send. _Thanks!_ 

--- 

Published by Cooper Press Ltd.
Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom 

Postgres, PostgreSQL and the Slonik Logo are trademarks or registered trademarks of the PostgreSQL Community Association of Canada. 

[Stop getting this newsletter](https://postgresweekly.com/leave/*|UID|*).
