Ihre PostgreSQL Flex Instanz planen
STACKIT bietet maximale Flexibilität in Verbindung mit PostgreSQL. Technische Einschränkungen erfordern jedoch bestimmte Beschränkungen. Um technische Schulden und damit Ausfallzeiten sowie unerwünschte zukünftige Migrationen zu vermeiden, ist es bewährte Praxis, Ihre PostgreSQL Flex Instanz im Voraus zu planen.
Planen Sie Ihre Anforderungen
Abschnitt betitelt „Planen Sie Ihre Anforderungen“Bevor Sie die Größe Ihrer PostgreSQL-Instanz auswählen, müssen Sie Ihre Datenmuster und Anforderungen analysieren:
Datenvolumenanalyse
Abschnitt betitelt „Datenvolumenanalyse“Beginnen Sie mit der Schätzung Ihres aktuellen und prognostizierten Datenvolumens. Berücksichtigen Sie die Dokumentgröße, die Anzahl der Sammlungen und die Wachstumsrate über die nächsten 12-24 Monate. Als Faustregel rechnen Sie mit einem Faktor von 2 bis 2,5 für das Datenwachstum in den nächsten zwei Jahren.
Abfragemuster
Abschnitt betitelt „Abfragemuster“Analysieren Sie, wie Ihre Anwendung mit der Datenbank interagiert. Häufige komplexe Abfragen, Aggregationen und indexlastige Operationen erfordern mehr CPU- und Speicherressourcen. Anwendungen mit einem hohen Lese-Schreib-Verhältnis können von anderen Dimensionierungsstrategien profitieren als schreibintensive Workloads. Berücksichtigen Sie auch, ob Ihre Anwendung eher lese- oder schreibintensiv ist.
Einschränkungen
Abschnitt betitelt „Einschränkungen“Die Einschränkungen der Flexibilität können Sie in der Architektur von PostgreSQL Flex nachlesen. Für eine schnelle Referenz können Sie diese Tabelle hinzuziehen:
| Parameter | Downgrade möglich | Upgrade möglich | Ausfallzeit |
|---|---|---|---|
| type | x | x | x |
| flavor | x | x | x |
| performance-class | x | ||
| storage-size | x | ||
| version | x | x |
Sie können Änderungen an den ACL- und Sicherungs-Einstellungen ohne Einschränkungen und ohne Ausfallzeiten vornehmen.
Bewährte Methoden
Abschnitt betitelt „Bewährte Methoden“Sie müssen die Einschränkungen berücksichtigen. Dieser Abschnitt hilft Ihnen, gute Annahmen und Entscheidungen für die Einrichtung einer Instanz zu treffen.
Instanztyp
Abschnitt betitelt „Instanztyp“Wenn Sie planen, eine Instanz für den Produktionseinsatz einzurichten, wählen Sie den Instanztyp 3 Replicas.
Zunächst müssen Sie unterscheiden, ob kurze Ausfallzeiten akzeptabel sind. Wenn ja, können Sie mit einem kleinen Flavor beginnen und diesen aktualisieren, wenn Sie konstant 80 % des CPU- oder RAM-Verbrauchs erreichen. Wenn Ausfallzeiten nicht akzeptabel sind, müssen Sie Ihren Bedarf schätzen.
Als Faustregel können Sie diesen Regelsatz nutzen:
- Leseintensiv: 2-4 CPUs ausreichend
- Schreibintensiv, viele Joins oder komplexe Funktionen: 8+ CPUs
- Minimum: 25 % der Datengröße
- Optimal: 50-75 % der aktiven Datengröße
- Faustregel: mindestens 8 GB RAM, besser 32 GB+ für die Produktion
Performance-Klasse
Abschnitt betitelt „Performance-Klasse“Da die Performance-Klasse nachträglich nicht geändert werden kann, müssen Sie Ihren Bedarf vor dem Erstellen einer Instanz planen. Vielleicht ist es sinnvoll, zunächst mit einer Entwickler-/Staging-Instanz zu beginnen, um zu ermitteln, welche Performance-Klasse für Ihre Anforderungen ausreichend ist.
Als Faustregel können Sie diesen Regelsatz nutzen:
- Leseintensiv: 1000-3000 IOPS
- Schreibintensiv: 3000-10000+ IOPS
- Gemischter Workload: 2000-5000 IOPS
Speichergröße
Abschnitt betitelt „Speichergröße“Da die Speichergröße jederzeit ohne Ausfallzeiten erweitert werden kann, ist es sicher, mit einer kleineren Größe zu beginnen. Als Faustregel beginnen Sie mit Ihrer Datengröße und multiplizieren diese erneut mit 3 für den Wachstumsfaktor.
Version
Abschnitt betitelt „Version“Beginnen Sie mit der höchsten Version, die Ihre Client-Anwendungen unterstützen.