Auf dieser Seite wird beschrieben, wie Sie Spanner Data Boost beim Ausführen föderierter Abfragen von BigQuery nach Spanner verwenden. Mit Data Boost werden föderierte Abfragen nahezu ohne Auswirkungen auf vorhandene Arbeitslasten auf der bereitgestellten Spanner-Instanz ausgeführt.
Mit der Spanner-Föderation kann BigQuery Daten in Spanner in Echtzeit abfragen, ohne Daten kopieren oder verschieben zu müssen.
Weitere Informationen zu föderierten Spanner-Abfragen finden Sie unter Spanner föderierte Abfragen.
Weitere Informationen zu Data Boost finden Sie in der Data Boost-Übersicht.
Hinweise
Führen Sie die folgenden Aufgaben aus, bevor Sie federate Abfragen mit Data Boost ausführen.
BigQuery Connection API aktivieren
Mit der BigQuery Connection API können Sie BigQuery-Verbindungen zu externen Datenquellen verwalten.
-
Enable the BigQuery connection API.
Weitere Informationen finden Sie unter BigQuery-Verbindung API hinzu.
Hauptkonten IAM-Berechtigungen für Data Boost gewähren
Hauptkonten benötigen die spanner.instances.get
und spanner.databases.useDataBoost
Auszuführende Berechtigungen der Identitäts- und Zugriffsverwaltung (Identity and Access Management, IAM)
Abfragen und Exporte mit Data Boost ausführen.
Wir empfehlen, eine benutzerdefinierte IAM-Rolle basierend auf Spanner Database Reader
(roles/spanner.databaseReader
) zu erstellen und ihr spanner.instances.get
und spanner.databases.useDataBoost
hinzuzufügen.
Weitere Informationen finden Sie unter Vordefinierte Rollen.
BigQuery-Verbindungen für Spanner mit Data Boost erstellen
Mit BigQuery-Verbindungen können Sie Daten abfragen, die außerhalb BigQuery Um eine Verbindung zwischen Mit BigQuery und Spanner erstellen Sie externe Daten, Sie können dann Abfragen ausführen, Spanner Daten.
So erstellen Sie eine externe Datenverbindung zu Spanner, die Wählen Sie für Data Boost eine der folgenden Optionen aus:
Console
Weitere Informationen finden Sie unter Spanner-Verbindungen erstellen. in der BigQuery-Dokumentation und folgen Sie der Console Anleitung.
Klicken Sie im Bereich Externe Datenquelle auf die Kästchen Daten parallel lesen und Spanner Data Boost verwenden.
bq
Rufen Sie in der BigQuery-Dokumentation den Abschnitt Spanner-Verbindungen erstellen auf und folgen Sie der Anleitung für bq.
Legen Sie die folgenden Verbindungseigenschaften auf
true
fest:
useParallelism
useDataBoost
Im folgenden Beispiel wird mit dem Befehl bq
mk
eine neue Verbindung mit dem Namen my_connection
mit den beiden erforderlichen Eigenschaften für den Daten-Boost erstellt:
bq mk --connection --connection_type='CLOUD_SPANNER' --location='us' \
--properties='{"database":"projects/my-project/instances/my-instance/databases/my-database", "useParallelism":true, "useDataBoost": true}' my_connection
Föderierte Abfrage ausführen
Um eine föderierte Abfrage mit Data Boost auszuführen, verwenden Sie eine BigQuery-Verbindung, die die Verwendung von angibt Daten-Boost. Weitere Informationen finden Sie unter BigQuery-Verbindungen für Spanner mit Data Boost erstellen.
Sie können entweder über die Spanner-Seite in der Google Cloud Console oder über BigQuery beginnen.
Auf der Spanner-Seite der Console beginnen
Rufen Sie in der Google Cloud Console die Seite Spanner-Instanzen auf.
In der Konsole wird eine Liste Ihrer Spanner- Instanzen.
Wählen Sie eine Spanner-Instanz und dann eine Datenbank aus.
Klicken Sie auf der Seite Datenbankübersicht im Navigationsmenü auf Spanner Studio.
Klicken Sie auf den Tab In BigQuery ansehen.
Geben Sie im Dialogfeld In BigQuery ansehen eine Verbindungs-ID ein.
Dadurch wird eine neue Verbindung erstellt. Wenn die ID bereits vorhanden ist, tritt ein Fehler auf.
Füllen Sie den Rest des Dialogfelds aus und setzen Sie ein Häkchen in die Kästchen Daten parallel lesen und Spanner Data Boost verwenden.
Klicken Sie auf In BigQuery ansehen.
BigQuery Studio wird geöffnet. Geben Sie dort Ihre föderierte Abfrage ein und führen Sie sie aus.
Im folgenden Beispiel wird eine föderierte Abfrage an eine Spanner-Datenbank namens
orders
gesendet und die Ergebnisse mit einer BigQuery-Tabelle namensmydataset.customers
verknüpft.SELECT c.customer_id, c.name, rq.first_order_date FROM mydataset.customers AS c LEFT OUTER JOIN EXTERNAL_QUERY( 'my-project.us.example-db', '''SELECT customer_id, MIN(order_date) AS first_order_date FROM orders GROUP BY customer_id''') AS rq ON rq.customer_id = c.customer_id GROUP BY c.customer_id, c.name, rq.first_order_date;
Mit BigQuery beginnen
Geben Sie die folgende URL in den Browser ein:
https://console.cloud.google.com/bigquery
BigQuery wird im zuletzt aufgerufenen Projekt geöffnet und zeigt BigQuery Studio an. Führen Sie hier Ihre föderierte Abfrage aus.
Nächste Schritte
- Informationen zu Data Boost finden Sie in Data Boost – Übersicht
- Data Boost in Ihren Anwendungen verwenden
- Data Boost-Nutzung im Blick behalten
- Nutzung des Daten-Boost-Kontingents im Blick behalten und verwalten