---
title: "The final Postgres roundup of 2023"
publication: "Postgres Weekly"
issue: 535
published_at: "2023-12-20"
canonical_url: "https://postgresweekly.com/issues/535"
---

Plus a new sparse vector extension, a way to generate IDs of all types, and indexing things on the celestial sphere. |        

#​535 — December 20, 2023 

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

🎄 As the subject line indicates, this is the last issue of the year – we're taking a week off for Christmas! Never fear, though, as we'll be back as usual on January 3 with a special issue looking back at another fantastic year in the Postgres ecosystem. We hope you have a happy holiday season, and we'll see you in 2024!
__
_Peter Cooper and the Cooperpress team_ 

Together with [![Redgate\](https://res.cloudinary.com/cpress/image/upload/c_fill,g_auto,w_800,h_192/e_make_transparent/co_white,e_outline:9/juuaxaie2hv6pua7rl7k.png)](https://www.red-gate.com/simple-talk/author/ryan-booz/?utm_source=postgresweekly&utm_medium=email&utm_campaign=postgres)   

Postgres Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/i8d5jxu85x1n4rwkzowr.jpg)](https://www.thenile.dev/blog/transaction-isolation-postgres)  

[Transaction Isolation in Postgres, Explained](https://www.thenile.dev/blog/transaction-isolation-postgres) — Despite how old the concept of database transactions is, they continue to trip up even the most assiduous of developers, with the role of isolation in affecting how concurrent transactions interact adding another dimension of complexity. Gwen does a good job in this primer on the topic. 

Gwen Shapira   

[Broken Foreign Keys: How Can That Happen?](https://www.cybertec-postgresql.com/en/broken-foreign-keys-postgresql/) — _“There are surprisingly many ways to end up with broken foreign keys in PostgreSQL,”_ says Laurenz, who shows off a few such ways here. There are some details to be aware of that may prove valuable to remember if your foreign keys ever turn sour. 

Laurenz Albe   [![\](https://copm.s3.amazonaws.com/7d2f3120.png)](https://www.red-gate.com/simple-talk/author/ryan-booz/?utm_source=postgresweekly&utm_medium=email&utm_campaign=postgres) 

[PostgreSQL Basics with Ryan Booz](https://www.red-gate.com/simple-talk/author/ryan-booz/?utm_source=postgresweekly&utm_medium=email&utm_campaign=postgres) — In this series of articles, Ryan Booz will help new PostgreSQL users get to grips with the basics starting with roles and privileges. 

Redgate sponsor   

📊 [The Full 2023 _State of PostgreSQL_ Survey Results](https://www.timescale.com/state-of-postgres/2023) — Just a week after they gave us a [sneak peak](https://www.timescale.com/blog/a-sneak-peek-into-the-state-of-postgresql-2023/) at the results of their latest survey, Timescale has dropped the full report _and_ raw (but anonymized) data from the 888 respondents. 

Timescale   

[Working with GPS Data in PostGIS](https://blog.rustprooflabs.com/2023/12/gps-gpx-postgis-processing) — A practical, step-by-step walkthrough for importing and refining GPS data in PostGIS, focusing on removing inaccuracies and enhancing quality for practical use, complete with code and examples. 

Ryan Lambert   

**IN BRIEF:** 

- The _Fly_ micro-VM-based hosting platform has introduced a managed Postgres offering called [Fly Postgres](https://supabase.com/blog/postgres-on-fly-by-supabase) which is based on Supabase's platform but hosted on Fly.
- Elizabeth Christensen has [a summary of the recent PostGIS Day 2023](https://www.crunchydata.com/blog/postgis-day-2023-summary).
- The [Tembo](https://tembo.io/) Postgres platform has just announced it's raised [$7m of funding.](https://twitter.com/tembo_io/status/1737127007874396419) Its pitch is to look at [Postgres as a data platform](https://tembo.io/blog/modern-data-stack-mess/) rather than 'just a database.'
- [Ubicloud](https://www.ubicloud.com/blog/open-and-portable-managed-postgresql-avail-hetzner) has a new managed Postgres service that specifically pitches itself as being available on popular German low-cost server provider, Hetzner.
- Supabase has had so many updates over the past week they had to write a [top 10 launches post](https://supabase.com/blog/launch-week-x-best-launches).   

[Increasing the Visibility of Perf and Events on Amazon RDS and Aurora](https://aws.amazon.com/blogs/database/increase-visibility-of-performance-and-events-on-amazon-rds-and-amazon-aurora/) 
Valter Rehn (AWS)   

[79 (and Counting) Postgres HOWTOs / Tutorials](https://gitlab.com/postgres-ai/postgresql-consulting/postgres-howtos) 
Nikolay Samokhvalov    

Code and Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/vocho151qkpv9avjq3yk.jpg)](https://github.com/VADOSWARE/pg_idkit)  

[pg_idkit: An Extension for Generating IDs](https://github.com/VADOSWARE/pg_idkit) — A Rust-built extension that can generate a myriad of different unique ID schemes from UUIDs to NanoIDs and ksuids. It’s mature and happy in production. The author says: _“I just put a bunch of elbow grease into the semi-automated release process and making sure it was easy to run the extension in a container, as an RPM, and with a regular install on glibc based systems.”_ 

VADOSWARE LLC   

[Reduce Costs and Simplify Your Postgres Estate with the Same Postgres On-Premises, Cloud or Hybrid](https://info.enterprisedb.com/GL-MS-20231201--Postgres-Anywhere.html?utm_medium=advertising&utm_source=postgres-weekly&utm_content=postgres-microsite&utm_campaign=GL-MS-20231201--Postgres-Anywhere) 

EDB Postgres sponsor   

[pg_sparse: Sparse Vector Similarity Search in Postgres](https://docs.paradedb.com/blog/introducing_sparse) — [ParadeDB](https://www.paradedb.com/) is an open source ElasticSearch alternative built on Postgres and they’ve created an extension (forked from `pgvector`) to store and work with _sparse_ vectors in Postgres to extend it further: _“`pg_sparse` is to sparse vectors what `pgvector` is to dense vectors.”_ 

ParadeDB   

[sqlauthz: A Declarative Permissions Management Approach](https://github.com/cfeenstra67/sqlauthz) — A tool that enables you to manage permissions in Postgres in a declarative way using the [_Polar_ language.](https://www.osohq.com/docs/reference/polar/foundations) Note that it’s considered _experimental_ 

Cam Feenstra   

🪐 [Q3C: Extension for Spatial Indexing on a Sphere](https://github.com/segasai/q3c) — My astronomical knowledge is weak, but apparently this extension is useful for working with the position of astronomical objects upon the celestial sphere. Maybe. 

Sergey Koposov   

[Key Postgres Extensions Every Developer Must Know When Migrating from Oracle](https://databaserookies.wordpress.com/2023/12/16/key-postgresql-extensions-every-developer-must-know-when-migrating-from-oracle/) — A handy roundup. 

Deepak Mahto   

- [FerretDB 1.17.0](https://github.com/FerretDB/FerretDB/releases/tag/v1.17.0) – MongoDB-a-like but atop Postgres (or SQLite).
- [PLV8 3.2.1](https://github.com/plv8/plv8) – Use the V8 JavaScript engine in Postgres.
- [Hydra 1.1](https://github.com/hydradatabase/hydra/releases/tag/v1.1.0) – Column-oriented Postgres.
- [pgAdmin 4 v8.1](https://www.postgresql.org/about/news/pgadmin-4-v81-released-2766/) – The popular management tool.
- P.S. We linked to the v1.0 release of the Supavisor connection pooler last week, but now Supabase has [a complete blog post about it.](https://supabase.com/blog/supavisor-postgres-connection-pooler)
- P.P.S. See you in two weeks!    

**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|*).
