ADR-0012: Brug PostgreSQL til ordreservicen
Status: Status
Dato: 12. marts 2027
Beslutningstagere: Teamleder for platformsteamet, teamleder for ordreteamet, sikkerhedsingeniør
Kontekst
Ordreservicen lagrer 20 millioner rækker og har brug for transaktioner på tværs af tabeller. Den nuværende lagring understøtter ikke transaktioner, og teamet har ingen erfaring med at drive den.
Det, der betyder mest
Datakonsistens
Teamets erfaring
Driftsomkostninger
Mulighed for at skalere 5x på to år
Overvejede muligheder
1. PostgreSQL, administreret. Stærke transaktioner, teamet kender det, højere omkostninger.
2. En dokumentdatabase. Hurtig at komme i gang, svagere joins og transaktioner.
3. Bliv ved den nuværende lagring. Ingen migrering, men problemet består.
Beslutning
Vi bruger administreret PostgreSQL til ordreservicen.
Hvorfor
Det opfylder behovet for konsistens, teamet kan understøtte det, og omkostningerne er acceptable inden for platformens budget.
Konsekvenser
Godt: enklere kode og sikrere ordrer. Skidt: en migrering på tre måneder og en årlig hostingomkostning. Vi skal planlægge flytningen af data og en tilbagerulning.
Hvornår den skal tages op igen
Hvis mængden overstiger 100 millioner rækker, eller hvis hostingomkostningerne fordobles.
Relateret
Erstatter ADR-0004. Relateret: ADR-0009.