Übersicht über AlloyDB

AlloyDB for PostgreSQL ist ein vollständig verwalteter, PostgreSQL-kompatibler Datenbankdienst. Die Kombination aus Google-Datenbank-Engine und cloudbasierter Multi-Node-Architektur bietet Leistung, Zuverlässigkeit und Verfügbarkeit auf Unternehmensniveau für Ihre anspruchsvollsten Anwendungen.

Anwendungsfälle für AlloyDB

AlloyDB bietet eine skalierbare Alternative zu selbstverwaltetem PostgreSQL. Verwenden Sie AlloyDB, wenn Sie weniger Zeit für die Infrastrukturverwaltung und mehr Zeit für die Entwicklung von Anwendungen aufwenden möchten.

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 geringer Latenz: Mit AlloyDB AI können Sie generative KI-Anwendungen erstellen. Vektorsuche und Aufruf von Modellen für maschinelles Lernen sind direkt in die Datenbank-Engine integriert. So ist kein externer Datentransfer mit hoher Latenz erforderlich.
  • Geschäftskritische Arbeitslasten auf Unternehmensniveau: Stellen Sie Anwendungen bereit, die höchste Leistung, Zuverlässigkeit und Verfügbarkeit erfordern. Diese werden durch eine disaggregierte Compute- und Speicherarchitektur unterstützt, die sich über mehrere Verfügbarkeitszonen erstreckt.

Leistungsmerkmale von AlloyDB

AlloyDB bietet viele Dienste standardmäßig, die Sie deshalb nicht selbst erstellen und verwalten müssen. Sie können sich auf Ihre Daten konzentrieren und AlloyDB die folgenden Vorgänge überlassen:

  • Sicherungen: Schützen Sie Ihre Daten mit Sicherungen nach Bedarf und automatischen geplanten Sicherungen sowie einem kontinuierlichen Wiederherstellungssystem, das die Wiederherstellung zu einem bestimmten Zeitpunkt ermöglicht.
  • Hochverfügbarkeit: Sorgen Sie für 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 Speicherplatz nach Bedarf automatisch zuweisen und freigeben.
  • Abfrageoptimierung: Verbessern Sie die Datenbankleistung mit einem Indexberater, der Schemaverbesserungen vorschlägt, und einer spaltenorientierten Engine, die analytische Abfragen beschleunigt.
  • Sicherheit und Verschlüsselung: Schützen Sie inaktive Daten mit der Standardverschlüsselung von Google oder mit 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 Backups, 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.

Sie können die folgenden Tools verwenden, um eine Verbindung zu Ihren Datenbanken herzustellen und sie zu verwalten:

  • AlloyDB Studio: Ein webbasiertes Tool, das direkt in die Google Google Cloud Console integriert ist und mit dem Sie Ihre Daten über eine interaktive SQL-Schnittstelle untersuchen und verwalten können.
  • PostgreSQL-Clients: Da AlloyDB vollständig mit PostgreSQL kompatibel ist, können Sie Standard-Administratorenclients und Befehlszeilentools wie psql und pgAdmin verwenden, um mit Ihrer Datenbank zu arbeiten.

AlloyDB-Preise

Für AlloyDB gilt ein nutzungsbasiertes Preismodell. Das bedeutet, dass Gebühren auf Grundlage der von Ihnen verbrauchten Ressourcen anfallen. Die Preise für AlloyDB variieren in Abhängigkeit von Ihren Konfigurationseinstellungen und hängen von 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: Menge des ausgehenden Netzwerk-Traffics 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 disaggregierte Architektur und eine Hierarchie von Ressourcen, die auf maximale Verfügbarkeit und Leistung ausgelegt sind.

Architektonischer Unterschied zu Standard-PostgreSQL

Bei herkömmlichem PostgreSQL ist das Datenbankmodul, das Abfragen verarbeitet, mit dem Speicher auf demselben Server gekoppelt. AlloyDB verwendet eine nicht aggregierte Architektur, bei der Rechen- und Speicherebenen getrennt sind und unabhängig skaliert werden.

  • Compute: Virtuelle Maschinen oder Knoten, die Ihre Anfragen verarbeiten.
  • Speicher: Eine cloudnative, verteilte Speicher-Engine, die Ihre Daten in mehreren Verfügbarkeitszonen speichert und automatisch skaliert, wenn Ihre Daten wachsen.

AlloyDB-Ressourcenhierarchie

In AlloyDB werden Ressourcen in drei Ebenen organisiert: Cluster, Instanzen und Knoten.

Das folgende Diagramm zeigt die AlloyDB-Ressourcenhierarchie mit einem Cluster, der mit einer primären Instanz und mehreren Load-Balancing-Lesepoolinstanzen skaliert wird:

Diagramm eines Clusters mit einer primären Instanz und Lesepoolinstanzen

  • 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 ist der 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 der Datenbank-Engine 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 Anfrage 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 (HA) oder einfach sein.

    • Hochverfügbar: Enthält zwei Knoten, einen aktiven Knoten und einen Standby-Knoten, die sich in verschiedenen Zonen für automatisches Failover befinden.

    • Einfache Instanz: Enthält einen einzelnen Knoten für Nicht-Produktionsumgebungen, die keine Hochverfügbarkeit erfordern. Eine Basic-Instanz hat nur einen Knoten und keinen Standby-Knoten. Weitere Informationen finden Sie unter Kosten mit einfachen Instanzen reduzieren.

  • Lesepoolinstanz: Bietet schreibgeschützten Zugriff zum Skalieren Ihrer Arbeitslasten. Sie können eine oder mehrere Lesepoolinstanzen hinzufügen, die jeweils bis zu 20 Knoten im Cluster enthalten können. AlloyDB führt automatisch einen Lastausgleich für Anfragen auf die Knoten in einem Lesepool durch.

Wichtige Features

AlloyDB unterscheidet sich in vielerlei Hinsicht von einer Standard-PostgreSQL-Installation, die über die Vorteile der vertikalen und horizontalen Skalierung hinausgehen, die in der oben beschriebenen Multi-Node-Architektur enthalten sind. In den folgenden Abschnitten werden die wichtigsten Funktionen von AlloyDB genauer beschrieben.

Automatische und adaptive Datenbankfunktionen

Die vollständig PostgreSQL-kompatible Datenbank-Engine, die jeden AlloyDB-Knoten unterstützt, bietet mehrere Funktionen, mit denen die Struktur und Häufigkeit der von Ihren Instanzen verarbeiteten Abfragen kontinuierlich analysiert werden. Anhand dieser Informationen werden Schemaverbesserungen vorgeschlagen oder Optimierungen automatisch angewendet:

  • Ein Index Advisor hilft Ihnen, Möglichkeiten zur Optimierung Ihres Datenbankschemas mithilfe neuer Indexe zu finden, die auf Ihren Nutzungsmustern basieren.

  • Eine spaltenbasierte Engine kann die Leistung analytischer Abfragen 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 „Autovakuum“ für veraltete Daten passt die vakuumbezogenen Parameter automatisch an die Form Ihrer Arbeitslast an.

  • Automatische Systeme zur Speicher- und Arbeitsspeicherverwaltung nutzen die von Google entwickelte cloudbasierte Umgebung, in der AlloyDB ausgeführt wird. Sie weisen kontinuierlich Arbeitsspeicher und Speicherplatz nach Bedarf 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, zonale Primärinstanzen verwenden.

Wenn Sie Lesepoolinstanzen mit mindestens zwei Knoten hinzufügen, werden weitere lastverteilte, multizonale und hochverfügbare Zugriffspunkte 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 System für kontinuierliche Sicherung und Wiederherstellung, 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.

Außerdem 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 Sicherung in einem neuen AlloyDB-Cluster wiederherstellen, 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 regionenübergreifende Replikation erreichen, indem Sie sekundäre Cluster in separaten Google Cloud-Regionen erstellen. AlloyDB streamt Daten asynchron von einem primären Cluster zu jedem seiner sekundären Cluster. Bei Bedarf können Sie einen sekundären Cluster in einen AlloyDB-Cluster mit allen Funktionen und primären Instanzen und Lesepoolinstanzen hochstufen.

Weitere Informationen finden Sie unter Regionenübergreifende Replikation.

Sicherheits- und Zugriffsverwaltung

Sie können einen Cluster so konfigurieren, dass eine Verbindung mit dem sicheren AlloyDB-Auth-Proxy erforderlich ist. Dieser verwendet Google Cloud Identity Access and Management (IAM) für die Zugriffssteuerung. Weitere Informationen finden Sie unter Autorisierung.

Für die Authentifizierung verwendet AlloyDB das Standard-PostgreSQL-Nutzerrollensystem. Es gibt einige zusätzliche Rollen, die speziell für AlloyDB eingeführt wurden. Weitere Informationen finden Sie unter AlloyDB-Nutzerrollen verwalten.

Verschlüsselung

AlloyDB schützt standardmäßig alle inaktiven Daten 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 vom Kunden verwalteten Verschlüsselungsschlüssel (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 Sicherung wiederherstellen.

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 dafür zu sorgen, dass die zugrunde liegende Hardware und Software zuverlässig, sicher und leistungsstark sind. Diese Updates umfassen Sicherheitspatches, Betriebssystem-Upgrades und kleinere Updates der PostgreSQL-Serverversion.
  • Konfigurationsupdates: Das sind Änderungen, die Sie manuell an Ihrem Cluster oder Ihren Instanzen vornehmen, um sich ändernden Anforderungen an die Arbeitslast gerecht zu werden. Beispiele hierfür sind das Ändern der Anzahl von vCPUs und des Arbeitsspeichers einer Instanz oder das Ändern von Datenbankflags.

AlloyDB-Wartungsvorgänge sind so konzipiert, dass sie nicht zu Unterbrechungen führen. Dazu werden Ersatzserver vorbereitet und bei Bedarf schnell gegen die aktiven Server ausgetauscht. 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 kurzzeitig getrennt. Sie können Ihre Datenbank jedoch 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 Datenbankflag FORCE_APPLY verwenden.

AlloyDB AI

AlloyDB AI integriert eine Reihe von KI- und ML-Funktionen direkt in Ihre AlloyDB-Datenbank. In der Vergangenheit waren für die Entwicklung von KI-Anwendungen komplexe Datenpipelines und ETL-Prozesse erforderlich, um Daten aus Betriebsdatenbanken auf spezielle KI-/ML-Plattformen zu übertragen. 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 Datenübertragungen überflüssig.

Um die Entwicklung von KI-Anwendungen zu erleichtern, bietet AlloyDB AI die folgenden Erweiterungen:

  • vector (eine für AlloyDB AI angepasste Version von pgvector): Speichert und indexiert Vektoreinbettungen für die semantische Suche. Unterstützt das Ausführen von hybriden Abfragen und Ähnlichkeitssuchen. Weitere Informationen zum Einstieg in die Vektorsuche
  • alloydb_scann: Bietet eine leistungsstarke Suche nach ungefähren nächsten Nachbarn durch die Implementierung eines hocheffizienten Nearest-Neighbor-Index, der auf dem ScaNN-Algorithmus basiert. Weitere Informationen finden Sie unter ScaNN-Index erstellen.
  • google_ml_integration: Bietet Zugriff auf die KI-Funktionen, mit denen ML-Modelle aus AlloyDB für Aufgaben wie das Generieren von Einbettungen, semantisches Ranking, KI-basierte Filter und Joins sowie Textgenerierung und ‑zusammenfassung aufgerufen werden können. Mit der Modellendpunktverwaltung können KI-Modelle registriert und aufgerufen werden, einschließlich externer Modelle von OpenAI oder Anthropic. Weitere Informationen finden Sie unter Modellendpunkt registrieren und Semantische Anfragen mit KI-Operatoren auswerten.
  • alloydb_ai_nl: Ermöglicht die Interaktion mit Ihrer Datenbank in natürlicher Sprache. Damit können Anwendungsentwickler präzise und sichere SQL-Abfragen als Antwort auf Fragen in natürlicher Sprache von Endnutzern generieren und Nutzern, die kein SQL verwenden, den Zugriff auf Daten ermöglichen. Weitere Informationen finden Sie unter Übersicht über die Verarbeitung natürlicher Sprache.

Eine Liste der Anwendungsfälle für AlloyDB AI-Funktionen finden Sie unter Generative KI-Anwendungen erstellen.

Unterstützung von Erweiterungen

AlloyDB unterstützt eine Reihe beliebter PostgreSQL-Erweiterungen. Eine vollständige Liste finden Sie unter Unterstützte Datenbankerweiterungen.

Selbst gehostete Alternative: AlloyDB Omni

Als Alternative zur Ausführung von AlloyDB in Google Cloudbietet Google AlloyDB Omni an. Mit dieser optimierten, herunterladbaren Version von AlloyDB können Sie das leistungsstarke Datenbankmodul in Ihrer eigenen Linux-basierten Rechenumgebung ausführen, wo immer diese sich befindet.

Weitere Informationen finden Sie unter AlloyDB Omni.

Nächste Schritte