Diese Seite bietet eine Übersicht über die Einbindung von Spanner in Vertex AI. Die Spanner-Vertex AI-Integration funktioniert sowohl mit GoogleSQL- als auch mit PostgreSQL-Datenbanken.
Dank der Einbindung von Spanner Vertex AI können Sie über die GoogleSQL- und PostgreSQL-Schnittstelle leicht auf Klassifikator- und Regressions-ML-Modelle zugreifen, die in Vertex AI gehostet werden. So lassen sich die Funktionen für die Bereitstellung von ML-Vorhersagen nahtlos in allgemeine Spanner-Datenzugriffsvorgänge mit DQL-/DML-Abfragen einbinden.
Vorteile der Einbindung von Spanner in Vertex AI
Die Generierung von ML-Vorhersagen mit der Einbindung von Spanner Vertex AI bietet mehrere Vorteile gegenüber dem Ansatz, bei dem der Zugriff auf Spanner-Daten und der Zugriff auf den Vertex AI-Vorhersageendpunkt separat erfolgen:
- Leistung:
- Bessere Latenz: Durch die direkte Kommunikation der Spanner Vertex AI-Integration mit dem Vertex AI-Dienst werden zusätzliche Rundreisen zwischen einem Compute-Knoten, auf dem ein Spanner-Client ausgeführt wird, und dem Vertex AI-Dienst vermieden.
- Höherer Durchsatz/Parallelismus: Die Spanner Vertex AI-Integration wird auf der verteilten Abfrageverarbeitungsinfrastruktur von Spanner ausgeführt, die eine hoch parallelisierbare Abfrageausführung unterstützt.
- Nutzerfreundlichkeit:
- Die Möglichkeit, eine einzige, einfache, einheitliche und vertraute SQL-Schnittstelle zu verwenden, um sowohl Datentransformationen als auch ML-Dienstszenarien auf Spanner-Skala zu ermöglichen, senkt die Einstiegsbarriere für ML und sorgt für eine wesentlich reibungslosere Nutzererfahrung.
- Kosten:
- Bei der Einbindung von Spanner in Vertex AI werden die Rechenressourcen von Spanner verwendet, um die Ergebnisse von ML-Berechnungen und SQL-Abfragen zusammenzuführen. Dadurch muss keine zusätzliche Rechenleistung (z. B. in der Compute Engine oder der Google Kubernetes Engine) bereitgestellt werden.
Wie funktioniert die Einbindung von Spanner in Vertex AI?
Bei der Einbindung von Spanner Vertex AI werden keine ML-Modelle gehostet, sondern stattdessen die Vertex AI-Dienstinfrastruktur verwendet. Sie müssen ein Modell nicht mit Vertex AI trainieren, um es mit der Spanner Vertex AI-Integration zu verwenden. Sie müssen es jedoch auf einem Vertex AI-Endpunkt bereitstellen.
Sie haben folgende Möglichkeiten, Modelle mit in Spanner gespeicherten Daten zu trainieren:
Föderierte BigQuery-Abfragen in Kombination mit BigQuery ML
Dataflow, um Daten aus Spanner im CSV-Format zu exportieren und die CSV-Datenquelle in Vertex AI zu importieren.
Durch die Einbindung von Spanner Vertex AI werden die folgenden Funktionen für die Verwendung von ML-Modellen erweitert:
Erstellen Sie ML-Vorhersagen, indem Sie ein Modell mit SQL auf Ihre Spanner-Daten anwenden. Sie können ein Modell aus dem Vertex AI Model Garden oder ein Modell verwenden, das auf Ihrem Vertex AI-Endpunkt bereitgestellt wurde.
Generieren Sie Texteinbettungen, damit ein LLM Textprompts in Zahlen übersetzt. Weitere Informationen zu Einbettungen finden Sie unter Texteinbettungen abrufen.
Spanner Vertex AI-Integrationsfunktionen verwenden
Mit einem Modell in der Spanner Vertex AI-Integration können Sie mithilfe der ML Predict-Funktionen Vorhersagen oder Text-Embeddings in Ihrem SQL-Code generieren. Diese Funktionen sind:
GoogleSQL
Sie können die folgende ML-Vorhersagefunktion für GoogleSQL verwenden:
Sie müssen Ihr Modell mit der DDL-Anweisung CREATE MODEL
registrieren, bevor Sie es mit der Funktion ML.PREDICT
verwenden können.
Sie können auch SAFE.ML.PREDICT
verwenden, um null
anstelle eines Fehlers in Ihren Vorhersagen zurückzugeben. Das ist hilfreich, wenn Sie große Abfragen ausführen, bei denen einige fehlgeschlagene Vorhersagen tolerabel sind.
PostgreSQL
Sie können die folgende ML-Vorhersagefunktion für PostgreSQL verwenden:
Wenn Sie die Funktionen verwenden möchten, können Sie ein Modell aus dem Vertex AI Model Garden auswählen oder ein Modell verwenden, das Sie in Vertex AI bereitgestellt haben.
Weitere Informationen zum Bereitstellen eines Modells auf einem Endpunkt in Vertex AI finden Sie unter Modell auf einem Endpunkt bereitstellen.
Weitere Informationen dazu, wie Sie mit diesen Funktionen eine ML-Vorhersage generieren, finden Sie unter ML-Vorhersagen mit SQL generieren.
Weitere Informationen dazu, wie Sie mit diesen Funktionen Texteinbettungen generieren, finden Sie unter Texteinbettungen abrufen.
Preise
Für die Verwendung von Spanner mit der Spanner Vertex AI-Integration fallen keine zusätzlichen Gebühren an. Allerdings können im Zusammenhang mit dieser Funktion weitere Kosten anfallen:
Sie zahlen die Standardpreise für die Onlinevorhersage mit Vertex AI. Die Gesamtkosten hängen vom verwendeten Modelltyp ab. Für einige Modelltypen gilt ein fester Stundenpreis, der vom Maschinentyp und der Anzahl der verwendeten Knoten abhängt. Für einige Modelltypen gelten Preise pro Anruf. Wir empfehlen, Letzteres in einem speziellen Projekt bereitzustellen, in dem Sie explizite Prognosequoten festgelegt haben.
Für die Datenübertragung zwischen Spanner und Vertex AI zahlen Sie die Standardpreise. Die Gesamtkosten hängen von der Region ab, in der der Server gehostet wird, auf dem die Abfrage ausgeführt wird, und von der Region, in der der aufgerufene Endpunkt gehostet wird. Um die Kosten zu minimieren, sollten Sie Ihre Vertex AI-Endpunkte in derselben Region wie Ihre Spanner-Instanz bereitstellen. Wenn Sie mehrregionale Instanzkonfigurationen oder mehrere Vertex AI-Endpunkte verwenden, sollten Sie Ihre Endpunkte auf demselben Kontinent bereitstellen.
SLA
Da die Verfügbarkeit von Vertex AI-Onlinevorhersagen geringer ist, müssen Sie Spanner-ML-Modelle richtig konfigurieren, um die hohe Verfügbarkeit von Spanner bei Verwendung der Spanner Vertex AI-Integration beizubehalten:
- Für Spanner-ML-Modelle müssen mehrere Vertex AI-Endpunkte im Backend verwendet werden, um einen Failover zu ermöglichen.
- Vertex AI-Endpunkte müssen der Vertex AI-SLA entsprechen.
- Vertex AI-Endpunkte müssen genügend Kapazität für den eingehenden Traffic bereitstellen.
- Für Vertex AI-Endpunkte müssen separate Regionen in der Nähe der Spanner-Datenbank verwendet werden, um regionale Ausfälle zu vermeiden.
- Für Vertex AI-Endpunkte sollten separate Projekte verwendet werden, um Probleme mit Vorhersagekontingenten pro Projekt zu vermeiden.
Die Anzahl der redundanten Vertex AI-Endpunkte hängt vom SLA und von der Anzahl der Zeilen in Spanner-Abfragen ab:
Spanner-SLA | Vertex AI-SLA | 1 Zeile | 10 Zeilen | 100 Zeilen | 1.000 Zeilen |
---|---|---|---|---|---|
99,99 % | 99,9 % | 2 | 2 | 2 | 3 |
99,99 % | 99,5 % | 2 | 3 | 3 | 4 |
99,999 % | 99,9 % | 2 | 2 | 3 | 3 |
99,999 % | 99,5 % | 3 | 3 | 4 | 4 |
Vertex AI-Endpunkte müssen nicht genau dasselbe Modell hosten. Wir empfehlen, das Spanner-ML-Modell so zu konfigurieren, dass es als ersten Endpunkt ein primäres, komplexes und rechenintensives Modell hat. Nachfolgende Failover-Endpunkte können auf vereinfachte Modelle verweisen, die weniger rechenintensiv sind, besser skalieren und Traffic-Spitzen abfangen können.
Compliance
Assured Workloads unterstützen die Vertex AI Prediction API nicht. Wenn Sie die Einschränkung der Ressourcennutzung aktivieren, wird die Vertex AI API und damit auch die Spanner Vertex AI-Integrationsfunktion deaktiviert.
Außerdem empfehlen wir, einen VPC Service Controls-Perimeter zu erstellen, damit Ihre Produktionsdatenbanken keine Verbindung zu Vertex AI-Endpunkten in Ihren nicht produktionsbezogenen Projekten herstellen können, die möglicherweise nicht ordnungsgemäß konfiguriert sind.