AlloyDB for PostgreSQL ist ein vollständig verwalteter, PostgreSQL-kompatibler Datenbankdienst. Er kombiniert ein von Google entwickeltes Datenbankmodul mit einer cloudbasierten Architektur mit mehreren Knoten, um eine Leistung, Zuverlässigkeit und Verfügbarkeit auf Unternehmensniveau für Ihre anspruchsvollsten Anwendungen zu bieten.
Anwendungsfälle für AlloyDB
AlloyDB bietet eine skalierbare Alternative zu selbstverwaltetem PostgreSQL. Mit AlloyDB können Sie weniger Zeit mit der Verwaltung der Infrastruktur verbringen und mehr Zeit für die Entwicklung von Anwendungen aufwenden.
AlloyDB wurde für anspruchsvolle Arbeitslasten entwickelt, darunter:
- Hybride transaktionsorientierte und analytische Verarbeitung (HTAP): Führen Sie komplexe Analyseabfragen für Ihre Live-Transaktionsdaten aus, ohne die Leistung oder Verfügbarkeit zu beeinträchtigen.
- KI-Anwendungen mit niedriger Latenz: Erstellen Sie generative KI-Anwendungen mit AlloyDB AI, das die Vektorsuche und den Aufruf von Modellen für maschinelles Lernen direkt in das Datenbankmodul integriert, sodass keine externen Daten mit hoher Latenz verschoben werden müssen.
- Unternehmensarbeitslasten für geschäftskritische Anwendungen: Stellen Sie Anwendungen bereit, die ein Höchstmaß an Leistung, Zuverlässigkeit und Verfügbarkeit erfordern. Sie werden von einer nicht aggregierten Architektur für Compute und Speicher unterstützt, die sich über mehrere Verfügbarkeitszonen erstreckt.
Funktionen von AlloyDB
AlloyDB bietet viele Dienste, die Sie nicht selbst erstellen und verwalten müssen. Sie können Ihr Augenmerk auf Ihre Daten richten und dabei AlloyDB die folgenden Bereiche übertragen:
- Sicherungen: Schützen Sie Ihre Daten mit On-Demand-Sicherungen und automatischen geplanten Sicherungen sowie einem kontinuierlichen Wiederherstellungssystem, das die Wiederherstellung zu einem bestimmten Zeitpunkt ermöglicht.
- Hochverfügbarkeit: Sorgen Sie für die Kontinuität des Dienstes durch redundante Knoten in verschiedenen Zonen mit automatischem Failover zwischen ihnen.
- Ressourcenverwaltung: Optimieren Sie Leistung und Effizienz mit Systemen, die Arbeitsspeicher und Speicher nach Bedarf automatisch zuweisen und freigeben.
- Abfrageoptimierung: Verbessern Sie die Datenbankleistung mit einem Indexberater, der Schemaverbesserungen vorschlägt, und einer spaltenbasierten Engine, die Analyseabfragen beschleunigt.
- Sicherheit und Verschlüsselung: Schützen Sie Daten im Ruhezustand mit der Standardverschlüsselung von Google oder kundenverwalteten Verschlüsselungsschlüsseln (Customer-Managed Encryption Keys, CMEK) und verwalten Sie den Zugriff mit der integrierten Google Cloud Identitäts- und Zugriffsverwaltung (Identity and Access Management, IAM).
Datenbankverwaltung
AlloyDB verwaltet die zugrunde liegende Infrastruktur Ihrer Datenbank, z. B. automatische Sicherungen, Sicherheitspatches und Ressourcenzuweisung. AlloyDB ist jedoch kein eigenständiges Tool zur Datenbankverwaltung. Sie benötigen weiterhin Verwaltungstools, um die Schemas, Daten und Nutzer in Ihren Datenbanken zu verwalten.
Mit den folgenden Tools können Sie eine Verbindung zu Ihren Datenbanken herstellen und sie verwalten:
- AlloyDB Studio: ein webbasiertes Tool, das direkt in die Google Cloud Console integriert ist und mit dem Sie Ihre Daten über eine interaktive SQL-Oberfläche untersuchen und verwalten können.
- PostgreSQL-Clients: Da AlloyDB vollständig mit PostgreSQL kompatibel ist, können Sie Standard-Verwaltungsclients und Befehlszeilentools wie psql und pgAdmin verwenden, um mit Ihrer Datenbank zu arbeiten.
AlloyDB-Preise
AlloyDB verwendet ein verbrauchsabhängiges Preismodell. Das bedeutet, dass Ihnen die von Ihnen verwendeten Ressourcen in Rechnung gestellt werden. Die Preise für AlloyDB variieren je nach Konfigurationseinstellungen und hängen von den folgenden Faktoren ab:
- Instanzressourcen: der Maschinentyp (Anzahl der vCPUs und Größe des Arbeitsspeichers), der für Ihre primären Instanzen und Lesepoolinstanzen ausgewählt wurde.
- Speicher: die Menge der Daten, die in der flexiblen Speicherebene Ihres Clusters gespeichert sind.
- Netzwerk: die Menge des ausgehenden Netzwerktraffics von Ihren Instanzen.
Weitere Informationen finden Sie unter AlloyDB for PostgreSQL – Preise.
Funktionsweise von AlloyDB
Eine Anwendung stellt über Standard-PostgreSQL-Protokolle eine Verbindung zu AlloyDB-Instanzen her.
Im Hintergrund verwendet AlloyDB eine nicht aggregierte Architektur und eine Hierarchie von Ressourcen, die auf maximale Verfügbarkeit und Leistung ausgelegt sind.
Architektonischer Unterschied zu Standard-PostgreSQL
Bei herkömmlichem PostgreSQL sind das Datenbankmodul, das Abfragen verarbeitet, und der Speicher auf demselben Server gekoppelt. AlloyDB verwendet eine nicht aggregierte Architektur, bei der die Compute- und Speicherebenen getrennt sind und unabhängig skaliert werden.
- Compute: virtuelle Maschinen oder Knoten, die Ihre Abfragen verarbeiten.
- Speicher: eine cloudnative, verteilte Speicher-Engine, die Ihre Daten in mehreren Verfügbarkeitszonen speichert und automatisch skaliert, wenn die Datenmenge zunimmt.
AlloyDB-Ressourcenhierarchie
AlloyDB organisiert seine Ressourcen in drei Ebenen: Cluster, Instanzen und Knoten.
Das folgende Diagramm veranschaulicht die AlloyDB-Ressourcenhierarchie mit einem Cluster, der mit einer primären Instanz und mehreren Lesepoolinstanzen mit Lastenausgleich skaliert wurde:
- Cluster: eine Ressource der obersten Ebene, die als logischer Container für Ihre Datenbanken, Logs und andere Metadaten in einer Region dient. Sie können mehrere Cluster im selben Projekt und in derselben Region erstellen.
- Instanz: Ein Cluster enthält eine oder mehrere Instanzen. Eine Instanz bietet den Verbindungspunkt für Ihre Anwendungen.
- Knoten: Eine Instanz wird von einem oder mehreren Knoten unterstützt. Ein Knoten ist eine virtuelle Maschine (VM), die für die Ausführung des Datenbankmoduls vorgesehen ist.
Was ist eine AlloyDB-Instanz?
Eine AlloyDB-Instanz ist der Zugriffspunkt für Ihre Datenbank. Jede Instanz hat eine private, statische IP-Adresse in Ihrer VPC. Wenn Ihre Anwendung eine Abfrage an diese IP-Adresse sendet, leitet die Instanz die Anfrage zur Verarbeitung an die zugrunde liegenden Knoten weiter.
AlloyDB verwendet zwei Arten von Instanzen:
Primäre Instanz: bietet Lese- und Schreibzugriff auf Ihre Daten. Jeder Cluster hat genau eine primäre Instanz. Eine primäre Instanz kann entweder hochverfügbar (High Availability, HA) oder einfach sein.
Hochverfügbar: enthält zwei Knoten, einen aktiven Knoten und einen Standby-Knoten, die sich in verschiedenen Zonen befinden, um ein automatisches Failover zu ermöglichen.
Einfache Instanz: enthält einen einzelnen Knoten für Nicht-Produktionsumgebungen, die keine Hochverfügbarkeit erfordern. Eine einfache Instanz hat nur einen Knoten ohne Standby-Knoten. Weitere Informationen finden Sie unter Kosten mit einfachen Instanzen reduzieren.
Lesepoolinstanz: bietet schreibgeschützten Zugriff, um Ihre Arbeitslasten zu skalieren. Sie können eine oder mehrere Lesepoolinstanzen hinzufügen, die jeweils bis zu 20 Knoten im gesamten Cluster enthalten können. AlloyDB führt automatisch einen Lastenausgleich für Anfragen auf die Knoten in einem Lesepool durch.
Wichtige Features
AlloyDB unterscheidet sich in vielerlei Hinsicht von einer Standard-PostgreSQL-Installation, abgesehen von den Vorteilen der vertikalen und horizontalen Skalierung, die die zuvor beschriebene Architektur mit mehreren Knoten bietet. In den folgenden Abschnitten werden die wichtigsten Features von AlloyDB genauer betrachtet.
Automatische und adaptive Datenbankfunktionen
Das vollständig PostgreSQL-kompatible Datenbankmodul, das jeden AlloyDB-Knoten unterstützt, bietet mehrere Funktionen, die die Struktur und Häufigkeit der Abfragen, die von Ihren Instanzen verarbeitet werden, kontinuierlich analysieren. Anhand dieser Informationen werden Schemaverbesserungen vorgeschlagen oder Optimierungen automatisch angewendet:
Ein Indexberater hilft Ihnen, Möglichkeiten zur Optimierung Ihres Datenbankschemas mit neuen Indexen zu finden, die auf Ihren Nutzungsmustern basieren.
Eine spaltenbasierte Engine kann die Leistung von Analyseabfragen beschleunigen, indem Daten im Arbeitsspeicher in einem spaltenbasierten Format gespeichert werden. So kann AlloyDB bei Bedarf erweiterte Verarbeitungstechniken verwenden, um eine große Menge an Tabellendaten effizient zu scannen.
Eine adaptive Variante der PostgreSQL-Funktion „Autovacuum“ für veraltete Daten passt die Parameter für die Bereinigung automatisch an die Form Ihrer Arbeitslast an.
Automatische Systeme zur Verwaltung von Arbeitsspeicher und Speicher nutzen die von Google entwickelte cloudbasierte Umgebung, in der AlloyDB ausgeführt wird. Sie weisen Arbeitsspeicher und Speicher nach Bedarf kontinuierlich zu und geben sie wieder frei, damit Ihr Cluster mit optimaler Leistung und Ressourceneffizienz ausgeführt wird.
Hochverfügbarkeit
Standardmäßig bietet ein AlloyDB-Cluster Hochverfügbarkeit (High Availability, HA) über die redundanten Knoten der primären Instanz, die sich in zwei verschiedenen Zonen befinden, mit automatischem Failover.
Cluster, die in Nicht-Produktionsumgebungen ausgeführt werden und keine Hochverfügbarkeit erfordern, können optional stattdessen einfache primäre Instanzen in einer Zone verwenden.
Durch das Hinzufügen von Lesepoolinstanzen mit mindestens zwei Knoten werden weitere Zugriffspunkte mit Lastenausgleich, mehreren Zonen und hoher Verfügbarkeit für Ihre Daten erstellt. Alle Lesepoolinstanzen werden unabhängig von der primären Instanz ausgeführt.
Weitere Informationen zu regionsspezifischen Aspekten finden Sie unter Geografie und Regionen.
Datensicherung und Wiederherstellung im Notfall
AlloyDB bietet ein kontinuierliches Sicherungs- und Wiederherstellungssystem, mit dem Sie einen neuen Cluster basierend auf einem beliebigen Zeitpunkt innerhalb eines anpassbaren Aufbewahrungszeitraums erstellen können. So können Sie sich schnell von Datenverlusten erholen.
Darüber hinaus kann AlloyDB vollständige Sicherungen der Daten Ihres Clusters erstellen und speichern, entweder auf Anfrage oder nach einem regelmäßigen Zeitplan. Sie können jederzeit eine Wiederherstellung aus einer Sicherung in einem neuen AlloyDB-Cluster durchführen, der alle Daten aus dem ursprünglichen Cluster zum Zeitpunkt der Erstellung der Sicherung enthält.
Weitere Informationen finden Sie unter Sicherungen.
Als weitere Methode zur Notfallwiederherstellung können Sie die regionsübergreifende Replikation erreichen, indem Sie sekundäre Cluster in separaten Google Cloud Regionen erstellen. AlloyDB streamt Daten asynchron von einem bestimmten primären Cluster zu jedem seiner sekundären Cluster. Sie können jederzeit einen sekundären Cluster zu einem primären Cluster hochstufen oder ein regionsübergreifendes Failover (Vorschau) durchführen, um Ihre Replikationstopologie bei einem Ausfall automatisch beizubehalten.
Weitere Informationen finden Sie unter Regionsübergreifende Replikation.
Sicherheit und Zugriffssteuerung
Sie können einen Cluster so konfigurieren, dass eine Verbindung mit dem sicheren AlloyDB Auth-Proxy erforderlich ist, der die Google Cloud Identitäts- und Zugriffsverwaltung (Identity and Access Management, IAM) für die Zugriffssteuerung verwendet. Weitere Informationen finden Sie unter Autorisierung.
AlloyDB verwendet das Standard-PostgreSQL-Nutzerrollensystem für die Authentifizierung und führt einige zusätzliche Rollen ein, die speziell für AlloyDB gelten. Weitere Informationen finden Sie unter AlloyDB -Nutzerrollen verwalten.
Verschlüsselung
AlloyDB schützt standardmäßig alle Daten im Ruhezustand mit den Verschlüsselungsmethoden von Google. Wenn Sie Ihre Daten stattdessen mit einem von Ihnen bereitgestellten Schlüssel verschlüsseln müssen, können Sie beim Erstellen eines Clusters einen kundenverwalteten Verschlüsselungsschlüssel (Customer-Managed Encryption Key, CMEK) angeben. AlloyDB verwendet dann den CMEK-Schlüssel, um alle Daten zu verschlüsseln, die in diesen Cluster geschrieben werden.
CMEK gilt auch für Sicherungen. Sie können einen CMEK-Schlüssel angeben, wenn Sie eine On-Demand-Sicherung erstellen, einen Sicherungszeitplan konfigurieren oder eine Wiederherstellung aus einer Sicherung durchführen.
Weitere Informationen finden Sie unter Informationen zu CMEK.
Wartung und Updates
Während der Lebensdauer eines AlloyDB-Clusters können zwei Arten von Updates auftreten:
- Systemupdates: Google führt regelmäßig Systemupdates durch, um sicherzustellen, dass die zugrunde liegende Hardware und Software zuverlässig, sicher und optimal funktionieren. Diese Updates umfassen Sicherheitspatches, Betriebssystem-Upgrades und kleinere Updates der PostgreSQL-Serverversion.
- Konfigurationsupdates: Dies sind Änderungen, die Sie manuell an Ihrem Cluster oder Ihren Instanzen vornehmen, um sich an wechselnde Arbeitslastanforderungen anzupassen. Beispiele sind das Ändern der Größe der vCPU- und Arbeitsspeicheranzahl einer Instanz oder das Ändern von Datenbank-Flags.
AlloyDB-Wartungsvorgänge sind so konzipiert, dass sie nicht störend sind. Dies wird erreicht, indem Ersatzserver vorbereitet und bei Bedarf schnell gegen die aktiven Server ausgetauscht werden. Während dieses Vorgangs kommt es bei primären Instanzen in der Regel zu einer Ausfallzeit von weniger als einer Sekunde, während Lesepools kontinuierlich verfügbar bleiben. Alle aktiven Verbindungen zur Datenbank werden kurz unterbrochen, aber Sie können Ihre Datenbank während des gesamten Vorgangs normal weiter verwenden.
Wenn Sie ein Update sofort anwenden möchten, auch wenn dies eine längere Ausfallzeit bedeutet, können Sie das FORCE_APPLY Datenbank-Flag verwenden.
AlloyDB AI
AlloyDB AI integriert eine Reihe von KI- und ML-Funktionen direkt in Ihre AlloyDB-Datenbank. Bisher waren für die Entwicklung von KI-Anwendungen komplexe Datenpipelines und ETL-Prozesse erforderlich, um Daten aus Betriebsdatenbanken auf spezielle KI/ML-Plattformen zu verschieben. Diese Methode führte zu Problemen wie erhöhter Latenz durch die Datenübertragung, höherem Betriebsaufwand durch die Verwaltung verschiedener Systeme und doppelter Speicherung. Durch die Integration von KI-Funktionen direkt in die Datenbank macht AlloyDB AI umfangreiche externe Datenverschiebungen überflüssig.
Um die Entwicklung von KI-Anwendungen zu erleichtern, bietet AlloyDB AI die folgenden Erweiterungen:
vector(eine für AlloyDB AI angepasste Version vonpgvector): speichert und indexiert Vektoreinbettungen für die semantische Suche. Unterstützt die Ausführung von Hybridabfragen und Ähnlichkeitssuchen. Informationen zu den ersten Schritten mit der Vektorsuche finden Sie unter Vektorsuche ausführen.alloydb_scann: bietet eine leistungsstarke ungefähre Suche nach dem nächsten Nachbarn, indem ein hocheffizienter Index für die Suche nach dem nächsten Nachbarn implementiert wird, der auf dem ScaNN-Algorithmus basiert. Weitere Informationen finden Sie unter ScaNN-Index erstellen.google_ml_integration: bietet Zugriff auf die KI-Funktionen, die den Aufruf von ML-Modellen aus AlloyDB für Aufgaben wie das Generieren von Einbettungen, semantisches Ranking, KI-basierte Filter und Joins sowie die Textgenerierung und ‑zusammenfassung ermöglichen. Die Verwaltung von Modellendpunkten ermöglicht die Registrierung und den Aufruf von KI-Modellen, einschließlich externer Modelle von OpenAI oder Anthropic. Weitere Informationen finden Sie unter Modellendpunkt registrieren und Semantische Abfragen mit KI-Operatoren auswerten.alloydb_ai_nl: Ermöglicht die Interaktion mit Ihrer Datenbank in natürlicher Sprache. So können Anwendungsentwickler präzise und sichere SQL-Abfragen als Antwort auf Fragen von Endnutzern in natürlicher Sprache generieren, sodass auch Nutzer ohne SQL-Kenntnisse auf Daten zugreifen können. Weitere Informationen finden Sie unter Übersicht über die Verarbeitung natürlicher Sprache.
Eine Liste der Anwendungsfälle für die AlloyDB AI-Funktionen finden Sie unter Generative KI-Anwendungen erstellen.
Unterstützung für Erweiterungen
AlloyDB unterstützt eine Reihe beliebter PostgreSQL-Erweiterungen. Die vollständige Liste finden Sie unter Unterstützte Datenbankerweiterungen.
Eine selbstgehostete Alternative: AlloyDB Omni
Als Alternative zur Ausführung von AlloyDB in Google Cloud Google Cloud bietet Google AlloyDB Omni an. Mit dieser optimierten, herunterladbaren Version von AlloyDB können Sie das leistungsstarke Datenbankmodul in Ihrer eigenen Linux-basierten Computerumgebung ausführen, unabhängig davon, wo sich diese befindet.
Weitere Informationen finden Sie unter Informationen zu AlloyDB Omni.
Nächste Schritte
- Auswählen, wie eine Verbindung zu AlloyDB hergestellt werden soll.
Kurzanleitung: Datenbank erstellen und eine Verbindung dazu herstellen