Přehled schémat

Databáze je rozdělená do šesti PostgreSQL schémat:

  • catalog
  • pricing
  • inventory
  • content
  • search
  • system

Proč je to rozdělené po schema

Tato hranice není jen technická. Vyjadřuje doménu a odpovědnost:

  • catalog = kdo je produkt,
  • pricing = za kolik se prodává,
  • inventory = zda a kde je fyzicky dostupný,
  • content = jak je zasazen do webu a prezentace,
  • search = jak se připravuje pro vyhledávání,
  • system = provozní a auditní podpora.

Přehled migrací

  • 000 vytváří schema
  • 001-003 budují catalog
  • 004 buduje pricing
  • 005 buduje inventory
  • 006-007 budují content
  • 008 buduje search
  • 009-011 budují system

Důležité technické vzory

  • enumy pro stabilní stavy,
  • UUID pro veřejnou identitu hlavních entit,
  • identity bigint pro technické a překladové tabulky,
  • partial unique indexy tam, kde by inline constraint nestačil,
  • procedury a triggery pro citlivou logiku.