AlloyDB Omni ist ein herunterladbares Datenbanksoftwarepaket, mit dem Sie eine optimierte Version von AlloyDB for PostgreSQL in von Ihnen verwalteten Computerumgebungen bereitstellen können. AlloyDB Omni und der vollständig verwaltete AlloyDB-Dienst in Google Cloud verwenden dieselben Kernkomponenten. AlloyDB verwendet eine cloudnative, disaggregierte Speicherebene, während AlloyDB Omni auf dem von Ihnen ausgewählten Speicher bereitgestellt wird.
Dank der Portabilität von AlloyDB Omni können Sie es in vielen Umgebungen ausführen, darunter:
- Ihre privaten Rechenzentren
- Jede öffentliche Cloud
- Ihr Laptop
- Cloudbasierte VM-Instanzen
AlloyDB Omni bietet mehrere Erweiterungen zusätzlich zu Standard-PostgreSQL, die Skalierbarkeit, Verfügbarkeit, Zuverlässigkeit, Leistung, KI und natürliche Sprache unterstützen. Weitere Informationen finden Sie unter AlloyDB Omni-Ergänzungen für Standard-PostgreSQL.
Anwendungsfälle für AlloyDB Omni
AlloyDB Omni eignet sich gut für die folgenden Szenarien:
- Sie benötigen eine skalierbare, leistungsstarke Version von PostgreSQL, die Sie aufgrund gesetzlicher oder Anforderungen an die Datenhoheit lokal ausführen müssen.
- Sie benötigen eine Datenbank, die auch dann weiter ausgeführt wird, wenn die Verbindung zum Internet unterbrochen ist.
- Sie möchten von einer Legacy-Datenbank migrieren, ohne sich für einen vollständig verwalteten Clouddienst wie AlloyDB for PostgreSQL zu entscheiden.
Wichtige Features
- Ein 100% PostgreSQL-kompatibler Datenbankserver.
- Unterstützung für AlloyDB AI, mit dem Sie generative KI-Anwendungen auf Unternehmensniveau mit Ihren Betriebsdaten erstellen können.
- Integrationen mit dem Google Cloud KI-Ökosystem, einschließlich des Vertex AI Model Garden und Open-Source-Tools für generative KI.
Unterstützung für Autopilot-Funktionen von AlloyDB for PostgreSQL in Google Cloud , mit denen AlloyDB Omni selbst verwaltet und optimiert werden kann.
AlloyDB Omni unterstützt beispielsweise die automatische Speicherverwaltung und die adaptive automatische Bereinigung veralteter Daten.
Die spaltenbasierte Engine von AlloyDB Omni, die relevante Daten in einem speicherinternen Spaltenformat speichert, um die Leistung von Analyseabfragen, Berichten sowie Arbeitslasten von hybriden transaktionsorientierten und analytischen Verarbeitungen (HTAP) zu verbessern.
In Leistungstests sind transaktionsorientierte Arbeitslasten in AlloyDB Omni mehr als doppelt so schnell und Analyseabfragen bis zu 100-mal schneller als in Standard-PostgreSQL.
Bereitstellungsoptionen für AlloyDB Omni
In der Google Cloud Console können Sie Bereitstellungsoptionen erkunden, auf Lern ressourcen zugreifen und Lizenzen direkt auf der AlloyDB Omni Landingpage verwalten:
Die Landingpage der Console enthält zwei Haupttabs:
- Bereitstellungsoptionen: Bietet angepasste Pfade und Anleitungen für die Installation von AlloyDB Omni in verschiedenen Infrastrukturumgebungen sowie Zugriff auf Codelabs und KI-Demos.
- Abos: Zentralisiert die Lizenzverwaltung für Produktions bereitstellungen. Sie können Lizenzen basierend auf der Gesamtzahl der vCPUs berechnen und erwerben, vCPUs skalieren, Kosten ansehen und Zusicherungsrabatte verwalten.
Sie können AlloyDB Omni mit einer der folgenden Bereitstellungsoptionen installieren:

AlloyDB Omni mit Containern: ein eigenständiger Datenbankcontainer. Führen Sie AlloyDB Omni auf einem Linux-System mit SSD-Speicher und mindestens 8 GB Arbeitsspeicher pro CPU aus.
AlloyDB Omni mit dem Container-Orchestrator: Teil eines Containers in einer Kubernetes-Umgebung. Der AlloyDB Omni Kubernetes-Operator ist eine Erweiterung der Kubernetes API, mit der Sie AlloyDB Omni in den meisten CNCF-konformen Kubernetes-Umgebungen ausführen können.
Der AlloyDB Omni-Operator vereinfacht grundlegende Datenbankvorgänge. So können Sie einzelne oder hochverfügbare Bereitstellungen sowie Vorgänge des zweiten Tages wie Sicherung, Wiederherstellung, Failover und die Einrichtung der Notfallwiederherstellung über Regionen hinweg automatisieren.
AlloyDB Omni mit RPM: ein eigenständiges Paket das direkt in einer VM oder auf Bare-Metal-Servern ausgeführt wird. AlloyDB Omni mit RPM wird als eine Reihe integrierter Softwarekomponenten direkt auf dem Hostbetriebssystem ausgeführt. Es verwendet das Standard-Linux-Dateisystem für den Speicher, sodass Sie Ihre vorhandene Speicherinfrastruktur und ‑verwaltungspraktiken nutzen können.
AlloyDB Omni mit dem RPM-Orchestrator (Vorschau): eine Red Hat Package Manager-Bereitstellung (RPM) für VMs oder Bare-Metal-Server. Diese Option umfasst eine Orchestrierungsplattform, die die Bereitstellung und Verwaltung in Nicht-Kubernetes-Umgebungen automatisiert. Sie erweitert die cloudähnliche Flexibilität auf die von Ihnen gewählte Infrastruktur, ohne dass Containerisierungsebenen wie Docker erforderlich sind.
Ihre Anwendungen stellen eine Verbindung zu Ihrer AlloyDB Omni-Datenbank her und kommunizieren mit ihr, so wie Anwendungen eine Verbindung zu einem Standard-PostgreSQL-Datenbankserver herstellen und mit ihm kommunizieren. Die Nutzerzugriffssteuerung basiert ebenfalls auf PostgreSQL-Standards.
Sie können das Verhalten der AlloyDB Omni-Datenbank mit Datenbank-Flags konfigurieren, einschließlich Logging, Bereinigung und der spaltenbasierten Engine. Weitere Informationen finden Sie unter Verfügbare Download- und Installationsoptionen für AlloyDB Omni.
AlloyDB Omni als Container
Google stellt AlloyDB Omni als Container bereit, den Sie mit Container-Laufzeiten wie Docker und Podman ausführen können. Sie können AlloyDB Omni-Container auch in einer Kubernetes-Umgebung bereitstellen, wobei viele grundlegende Vorgänge automatisiert werden.
Im Betrieb bieten Container die folgenden Vorteile:
- Transparente Abhängigkeitsverwaltung: Alle erforderlichen Abhängigkeiten sind im Container gebündelt und werden von Google getestet, um sicherzustellen, dass sie vollständig mit AlloyDB Omni kompatibel sind.
- Portabilität: Sie können davon ausgehen, dass AlloyDB Omni in allen Umgebungen konsistent funktioniert.
- Sicherheitsisolation: Sie wählen aus, worauf der AlloyDB Omni-Container auf dem Hostcomputer Zugriff hat.
- Ressourcenverwaltung: Sie können die Menge der Rechenressourcen definieren, die der AlloyDB Omni-Container verwenden soll.
- Nahtloses Patchen und Upgrades: Wenn Sie einen Container patchen möchten, ersetzen Sie das vorhandene Image durch ein neues.
AlloyDB Omni in einer RHEL-Umgebung
AlloyDB Omni bietet zwei Bereitstellungsoptionen für eine RHEL-Umgebung, die von Ihren Automatisierungs- und Skalierungsanforderungen abhängen.
AlloyDB Omni mit RPM
Die RPM-Bereitstellungsoption ist eine eigenständige Red Hat Package Manager-Installation (RPM), die für Umgebungen entwickelt wurde, in denen Sie eine nicht containerisierte AlloyDB Omni-Datenbank benötigen. Diese Option unterstützt RHEL 9 und Rocky Linux 9.
- Direkte Betriebssystemintegration: Wird als eine Reihe integrierter Softwarekomponenten direkt auf dem Hostbetriebssystem ausgeführt.
- Vorhandener Speicher: Verwendet das Standard-Linux-Dateisystem (ext4 und xfs), das die vorhandene Speicherinfrastruktur und ‑verwaltungspraktiken unterstützt.
- Einfachheit: Gut geeignet für Setups mit einer einzelnen Instanz, bei denen eine tiefe Integration in das Hostbetriebssystem ohne zusätzliche Orchestrierungsebenen erforderlich ist.
Der RPM-Orchestrator
Die Bereitstellungsoption mit dem RPM-Orchestrator (Vorschau) verwendet dieselben RPM-Pakete wie AlloyDB Omni mit RPM, fügt aber eine Orchestrierungs plattform hinzu, um die Verwaltung in Nicht-Kubernetes Umgebungen zu automatisieren.
- Cloudähnliche Flexibilität: Erweitert die Automatisierung auf die lokale Infrastruktur und übernimmt das Bootstrapping, Failover und die Lebenszyklusverwaltung.
- Automatisierungsframeworks: Lässt sich in beliebte Tools wie Ansible einbinden, sodass Teams vorhandene Kenntnisse nutzen können. Sie können auch speziell entwickelte Befehlszeilentools verwenden.
- Unternehmensfunktionen: Speziell entwickelt, um Hochverfügbarkeit und Notfallwiederherstellung über einen zentralen Cluster-Manager zu unterstützen.
Datensicherung und Wiederherstellung im Notfall
AlloyDB Omni bietet ein System für kontinuierliche Sicherung und Wiederherstellung, mit dem Sie einen neuen Datenbankcluster basierend auf einem beliebigen Zeitpunkt innerhalb eines anpassbaren Aufbewahrungszeitraums erstellen können. So können Sie sich von Datenverlusten erholen.
Darüber hinaus kann AlloyDB Omni vollständige Sicherungen der Daten Ihres Datenbankclusters erstellen und speichern, entweder auf Anfrage oder nach einem regelmäßigen Zeitplan. Sie können jederzeit eine Wiederherstellung aus einer Sicherung in einem AlloyDB Omni-Datenbankcluster durchführen, das alle Daten aus dem ursprünglichen Datenbankcluster zum Zeitpunkt der Sicherung enthält.
Als weitere Methode zur Notfallwiederherstellung können Sie die Replikation über Rechenzentren hinweg erreichen, indem Sie sekundäre Datenbankcluster in separaten Rechenzentren erstellen. AlloyDB Omni streamt Daten asynchron von einem bestimmten primären Datenbankcluster zu jedem seiner sekundären Cluster. Bei Bedarf können Sie einen sekundären Datenbankcluster zu einem primären AlloyDB Omni-Datenbankcluster hochstufen.
AlloyDB Omni-Komponenten
AlloyDB Omni besteht aus zwei Gruppen von Architekturkomponenten: PostgreSQL-Komponenten mit AlloyDB Omni-Erweiterungen und AlloyDB Omni-spezifischen Komponenten.
Das folgende Diagramm zeigt beide Gruppen von Komponenten, einschließlich der Infrastrukturebene, auf der sich die Komponenten befinden, und Funktionen für jede Komponente.

Datenspeicher
AlloyDB Omni speichert Daten auf Seiten mit fester Größe, die im zugrunde liegenden Dateisystem gespeichert sind. Wenn eine Abfrage auf Daten zugreifen muss, prüft AlloyDB Omni zuerst den Zwischenspeicherpool. Wenn die Seiten mit den erforderlichen Daten nicht im Zwischenspeicherpool gefunden werden, liest AlloyDB Omni die erforderlichen Seiten aus dem Dateisystem.
Der Zugriff auf Daten aus dem Zwischenspeicherpool ist deutlich schneller als das Lesen aus dem Dateisystem. Die Maximierung der Größe des Zwischenspeicherpools für die Daten, auf die eine Anwendung zugreift, ist ein wichtiger Faktor. Optional können Sie eine ultraschnelle Cache-Ebene hinzufügen, um die Abfrageleistung weiter zu verbessern.
Ressourcenverwaltung
AlloyDB Omni verwendet die automatische dynamische Speicherverwaltung, damit der Zwischenspeicherpool je nach Speicherbedarf des Systems innerhalb der konfigurierten Grenzen dynamisch wachsen und schrumpfen kann. Daher ist keine Optimierung der Größe des Zwischenspeicherpools erforderlich. Wenn Sie Leistungsprobleme diagnostizieren, sollten Sie zuerst Messwerte wie die Trefferrate des Zwischenspeicherpools und die Leserate berücksichtigen, um festzustellen, ob Ihre Anwendung vom Zwischenspeicherpool profitiert. Wenn nicht, bedeutet das, dass das Dataset der Anwendung nicht in den Zwischenspeicherpool passt. Sie sollten dann in Erwägung ziehen, die Größe auf eine größere Maschine mit mehr Speicher zu ändern.
Für das Abrufen, Filtern, Aggregieren, Sortieren und Projizieren von Daten sind CPU-Ressourcen auf dem Datenbankserver erforderlich. Um die für diesen Vorgang erforderliche Menge an CPU-Ressourcen zu reduzieren, minimieren Sie die Menge der zu bearbeitenden Daten. Überwachen Sie die CPU-Auslastung auf dem Datenbankserver, um sicherzustellen, dass die Auslastung im Normalzustand bei etwa 70 % liegt. Diese Menge lässt ausreichend Spielraum auf dem Server für Spitzen bei der Auslastung oder Änderungen bei den Zugriffsmustern im Laufe der Zeit. Eine Auslastung von fast 100% führt zu Mehraufwand aufgrund der Prozessplanung und des Kontextwechsels und kann Engpässe in anderen Teilen des Systems verursachen. Eine hohe CPU-Auslastung ist ein weiterer wichtiger Messwert, der bei Entscheidungen zu den Maschinenspezifikationen verwendet werden sollte.
Die Eingabe-/Ausgabevorgänge pro Sekunde (IOPS) sind ein wichtiger Faktor für die Leistung von Datenbankanwendungen. Sie messen, wie viele Eingabe- oder Ausgabevorgänge pro Sekunde das zugrunde liegende Speichergerät an die Datenbank liefern kann. Um die IOPS-Grenzwerte des Datenbankspeichers nicht zu überschreiten, minimieren Sie Lese- und Schreibvorgänge im Speicher. Maximieren Sie die Datenmenge, die in den Zwischenspeicherpool oder in die Cache-Ebene passt.
Spaltenbasierte Engine
Die integrierte spaltenbasierte Engine beschleunigt die Verarbeitung von Analyseabfragen, die in der Regel vollständige Tabellenscans, komplexe Joins und Aggregate umfassen.
Speicherinterner Spaltenspeicher: Enthält Tabellendaten und Daten in der materialisierten Ansicht für ausgewählte Spalten in einem spaltenorientierten Format. Standardmäßig belegt der Spaltenspeicher 30% des verfügbaren Arbeitsspeichers. Wenn Sie die Menge des vom Spaltenspeicher verwendbaren Arbeitsspeichers ändern möchten, legen Sie den Parameter
google_columnar_engine.memory_size_in_mbin derpostgresql.conffest, die von Ihrer AlloyDB Omni-Instanz verwendet wird.Spaltenbasierter Abfrageplaner und spaltenbasierte Ausführungs-Engine: Unterstützt die Verwendung des Spaltenspeichers in Abfragen.
Weitere Informationen finden Sie unter Spaltenbasierte Engine von AlloyDB for PostgreSQL.
Automatische Speicherverwaltung
Die automatische Speicherverwaltung überwacht und optimiert kontinuierlich die Speichernutzung in einer gesamten AlloyDB Omni-Instanz. Wenn Sie Ihre Arbeitslasten ausführen, passt dieses Modul die Größe des gemeinsamen Zwischenspeichers basierend auf dem Speicherbedarf an.
Standardmäßig legt die automatische Speicherverwaltung die Obergrenze auf 80 % des Systemspeichers fest und weist 10% des Systemspeichers für den gemeinsamen Zwischenspeicher zu.
Wenn Sie die Obergrenze für die Größe des gemeinsamen Zwischenspeichers ändern möchten, legen Sie den Parameter shared_buffers in der postgresql.conf fest, die von Ihrer AlloyDB Omni-Instanz verwendet wird.
Adaptives Autovacuum
Das adaptive Autovacuum analysiert Vorgänge basierend auf der Datenbankarbeitslast und passt die Häufigkeit der Bereinigung automatisch an. Diese automatische Anpassung trägt dazu bei, dass die Datenbank auch bei Änderungen der Arbeitslast eine optimale Leistung beibehält, ohne dass der Bereinigungsprozess stört.
Das adaptive Autovacuum verwendet die folgenden Faktoren, um die Häufigkeit und Intensität der Bereinigungsvorgänge zu bestimmen:
- Größe der Datenbank
- Anzahl der fehlerhaften Tupel in der Datenbank
- Alter der Daten in der Datenbank
- Anzahl der Transaktionen pro Sekunde im Vergleich zur geschätzten Bereinigungsgeschwindigkeit
- Ressourcennutzung
KI/ML-Worker
In AlloyDB Omni bietet der KI/ML-Hintergrundworker die Funktionen, die zum Aufrufen von Vertex AI-Modellen direkt aus der Datenbank erforderlich sind. Der KI/ML-Worker wird als Prozess mit dem Namen omni ml worker ausgeführt.
Orchestrator-Steuerungsebene
Die Bereitstellungsoption mit dem RPM-Orchestrator verwendet einen zentralen Cluster-Manager, um clusterweite Vorgänge zu automatisieren, einschließlich Bootstrapping und Failover.
Verwaltungsoberflächen
Die Bereitstellungsoption mit dem RPM-Orchestrator bietet sowohl ein Befehlszeilenprogramm (alloydbctl) als auch Ansible-Rollen für die Verwaltung eines oder mehrerer Cluster im großen Maßstab.
Leistungsoptimierung
Die Bereitstellungsoption mit dem RPM-Orchestrator umfasst integrierte Unterstützung für PgBouncer für das Verbindungspooling und HAProxy für den Lastenausgleich zwischen Lese-/Schreib- und Nur-Lese-Endpunkten.
Nächste Schritte
Erste Schritte mit den folgenden Bereitstellungsoptionen für AlloyDB Omni: