Föderierte Abfragen mit Data Boost ausführen

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.

    Enable the 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

  1. Weitere Informationen finden Sie unter Spanner-Verbindungen erstellen. in der BigQuery-Dokumentation und folgen Sie der Console Anleitung.

  2. Klicken Sie im Bereich Externe Datenquelle auf die Kästchen Daten parallel lesen und Spanner Data Boost verwenden.

bq

  1. Rufen Sie in der BigQuery-Dokumentation den Abschnitt Spanner-Verbindungen erstellen auf und folgen Sie der Anleitung für bq.

  2. 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

  1. Rufen Sie in der Google Cloud Console die Seite Spanner-Instanzen auf.

    Zur Seite "VM-Instanzen"

    In der Konsole wird eine Liste Ihrer Spanner- Instanzen.

  2. Wählen Sie eine Spanner-Instanz und dann eine Datenbank aus.

  3. Klicken Sie auf der Seite Datenbankübersicht im Navigationsmenü auf Spanner Studio.

  4. Klicken Sie auf den Tab In BigQuery ansehen.

  5. 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.

  6. 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.

  7. 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 namens mydataset.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