Logische Ansichten erstellen und verwalten

In Bigtable ist eine logische Ansicht das Ergebnis einer SQL-Abfrage, die als virtuelle Tabelle dient und von anderen SQL-Abfragen abgefragt werden kann. Die Daten bleiben in der Quelltabelle.

In diesem Dokument werden logische Ansichten und die Erstellung und Ausführung von Vorgängen darauf beschrieben. Einen Vergleich mit materialisierten Ansichten und autorisierten Ansichten finden Sie unter Tabellen und Ansichten.

Mit logischen Ansichten können Sie Folgendes mit Ihren Bigtable-Daten tun:

  • Abfragen nicht wiederholen: Sie können die Spaltenzuordnung und die Umwandlungslogik in einer logischen Ansicht speichern und weiterentwickeln, die von anderen logischen Ansichten verwendet werden kann, anstatt diese Logik zu kopieren und einzufügen oder sie verstehen zu müssen.
  • Integration in Systeme, die für das Lesen aus relationalen Datenbanken entwickelt wurden: Mit logischen Ansichten können Sie Ihre Bigtable-Daten so lesen, als wären sie eine relationale Datenbanktabelle oder eine Cassandra-Tabelle.
  • Gleiche logische Ansicht für viele Tabellen ausführen: Wenn Sie die Klausel FROM ändern, können Sie mit derselben Ansicht jede Tabelle in Ihrer Bigtable-Instanz abfragen.
  • Eine einheitliche Benutzeroberfläche bereitstellen: Ihre Anwendung kann eine logische Ansicht verwenden, auch wenn sich die Quelltabelle ändert.

Eine logische Ansicht ist eine Ressource auf Instanzebene. Sie können eine logische Ansicht mit der Google Cloud CLI oder dem Bigtable Studio-Abfrageeditor in der Google Cloud -Konsole erstellen. Sie können den Bigtable Studio-Abfrageeditor oder eine der Bigtable-Clientbibliotheken verwenden, die SQL unterstützen, um eine logische Ansicht abzufragen.

Eine logische Ansicht hat folgende Merkmale:

  • Es müssen SQL-Funktionen verwendet werden, die von GoogleSQL for Bigtable unterstützt werden.
  • Schreibgeschützt
  • Muss mit SQL gelesen werden, nicht mit einem Aufruf von ReadRows.
  • Verwendet Beschreibungsrechte. Sie können eine logische Ansicht abfragen, wenn Sie Leseberechtigungen für sie haben, auch wenn Sie keine Leseberechtigungen für die Quelltabelle haben.

Hinweise

Führen Sie die folgenden Schritte aus, wenn Sie die gcloud CLI verwenden möchten:

  1. Install the Google Cloud CLI.
  2. If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

  3. To initialize the gcloud CLI, run the following command:

    gcloud init

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die Rolle „Bigtable Admin“ (roles/bigtable.admin) für die Instanz zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Erstellen und Verwalten logischer Ansichten benötigen. Andernfalls benötigen Sie je nach gewünschtem Vorgang die folgenden Berechtigungen auf Instanzebene:

  • Erstellen: bigtable.logicalViews.create
  • Aktualisieren: bigtable.logicalViews.update
  • Löschen: roles/bigtable.logicalViews.delete
  • Liste: bigtable.logicalViews.list
  • Beschreiben Sie: bigtable.logicalViews.get

Zum Erstellen einer logischen Ansicht benötigen Sie außerdem mindestens die Berechtigung bigtable.table.readRows für die Quelltabelle.

Eine Liste aller verfügbaren Rollen und Berechtigungen finden Sie unter Bigtable-Zugriffssteuerung mit IAM.

Logische Ansicht erstellen

Console

  1. Öffnen Sie in der Google Cloud Console die Liste der Bigtable-Instanzen.

    Liste der Instanzen öffnen

  2. Wählen Sie eine Instanz aus.

  3. Klicken Sie im Navigationsbereich auf Bigtable Studio.

  4. Öffnen Sie einen neuen Tab, indem Sie auf  und dann auf Editor klicken.

    1. Geben Sie die Abfrage im Abfrageeditor ein. Wenn die Abfrage eine gültige SQL-Abfrage ist, wird die Meldung Gültig angezeigt.

    2. Optional: Klicken Sie auf Formatieren, um die Anweisung im SQL-Format zu formatieren.

    3. Klicken Sie auf Ausführen. Die Ergebnisse der Abfrage werden in der Tabelle Ergebnisse angezeigt.

    4. Wenn Sie mit der Abfrage zufrieden sind, klicken Sie auf Speichern und wählen Sie dann Ansicht speichern aus.

    Weitere Informationen zur Verwendung des Abfrageeditors finden Sie unter Daten mit Bigtable Studio verwalten.

gcloud

Verwenden Sie den Befehl gcloud bigtable logical-views create, um eine logische Ansicht zu erstellen.

gcloud bigtable logical-views create VIEW \
  --instance=INSTANCE --query=QUERY

Ersetzen Sie Folgendes:

  • VIEW: eine ID mit bis zu 128 Zeichen für die neue Ansicht. Die ID muss unter den Tabellen- und Ansichts-IDs in der Instanz eindeutig sein.
  • QUERY: eine gültige GoogleSQL-Abfrage für Bigtable
  • INSTANCE: die ID der Instanz, in der die Datenansicht erstellt werden soll

Logische Ansicht aktualisieren

Console

  1. Öffnen Sie in der Google Cloud Console die Liste der Bigtable-Instanzen.

    Liste der Instanzen öffnen

  2. Wählen Sie eine Instanz aus der Liste aus.

  3. Klicken Sie im Navigationsbereich auf Bigtable Studio. Im Explorer wird eine Liste der Ansichten angezeigt.

  4. Optional: Die ersten 10 Aufrufe in der Instanz werden aufgeführt. Wenn Sie weitere zehn sehen möchten, klicken Sie auf Mehr anzeigen.

  5. Klicken Sie neben der Ansicht, die Sie aktualisieren möchten, auf das Dreipunkt-Menü more_vert und dann auf Definition ansehen.

  6. Ändern Sie die Abfrage.

  7. Klicken Sie auf Ausführen.

  8. Wenn Sie sich vergewissert haben, dass im Bereich „Ergebnisse“ Daten angezeigt werden, die in die Ansicht aufgenommen werden sollen, klicken Sie auf Als.

  9. Geben Sie im Dialogfeld die ID der geänderten Ansicht ein.

    Im Dialogfeld wird eine Warnung angezeigt, dass Sie die vorhandene Ansicht überschreiben.

  10. Klicken Sie auf Speichern.

gcloud

Verwenden Sie den Befehl gcloud bigtable logical-views update, um eine logische Ansicht zu aktualisieren, damit eine andere Abfrage ausgeführt wird.

gcloud bigtable logical-views update VIEW  \
    --instance=INSTANCE --query=QUERY

Ersetzen Sie Folgendes:

  • VIEW: ID der logischen Ansicht, die aktualisiert werden soll
  • QUERY: eine gültige GoogleSQL-Abfrage.
  • INSTANCE: die ID der Instanz, die die logische Ansicht enthält

Logische Ansicht löschen

Diese Aktion ist dauerhaft. Verwenden Sie den Befehl gcloud bigtable logical-views delete, um eine logische Ansicht zu löschen.

    gcloud bigtable logical-views delete VIEW \
      --instance=INSTANCE

Ersetzen Sie Folgendes:

  • VIEW: ID der logischen Ansicht, die aktualisiert werden soll
  • INSTANCE: die ID der Instanz, die die logische Ansicht enthält

Liste der logischen Ansichten für eine Instanz abrufen

Sie sehen eine Liste der logischen Ansichten für eine Instanz.

Console

  1. Öffnen Sie in der Google Cloud Console die Liste der Bigtable-Instanzen.

    Liste der Instanzen öffnen

  2. Wählen Sie eine Instanz aus der Liste aus.

  3. Klicken Sie im Navigationsbereich auf Bigtable Studio. Im Explorer wird eine Liste der Ansichten angezeigt.

  4. Optional: Die ersten 10 Aufrufe in der Instanz werden aufgeführt. Wenn Sie weitere zehn sehen möchten, klicken Sie auf Mehr anzeigen.

gcloud

Mit dem Befehl gcloud bigtable logical-views list können Sie eine Liste der logischen Ansichten für eine Instanz aufrufen.

gcloud bigtable logical-views list --instance=INSTANCE

Ersetzen Sie INSTANCE durch die Instanz-ID.

Logische Ansichten beschreiben

Verwenden Sie den Befehl gcloud bigtable logical-views describe, um Details zu einer logischen Ansicht aufzurufen.

  gcloud bigtable logical-views describe VIEW \
      --instance=INSTANCE

Im Terminal werden Details ähnlich der folgenden angezeigt:

  createTime: '2025-03-07T19:49:56.316578Z'
  etag: W/"/v1/17919275593532352351"
  name: projects/my-project/instances/my-instance/logicalViews/my-view
  query: SELECT street FROM addresses
  updateTime: '2025-03-07T19:49:56.316578Z'

Nächste Schritte