Abfragen in der Console erstellen

Sie können Ihre Bigtable-Daten mit dem Query Builder in Bigtable Studio abfragen und aufrufen. Der Query Builder ist ein interaktives Formular in der Google Cloud Console, mit dem Sie eine Abfrage erstellen, auf eine Tabelle anwenden und die Ergebnisse dann in der Console ansehen können.

Mit dem Abfrage-Builder von Bigtable Studio können Sie über Drop-down-Menüs eine Kombination von Abfragesätzen angeben, ohne eine Anwendung schreiben oder eine Befehlszeile verwenden zu müssen. Wenn Sie die Abfrage ausführen, ruft die Console die Bigtable Data API auf, die Daten zurückgibt, die Ihrer Abfrage entsprechen.

In diesem Dokument wird beschrieben, wie Sie den Query Builder verwenden, und es werden Tipps zur Optimierung Ihrer Abfragen gegeben. Bevor Sie diese Seite lesen, sollten Sie sich mit der Bigtable-Übersicht vertraut gemacht haben.

Für Abfragen, die im Abfragetool ausgeführt werden, gelten dieselben Preise und Kontingente wie für jede andere Abfrage, die an eine Tabelle gesendet wird.

Wann sollte der Query Builder verwendet werden?

Die Möglichkeit, Bigtable-Daten in der Google Cloud Console abzufragen, ist hilfreich, wenn Sie Folgendes tun möchten:

  • Sie erhalten eine visuelle Darstellung des Schemas Ihrer Tabelle.
  • Prüfen, ob bestimmte Daten erfolgreich geschrieben wurden
  • Datenintegrität während einer Migration prüfen
  • Beheben Sie mögliche Datenprobleme.
  • Sie können sich eine Vorschau der Ergebnisse ansehen, die durch eine bestimmte Kombination von Klauseln zurückgegeben werden, bevor Sie sie in Ihrem Code verwenden. Das kann besonders für neue Bigtable-Nutzer und erfahrene Nutzer hilfreich sein, die die cbt-Befehlszeile nicht verwenden möchten.

Hinweise

Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Bigtable Reader (roles/bigtable.reader) für das Projekt zu erteilen, um die Berechtigungen zu erhalten, die Sie zum Verwenden des Abfragebuilders benötigen. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Diese vordefinierte Rolle enthält die Berechtigungen, die zum Verwenden des Abfragebuilders erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:

Erforderliche Berechtigungen

Die folgenden Berechtigungen sind für die Verwendung des Abfragebuilders erforderlich:

  • bigtable.tables.get
  • bigtable.instances.get
  • bigtable.appProfiles.list
  • bigtable.tables.list
  • bigtable.tables.readRows

Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.

Wenn Sie keine Tabelle zum Abfragen haben, können Sie eine kleine Testtabelle erstellen und Ihre Abfragen darauf ausführen.

Query Builder öffnen

Wenn Sie den Query Builder öffnen, wird eine Standardabfrage für die erste Tabelle in der Instanz alphabetisch ausgeführt und angezeigt. Die Standardabfrage wird mit dem Standard-App-Profil ausgeführt und es werden bis zu 100 Zeilen zurückgegeben.

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

    Liste der Instanzen öffnen

  2. Klicken Sie auf den Namen der Instanz, die die Tabelle enthält, die Sie abfragen möchten.

  3. Klicken Sie im Navigationsbereich auf Bigtable Studio. Die Seite Bigtable Studio wird im Query Builder-Modus geöffnet. Im Bereich Explorer finden Sie eine Liste der Tabellen in der Instanz. Im Bereich Abfrageergebnisse werden die Ergebnisse der Standardabfrage angezeigt.

  4. Optional: Minimieren Sie den Bereich Explorer, um den Bereich „Query Builder“ zu vergrößern.

Format der Datenanzeige

Die Ergebnisse des Query Builders werden in einer Tabelle angezeigt. Die erste Überschrift und Spalte lautet Zeilenschlüssel. Die übrigen Überschriften stehen jeweils für eine Spalte in der Bigtable-Tabelle, ausgedrückt als Spaltenfamilie und Spaltenqualifizierer, getrennt durch einen Doppelpunkt. Die Überschrift cell_plan: data_plan_01gb gibt beispielsweise an, dass die Werte in dieser Spalte aus der Spalte data_plan_01gb in der Spaltenfamilie cell_plan stammen.

Drop-down-Menü

Es wird nur der neueste Wert für eine Spalte zurückgegeben. Zeitstempel sind standardmäßig ausgeblendet. Sie können sie aber einblenden, indem Sie auf die Ein/Aus-Schaltfläche klicken.

Tabelle auswählen

Wählen Sie im Drop-down-Menü Tabelle die ID der Tabelle aus, die Sie abfragen möchten.

Optional: Anwendungsprofil angeben

Sie können ein App-Profil verwenden, das Sie speziell für die Verwendung mit dem Abfrage-Builder erstellt haben. Das kann beispielsweise hilfreich sein, wenn Sie den Abfrageverkehr isolieren möchten, indem Sie einen anderen Cluster als den von Ihrer primären Anwendung verwendeten verwenden.

So verwenden Sie ein anderes App-Profil für die nächste Abfrage:

  1. Klicken Sie auf Zur Abfrage hinzufügen.
  2. Klicken Sie auf App-Profil ändern (Standardeinstellung). Ein neues Drop-down-Menü wird angezeigt.
  3. Wählen Sie im Drop-down-Menü App-Profil ein Profil aus der Liste der App-Profile der Instanz aus.

Weitere Informationen zu den Vorteilen der Verwendung verschiedener Anwendungsprofile für unterschiedliche Arbeitslasten finden Sie unter Anwendungsprofile. Informationen zum Erstellen eines Anwendungsprofils finden Sie unter Anwendungsprofile erstellen und konfigurieren.

Wenn sich Ihre Tabelle in einer Instanz mit Replikation befindet, konfigurieren Sie Ihr App-Profil so, dass Daten aus dem Cluster gelesen werden, der Ihnen geografisch am nächsten ist.

Klauseln zur Abfrage hinzufügen und sie ausführen

  1. Nachdem Sie die Tabelle und das App-Profil ausgewählt haben, fügen Sie der Abfrage Klauseln hinzu. Im nächsten Abschnitt finden Sie Details zu den verfügbaren Klauseln.
  2. Nachdem Sie alle Klauseln hinzugefügt haben, klicken Sie auf Ausführen.
  3. Rufen Sie die Ergebnisse auf.

Abfrageklauseln

Mit dem Query Builder können Sie Ihrer Abfrage Klauseln hinzufügen. Wenn Sie die Abfrage ausführen, erstellt der Abfrage-Builder eine Leseanfrage und sendet sie an Ihre Tabelle. Weitere Informationen zu Leseanfragen finden Sie unter Lesungen.

Die Klauseln „Zeilenschlüssel“, „Zeilenschlüsselbereich“ und „Zeilenschlüsselpräfix“ bestimmen, welche Zeilen aus dem Speicher abgerufen werden. Mit den regulären Ausdrücken für den Zeilenschlüssel, den Spalten und den Zeitbereichsklauseln wird der generierten Leseanfrage ein Filter hinzugefügt. Filter, die Sie im Abfragetool verwenden, funktionieren genauso wie in den Clientbibliotheken. Weitere Informationen zu Bigtable-Filtern und zu deren Auswirkungen auf die Leistung finden Sie unter Filter und Filter verwenden.

Zeilenschlüssel angeben

Wenn Sie eine einzelne Zeile aus der Tabelle abrufen möchten, geben Sie einen Zeilenschlüsselwert an. Sie können mehrere Klauseln für Zeilenschlüssel hinzufügen.

  1. Klicken Sie auf Zur Abfrage hinzufügen.
  2. Wählen Sie in der Drop-down-Liste Zeilenschlüssel aus.
  3. Geben Sie den genauen Wert des Zeilenschlüssels ein, für den Sie Werte sehen möchten.

Zeilenschlüsselbereich angeben

Wenn Sie einen Zeilenbereich aus der Tabelle abrufen möchten, geben Sie einen Start- und Endzeilenschlüssel an. Bigtable speichert Daten in lexikografischer Reihenfolge nach Zeilenschlüssel.

  1. Klicken Sie auf Zur Abfrage hinzufügen.
  2. Wählen Sie in der Drop-down-Liste Zeilenschlüsselbereich aus.
  3. Geben Sie den vollständigen Startzeilenschlüssel ein.
  4. Geben Sie den vollständigen Endzeilenschlüssel ein.

Präfix für Zeilenschlüssel angeben

Wenn Sie nur Zeilen abrufen möchten, deren Zeilenschlüssel mit einer bestimmten Zeichenfolge beginnen, filtern Sie nach dem Zeilenschlüsselpräfix. Ein Zeilenschlüsselpräfix besteht aus den ersten N Zeichen eines Zeilenschlüssels. Üblicherweise wird zwischen dem Präfix und dem Rest des Zeilenschlüssels ein Hashtag, ein Pipe-Zeichen oder ein anderes Symbol verwendet.

  1. Klicken Sie auf Zur Abfrage hinzufügen.
  2. Wählen Sie in der Drop-down-Liste Zeilenschlüsselpräfix aus.
  3. Geben Sie ein Präfix für Zeilenschlüssel ein. Sie müssen keine Platzhaltersymbole eingeben.

Nach Regex für Zeilenschlüssel filtern

Wenn Sie nur Zeilen zurückgeben möchten, deren Zeilenschlüsselwerte mit einem bestimmten regulären Ausdruck übereinstimmen, verwenden Sie einen regulären Ausdrucksfilter für Zeilenschlüssel. Für eine bessere Leistung sollten Sie der Abfrage eine Zeilenschlüsselbereichs- oder Zeilenschlüsselpräfixklausel hinzufügen, bevor Sie den Regex-Filter für Zeilenschlüssel hinzufügen. Eine Anleitung zum Erstellen eines Regex finden Sie unter Regex für Zeilenschlüssel.

  1. Klicken Sie auf Zur Abfrage hinzufügen.
  2. Wählen Sie in der Drop-down-Liste Zeilenschlüssel-Regex aus.
  3. Geben Sie einen regulären Ausdruck mit der RE2-Syntax ein.

Nach Spalte filtern

Wenn Sie eine oder mehrere Spalten angeben möchten, die in die Abfrage eingeschlossen werden sollen, fügen Sie eine Spalten-Klausel hinzu. Wählen Sie dabei für jede Spalte, nach der Sie filtern möchten, die Spaltenfamilie und den Spaltenqualifizierer aus. Die Leseanfrage, die beim Hinzufügen dieser Klausel generiert wird, enthält den Regex-Filter für Spaltenfamilien und den Filter für Spaltenbereiche.

  1. Klicken Sie auf Zur Abfrage hinzufügen.
  2. Wählen Sie in der Drop-down-Liste Spalten aus.
  3. Klicken Sie in das Feld „Spalten“. Eine Liste der Spaltenfamilien wird angezeigt.
  4. Klicken Sie auf die ID einer Spaltenfamilie. Eine Liste der Spaltenqualifizierer wird angezeigt.
  5. Klicken Sie auf einen Spaltenqualifizierer.

Nach Zeitraum filtern

Wenn Sie nur Zellen mit einem Zeitstempel innerhalb eines bestimmten Bereichs abrufen möchten, fügen Sie eine Zeitbereichsklausel mit dem Zeitstempelbereichsfilter hinzu.

  1. Klicken Sie auf Zur Abfrage hinzufügen.
  2. Wählen Sie in der Drop-down-Liste Zeitraum aus.
  3. Geben Sie einen Startzeitstempel ein.
  4. Geben Sie einen Endzeitstempel ein.

Gib einen Zeitstempel in einem der folgenden Formate an:

  • Ein Unix-Zeitstempel in Mikrosekunden, z. B. 3023483279876000
  • YYYY-MM-DDThh:mm:ss:ss[z]
  • YYYY/MM/DD-hh:mm:ss.sss[z]
  • MM/TT/JJJJ
  • JJJJ/MM/TT

Das optionale T ist ein Literal, das die Zeit angibt, und das optionale z gibt die UTC-Zeit an, nicht die Ortszeit. Weitere Informationen zu Zeitstempelformaten finden Sie unter ISO 8601.

Limit festlegen

Wenn Sie eine maximale Anzahl von Zeilen angeben möchten, fügen Sie eine Limitklausel hinzu.

  1. Klicken Sie auf Zur Abfrage hinzufügen.
  2. Wählen Sie in der Drop-down-Liste Begrenzen aus.
  3. Geben Sie eine Zahl zwischen 1 und 1,00 ein.

Beschränkungen

Für den Abfrage-Builder gelten die folgenden Einschränkungen:

  • 1.000 Zeichen pro Zelle: Bigtable gibt maximal 1.000 Zeichen pro Zelle zurück. Wenn eine Zelle mehr als 1.000 Zeichen enthält, wird ein abgeschnittenes Ergebnis mit der Anzahl der nicht angezeigten Zeichen angezeigt.
  • Maximal 100 Spalten: Bigtable gibt die ersten 100 Spalten in jeder Zeile zurück, die mit der Abfrage übereinstimmen. Spaltenfamilien werden nicht in einer bestimmten Reihenfolge gespeichert, aber Spalten werden innerhalb ihrer Spaltenfamilie lexikografisch sortiert.
  • Maximal 1.000 Zeilen: Der Abfrage-Builder gibt maximal die ersten 1.000 Datenzeilen zurück, die mit Ihrer Abfrage übereinstimmen.
  • Base64: Bigtable bemüht sich, Base64-codierte Daten korrekt anzuzeigen. Die Ergebnisse sind jedoch nicht garantiert. Wenn Bigtable die Daten in einer Zelle nicht anzeigen kann, wird stattdessen die Größe des Zellenwerts in Byte angezeigt.
  • Ältere Daten: Sie können nur die neueste Zelle (oder Version) in den abgefragten Spalten abrufen. Weitere Informationen zu diesem Konzept finden Sie unter Bigtable-Speichermodell und Allgemeine Konzepte.

  • Serialisierte Daten: Als Protokoll-Buffer gespeicherte Daten werden in den Abfrageergebnissen nicht korrekt angezeigt. JSON-Daten werden besser unterstützt, sind aber nicht garantiert korrekt.

  • Künstliche Zeitstempel: Wenn Ihre Anwendung der Zeitstempeleigenschaft von Zellen beim Schreiben von Daten in die Tabelle keine Zeitstempel zuweist, können Sie in Ihrer Abfrage Zeitbereichsfilter verwenden, um einen Bereich der Werte abzurufen, die Sie anstelle von Zeitstempeln verwenden, sofern Sie sie in Mikrosekunden angeben. Weitere Informationen dazu, warum in Ihren Tabellendaten möglicherweise künstliche Zeitstempel verwendet werden, finden Sie unter Zeitstempel.

Nächste Schritte