Why PostgreSQL

PostgreSQL is Enough; and Just Use Postgres for Everything.

Just use Postgres

Quickstart

Pedram Navid | A Fast, Sample Postgres Database with Docker

Learning PostgreSQL

Internals

Articles

Appliances

The Elephant Shed PostgreSQL Appliance bundles and integrates proven components, required for easy management of a PostgreSQL server. Proven tools for all relevant aspects are already preinstalled and preconfigured. The majority of these tools can be controlled via a comfortable web interface. Even experienced PostgreSQL administrators will hardly find an area not covered by Elephant Shed PostgreSQL appliance.

Migrating and upgrading PostgreSQL

  • How we migrated our PostgreSQL database with 11 seconds downtime - Government Digital Service; 2024
  • xataio/pgrollis an open source command-line tool that offers safe and reversible schema migrations for PostgreSQL by serving multiple schema versions simultaneously. It takes care of the complex migration operations to ensure that client applications continue working while the database schema is being updated. This includes ensuring changes are applied without locking the database, and that both old and new schema versions work simultaneously (even when breaking changes are being made!). This removes risks related to schema migrations, and greatly simplifies client application rollout, also allowing for instant rollbacks.. Read introductory blogpost on xata.io

Tips and tricks

This is one of the things PG does a good job. Keeping notes.

Using PostgreSQL as a queue / Kafka

So that’s what we built: a new queue backed by a single, and surprisingly simple, Postgres table. Our publishers write to it. Our consumers (workers) read from it. We maintain things like queue ordering by adding an ORDER BY clause in the query that consumers use to read from it (groundbreaking, we know). And we guarantee that jobs won’t be picked up by more than one worker through simple read/write row-level locks. The new system is actually kind of absurdly simple when you look at it. And that’s a good thing. It’s also behaved flawlessly so far.

It comes with several, significant upsides for our team. For one, the application state is no longer spread out over two systems (RabbitMQ storage and Postgres). It’s now centralized in our application database. This makes disaster recovery that much easier, and increases the resiliency of the overall system by removing moving pieces.

To make all of this run smoothly, we enqueue and dequeue thousands of jobs every day.

(the load isn’t all that big)


Sequin “A Postgres alternative to Kafka. Get a feature-rich message stream with none of the operational overhead”. See Build your own SQS or Kafka with Postgres blog post.

PostgreSQL and ML

  • Home – PostgresMLAn open source Postgres based platform for your interactive AI powered applications. Instantly scale your workloads with dedicated replicas or our serverless GPU accelerated cloud.

PostgreSQL on MacOS

Installing PostgreSQL on a Mac with Homebrew - Daily Dev Tips — includes tips on how to create a non-postgres user.

Self Hosting

Go ahead, self-host Postgres | Pierce Freeman

PostgreSQL on the cloud

  1. Supabase — “an open source Firebase alternative. Postgres database, Authentication, instant APIs, Edge Functions, Realtime subscriptions, Storage, and Vector embeddings”.
    1. postgres.new: In-browser Postgres with an AI interface by Supabase; HN
  2. Xata — “serverless data platform for PostgreSQL.”
  3. Tembo — “Tembo is the Postgres developer platform for building every data service.”

PostgreSQL-ish databases

Apart from the ones above (“on the cloud”),