ADR-0012: Χρήση PostgreSQL για την υπηρεσία παραγγελιών
Κατάσταση: Κατάσταση
Ημερομηνία: 12 Μαρτίου 2027
Αποφασίζοντες: Επικεφαλής της ομάδας πλατφόρμας, επικεφαλής της ομάδας παραγγελιών, μηχανικός ασφαλείας
Πλαίσιο
Η υπηρεσία παραγγελιών αποθηκεύει 20 εκατομμύρια γραμμές και χρειάζεται συναλλαγές μεταξύ πινάκων. Η τρέχουσα βάση δεν υποστηρίζει συναλλαγές και η ομάδα δεν έχει εμπειρία στη διαχείρισή της.
Τι έχει τη μεγαλύτερη σημασία
Συνέπεια δεδομένων
Εμπειρία της ομάδας
Κόστος λειτουργίας
Δυνατότητα πενταπλασιασμού σε δύο χρόνια
Επιλογές που εξετάστηκαν
1. PostgreSQL, διαχειριζόμενη. Ισχυρές συναλλαγές, η ομάδα τη γνωρίζει, υψηλότερο κόστος.
2. Βάση εγγράφων. Γρήγορη εκκίνηση, ασθενέστερα joins και συναλλαγές.
3. Παραμονή στην τρέχουσα βάση. Καμία μετανάστευση, αλλά το πρόβλημα παραμένει.
Απόφαση
Θα χρησιμοποιήσουμε διαχειριζόμενη PostgreSQL για την υπηρεσία παραγγελιών.
Γιατί
Καλύπτει την ανάγκη συνέπειας, η ομάδα μπορεί να τη συντηρήσει και το κόστος είναι αποδεκτό στο πλαίσιο του προϋπολογισμού της πλατφόρμας.
Συνέπειες
Θετικά: απλούστερος κώδικας και ασφαλέστερες παραγγελίες. Αρνητικά: μετανάστευση τριών μηνών και ετήσιο κόστος φιλοξενίας. Πρέπει να σχεδιάσουμε τη μεταφορά δεδομένων και μια επιστροφή σε προηγούμενη κατάσταση.
Πότε να το επανεξετάσουμε
Αν ο όγκος ξεπεράσει τα 100 εκατομμύρια γραμμές ή αν το κόστος φιλοξενίας διπλασιαστεί.
Σχετικά
Αντικαθιστά το ADR-0004. Σχετικό: ADR-0009.