Spanner Omni ist eine herunterladbare Version von Spanner, mit der Sie die verteilte Datenbanktechnologie von Google in lokalen Rechenzentren, öffentlichen Clouds und auf Ihrem Laptop bereitstellen können. Es bietet die wichtigsten Spanner-Funktionen, darunter horizontale Skalierbarkeit, Hochverfügbarkeit, ACID-Konformität und starke externe Konsistenz. Dazu werden die auf Paxos basierende Replikation, die automatische Fragmentierung und die softwaredefinierte TrueTime API verwendet.
Spanner Omni integriert relationale, Graph-, Vektor- und Schlüssel/Wert-Datenmodelle mit Volltext- und Betriebsanalysen. Wie Spanner unterstützt Spanner Omni GoogleSQL, PostgreSQL und Spanner Graph Language. Sie können umgebungsübergreifende Ausfallsicherheit, Anwendungsportabilität und einen konsistenten Entwicklungs-Stack in verschiedenen Umgebungen erreichen. Spanner Omni unterstützt Bereitstellungsoptionen wie:
- Virtuelle Maschinen
- Linux-Container
- Kubernetes-Cluster
Einschränkungen der Spanner Omni-Vorschauversion
Die Vorabversion von Spanner Omni umfasst die Hauptfunktionen von Spanner mit den folgenden bemerkenswerten Ausnahmen:
Sicherheitsfunktionen für Unternehmen und TLS-Verschlüsselung werden nicht unterstützt.
Spanner Omni beendet das Schreiben von Daten 90 Tage nach der Erstellung einer Bereitstellung.
Sicherungen und Wiederherstellungen werden nicht unterstützt.
Wenn Sie Vorabzugriff auf die Version mit allen Funktionen erhalten möchten, wenden Sie sich an Google.
Wichtige Features
Spanner Omni bietet die folgenden Funktionen:
Flexibilität bei der Bereitstellung: Führen Sie Spanner Omni unter Linux oder macOS aus. Spanner Omni unterstützt öffentliche Cloud-Umgebungen wie Google Cloud Google Kubernetes Engine (GKE) und Cloud Storage sowie Amazon Elastic Kubernetes Service (Amazon EKS) und Amazon Elastic Compute Cloud (Amazon EC2), lokale Umgebungen und Laptops.
Hohe Skalierbarkeit: Spanner Omni kann Ihre Daten automatisch fragmentieren und die Fragmente ausgleichen, um eine elastische Skalierung für Lese- und Schreibvorgänge zu erreichen.
Hochverfügbarkeit: Spanner Omni bietet mehrere Bereitstellungstopologien. Spanner Omni bietet die Bereitstellung in mehreren Zonen und Clustern, um im Falle von Zonen- oder Clusterfehlern eine Hochverfügbarkeit zu gewährleisten.
Starke externe Konsistenz: Spanner Omni bietet globale Transaktionskonsistenz mit dem softwarebasierten TrueTime, das in jeder Umgebung bereitgestellt werden kann.
Interoperables Multi-Modell: Spanner Omni unterstützt mehrere Datenmodelle (relational, Schlüssel/Wert-Paar, Graph, Vektor) und Funktionen (Volltextsuche, analytische Verarbeitung) und bietet modellübergreifende Abfragen und ACID-konforme Transaktionen für verschiedene Datenmodelle.
Vertraute Benutzeroberfläche: Interagieren Sie mit Ihren Daten über die Spanner CLI, die eine SQL-Shell für interaktive Abfragen enthält. Spanner Omni unterstützt GoogleSQL, PostgreSQL-Dialekte und GQL, mit denen Sie vorhandene Anwendungen migrieren können.
Bereitstellungstopologien
Spanner Omni verwendet eine Hierarchie von Regionen, Zonen und Servern, um die Bereitstellungskonfiguration zu definieren. Spanner Omni bietet die folgenden Bereitstellungskonfigurationen:
Einzelner Server : Spanner Omni wird auf einem einzelnen Computer ausgeführt. Diese Topologie ist eine gute Option für die lokale Entwicklung, da sie auf einem einzelnen Computer ausgeführt wird. Upgrades für diese Topologie führen zu Ausfallzeiten.
Einzelne Zone (oder zonal) : Alle Spanner Omni-Server gehören zu einer Zone. Verwenden Sie für diese Bereitstellungskonfiguration mindestens drei Server. Für eine optimale Betriebszeit hat diese Topologie niedrigere Verfügbarkeitsziele, da ein Ausfall einer einzelnen Zone zu einem Ausfall führen kann.
Mehrere Zonen (oder regional) : Spanner Omni verteilt Server auf mehrere Zonen. Alle Zonen befinden sich an einem einzigen Standort. Verwenden Sie für Bereitstellungen in mehreren Zonen mindestens drei Zonen. Jede Zone muss mindestens einen Server haben. Wir empfehlen, in jeder Zone drei Server zu verwenden. Diese Bereitstellungskonfiguration bietet eine höhere Verfügbarkeit als die Bereitstellung in einer einzelnen Zone.
Mehrere Cluster (oder multiregional) : Spanner Omni-Server befinden sich in mehreren Zonen in mehreren Clustern. Verwenden Sie für eine hohe Verfügbarkeit drei Zonen in zwei oder mehr Clustern und konfigurieren Sie jede Zone mit mindestens drei Servern.
Systemanforderungen
Verwenden Sie die folgenden empfohlenen Mindestanforderungen für Serverbereitstellungen, um die Leistung zu optimieren:
| Umgebung | Betriebssystem oder Plattform | Empfohlene Hardware |
|---|---|---|
| Lokal | Linux (RHEL 9, Ubuntu 22) | 4 GB RAM pro vCPU, mindestens 20 GB Speicherplatz |
| Cloud (Google Cloud und AWS) | VMs oder Kubernetes-Pods | 4 vCPUs, 16 GB RAM pro VM oder Kubernetes-Pod |
| Entwickler (Laptops, Desktops) | macOS (M1, M2, M3) | 4 GB RAM, 10 GB Speicherplatz |
Für den Speicher wird ein dedizierter SSD-Speicher (Solid State Drive) mit einem ext4-Dateisystem empfohlen.
Konnektivität und Entwicklung
Die folgenden Tools können verwendet werden, um eine Verbindung zu Spanner Omni herzustellen und Anwendungen zu entwickeln:
Clientbibliotheken: Sie können vorhandene Spanner-Client bibliotheken für Java und Go verwenden, indem Sie den Spanner Omni Endpunkt angeben. Legen Sie in Java beispielsweise
setExperimentalHost("http://localhost:15000")fest.PGAdapter: Mit diesem Proxy können vorhandene PostgreSQL-Anwendungen über das standardmäßige PostgreSQL-Wire-Protokoll eine Verbindung zu Spanner Omni-Datenbanken mit PostgreSQL-Dialekt herstellen.
Diagnose: Mit dem Befehl
spanner admin diagnostics createwerden Protokolle, Traces und Thread-Stacks zur Fehlerbehebung erfasst.