ADR-0012: Wykorzystanie PostgreSQL w usłudze zamówień
Status: Status
Data: 12 marca 2027
Osoby decyzyjne: Lider zespołu platformy, lider zespołu zamówień, inżynier ds. bezpieczeństwa
Kontekst
Usługa zamówień przechowuje 20 milionów wierszy i wymaga transakcji obejmujących wiele tabel. Obecny magazyn danych nie obsługuje transakcji, a zespół nie ma doświadczenia w jego obsłudze.
Co ma największe znaczenie
Spójność danych
Doświadczenie zespołu
Koszt utrzymania
Możliwość skalowania 5x w ciągu dwóch lat
Rozważane opcje
1. Zarządzany PostgreSQL. Mocne transakcje, zespół go zna, wyższy koszt.
2. Baza dokumentowa. Szybki start, słabsze złączenia i transakcje.
3. Pozostać przy obecnym magazynie. Brak migracji, ale problem pozostaje.
Decyzja
Będziemy używać zarządzanego PostgreSQL w usłudze zamówień.
Dlaczego
Spełnia wymóg spójności, zespół potrafi go utrzymać, a koszt jest akceptowalny w budżecie platformy.
Konsekwencje
Dobre: prostszy kod i bezpieczniejsze zamówienia. Złe: trzymiesięczna migracja i roczny koszt hostingu. Musimy zaplanować przeniesienie danych i wycofanie zmian.
Kiedy wrócić do tematu
Jeśli wolumen przekroczy 100 milionów wierszy lub koszty hostingu wzrosną dwukrotnie.
Powiązane
Zastępuje ADR-0004. Powiązane: ADR-0009.