David Wicker

wicker-01

Database

postgres-main

One Postgres for six products, each in its own database with its own role.

Engine
Postgres 18 with pgvector
Databases
six, one role each
Backups
every night, 30 kept, in Helsinki

Hayeren, Commonfold, Wicker Study, Garderobe, Papers and the Armenia atlas each get a database and a login that can only touch that database. The apps reach it over the server’s internal network; it has no public port at all.

It runs with pgvector, which Commonfold and Garderobe use to search by meaning. Wicker Study’s database is the largest at about 8.6 GB, much of it course files stored in place.

Papers reads a handful of Wicker Study’s tables through a separate read-only role, which is how the two products share course data without sharing a database.

Decisions

  • Neon’s bill was mostly computes kept awake by every-minute jobs. A dedicated server doesn’t charge for staying awake.
  • Wicker Study moved with logical replication so it stayed online; the rest moved by dump and restore.

What it replaced

  • Neon (nine projects in us-east-1)