Skip to content
../services/dev

DATABASE

PostgreSQL

The database that does not lose your data.

PostgreSQL is an open-source relational database, used for over thirty years by banks, governments and most large web platforms. It stores your data in a structured way and guarantees that an operation either completes entirely or not at all — a payment cannot be half-recorded, even if the server dies at the worst moment.

What it guarantees you

  • No partial writes: an order is stored whole or rolled back cleanly
  • Fast full-text search without adding a second tool to maintain
  • JSON where the shape must stay flexible, relational where it must stay strict
  • No licence cost, and no risk of being locked to a vendor

What we put in it

Transactional data

Orders, payments, bookings, stock: everything that must be exact, not approximately exact.

Content search

Catalogues, document stores, internal engines: built-in full-text search is enough in the large majority of cases.

Semi-structured data

Forms with variable fields, preferences, metadata: the JSON type avoids multiplying tables for no reason.

What it does not do

PostgreSQL is not a cache: for extremely frequent reads of the same value you need a dedicated layer in front. It is also not built for analytics over billions of rows, where a data warehouse fits better. And it must be tuned: a badly indexed database will be slow no matter how good the engine is.

Where we stand

PostgreSQL is our default, and we rarely move off it. Most projects that think they need an exotic database actually need correct indexes.

How we validate technical adoption

A technology is not selected for popularity. We build a small proof around the primary risk, then verify that the team can operate it. The decision accounts for the existing product, available skills, security, hosting, migration and maintenance cost over several years. We also examine the maturity of the ecosystem, upgrade paths, observability, licensing and the availability of reliable documentation. Before committing, the prototype is tested against a representative workflow and a realistic data volume. The resulting recommendation records both the reasons to adopt the component and the conditions under which it should be reconsidered. It also names the operational owner and the evidence needed for the first post-launch review.

Compatibility

The component must fit existing data, tools, languages and deployment constraints.

Maintainability

Another person must be able to understand, test and evolve the solution without relying on one author.

Measurement

Performance, errors, delivery time and operating cost are compared with a known baseline.

Exit

The strategy explains how to migrate data, replace the dependency or roll back when the context changes.

A slow or fragile database?

We review your schema, your indexes and your slow queries, then hand back a costed remediation plan.

Request a database audit

Other pieces of the stack