Abfragen in der Konsole erstellen
Sie können Ihre Bigtable-Daten mit dem Query Builder von Bigtable Studio abfragen und ansehen. Der Query Builder ist ein interaktives Formular in der Google Cloud Console, mit dem Sie eine Abfrage erstellen, für eine Tabelle ausführen und die Ergebnisse in der Console ansehen können.
Mit dem Bigtable Studio-Abfrage-Builder können Sie mithilfe von Drop-down-Auswahlfeldern eine Kombination von Abfrageklauseln angeben, ohne eine Anwendung schreiben oder eine CLI verwenden zu müssen. Wenn Sie die Abfrage ausführen, wird in der Konsole ein Aufruf an die Bigtable Data API gesendet, die Daten zurückgibt, die Ihrer Abfrage entsprechen.
In diesem Dokument wird beschrieben, wie Sie den Query Builder verwenden. Außerdem finden Sie Tipps zur Optimierung Ihrer Abfragen. Bevor Sie diese Seite lesen, sollten Sie sich mit der Bigtable-Übersicht vertraut machen.
Für Abfragen, die im Abfragegenerator ausgeführt werden, gelten dieselben Preise und Kontingente wie für alle anderen Abfragen, die an eine Tabelle gesendet werden.
Wann sollte der Query Builder verwendet werden?
Die Möglichkeit, Ihre Bigtable-Daten in derGoogle Cloud Console abzufragen, ist hilfreich, wenn Sie Folgendes tun müssen:
- Sie können sich schnell eine visuelle Darstellung des Tabellenschemas ansehen.
- Prüfen Sie, ob bestimmte Daten erfolgreich geschrieben wurden.
- Datenintegrität während einer Migration prüfen
- Mögliche Datenprobleme beheben
- Sehen Sie sich eine Vorschau der Ergebnisse an, die eine bestimmte Kombination von Klauseln zurückgibt, bevor Sie sie in Ihrem Code verwenden. Das kann besonders für neue Bigtable-Nutzer sowie für 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 zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Verwenden des Abfragegenerators 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 Abfragegenerators erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind für die Verwendung des Abfragegenerators 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 sortiert) ausgeführt und angezeigt. Die Standardabfrage wird mit dem Standard-App-Profil ausgeführt und es werden bis zu 100 Zeilen zurückgegeben.
Öffnen Sie in der Google Cloud Console die Liste der Bigtable-Instanzen.
Klicken Sie auf den Namen der Instanz, die die Tabelle enthält, die Sie abfragen möchten.
Klicken Sie im Navigationsbereich auf Bigtable Studio. Die Seite Bigtable Studio wird im Query Builder-Modus geöffnet. Im Bereich Explorer wird eine Liste der Tabellen in der Instanz angezeigt und im Bereich Abfrageergebnisse die Ergebnisse der Standardabfrage.
Optional: Sie können den Bereich Explorer minimieren, um den Bereich „Query Builder“ zu vergrößern.
Datenanzeigeformat
Die Ergebnisse des Query Builders werden in einer Tabelle angezeigt. Die erste Überschrift und Spalte ist Zeilenschlüssel. Die verbleibenden Überschriften stehen jeweils für eine Spalte in der Bigtable-Tabelle, ausgedrückt als Spaltenfamilie und Spaltenqualifizierer, die durch einen Doppelpunkt getrennt sind. 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.
Es wird nur der letzte Wert für eine Spalte zurückgegeben. Zeitstempel sind standardmäßig ausgeblendet. Sie können sie aber durch Klicken auf den Schalter einblenden.
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 Anwendungsprofil verwenden, das Sie speziell für die Verwendung mit dem Abfrage-Builder erstellen. Das kann beispielsweise hilfreich sein, wenn Sie den Abfragetraffic isolieren möchten, indem Sie einen anderen Cluster als den Ihrer primären Anwendung verwenden.
So verwenden Sie ein anderes App-Profil, um Ihre nächste Abfrage auszuführen:
- Klicken Sie auf Zur Abfrage hinzufügen.
- Klicken Sie auf Anwendungsprofil ändern (Standardeinstellung). Ein neues Drop-down-Menü wird angezeigt.
- Wählen Sie im Drop-down-Menü App-Profil ein App-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 dann ausführen
- Nachdem Sie die Tabelle und das App-Profil ausgewählt haben, fügen Sie der Abfrage Klauseln hinzu. Weitere Informationen zu den verfügbaren Klauseln finden Sie im nächsten Abschnitt.
- Nachdem Sie alle Klauseln hinzugefügt haben, klicken Sie auf Ausführen.
- die Ergebnisse aufrufen
Abfrageklauseln
Mit dem Query Builder können Sie Ihrer Abfrage Klauseln hinzufügen. Wenn Sie die Abfrage ausführen, erstellt und sendet der Abfragegenerator eine Leseanfrage an Ihre Tabelle. Weitere Informationen zu Leseanfragen finden Sie unter Lesevorgänge.
Die Anweisungen für Zeilenschlüssel, Zeilenschlüsselbereich und Zeilenschlüsselpräfix bestimmen die Zeilen, die aus dem Speicher abgerufen werden. Die Klauseln für den regulären Ausdruck für den Zeilenschlüssel, die Spalten und den Zeitraum fügen der generierten Leseanfrage einen Filter hinzu. Filter, die Sie im Query Builder verwenden, funktionieren genauso wie in den Clientbibliotheken. Weitere Informationen zu Bigtable-Filtern und dazu, wie sich ihre Verwendung auf die Leistung auswirken kann, 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 Zeilenschlüsselklauseln hinzufügen.
- Klicken Sie auf Zur Abfrage hinzufügen.
- Wählen Sie in der Drop-down-Liste Zeilenschlüssel aus.
- Geben Sie den genauen Wert des Zeilenschlüssels ein, für den Sie Werte aufrufen möchten.
Zeilenschlüsselbereich angeben
Wenn Sie einen Bereich von Zeilen aus der Tabelle abrufen möchten, geben Sie einen Start- und Endzeilenschlüssel an. Bigtable speichert Daten in lexikografischer Reihenfolge nach Zeilenschlüssel.
- Klicken Sie auf Zur Abfrage hinzufügen.
- Wählen Sie in der Drop-down-Liste Zeilenschlüsselbereich aus.
- Geben Sie den vollständigen Startzeilenschlüssel ein.
- 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 Zeilenschlüsselpräfix. Ein Zeilenschlüsselpräfix besteht aus den ersten N Zeichen eines Zeilenschlüssels. Konventionsgemäß wird häufig ein Hashtag, ein senkrechter Strich oder ein anderes Symbol zwischen dem Präfix und dem Rest des Zeilenschlüssels eingefügt.
- Klicken Sie auf Zur Abfrage hinzufügen.
- Wählen Sie in der Drop-down-Liste Row key prefix (Präfix für Zeilenschlüssel) aus.
- Geben Sie ein Präfix für den Zeilenschlüssel ein. Sie müssen keine Platzhaltersymbole eingeben.
Nach Regex für Zeilenschlüssel filtern
Wenn Sie nur Zeilen mit Zeilenschlüsselwerten abrufen möchten, die einem angegebenen regulären Ausdruck entsprechen, verwenden Sie einen Filter für reguläre Ausdrücke für Zeilenschlüssel. Fügen Sie der Abfrage vor dem Hinzufügen des Regex-Filters für Zeilenschlüssel einen Zeilenschlüsselbereich oder eine Zeilenschlüsselpräfix-Anweisung hinzu, um die Leistung zu verbessern. Eine Anleitung zum Erstellen von Regex finden Sie unter Regex für Zeilenschlüssel.
- Klicken Sie auf Zur Abfrage hinzufügen.
- Wählen Sie in der Drop-down-Liste Regulärer Ausdruck für Zeilenschlüssel aus.
- Geben Sie einen regulären Ausdruck mit RE2-Syntax ein.
Nach Spalte filtern
Wenn Sie eine oder mehrere Spalten angeben möchten, die in die Abfrage aufgenommen werden sollen, fügen Sie eine columns-Klausel hinzu und wählen Sie die Spaltenfamilie und den Spaltenqualifizierer für jede Spalte aus, nach der Sie filtern möchten. Die Leseanfrage, die beim Hinzufügen dieser Klausel generiert wird, enthält den Spaltenfamilien-Regex-Filter und den Spaltenbereichsfilter.
- Klicken Sie auf Zur Abfrage hinzufügen.
- Wählen Sie in der Drop-down-Liste Spalten aus.
- Klicken Sie in das Feld „Spalten“. Eine Liste der Spaltenfamilien wird angezeigt.
- Klicken Sie auf die ID einer Spaltenfamilie. Eine Liste mit Spaltenqualifizierern wird angezeigt.
- Klicken Sie auf einen Spaltenqualifizierer.
Nach Zeitraum filtern
Wenn Sie nur Zellen mit einem Zeitstempel in einem bestimmten Bereich abrufen möchten, fügen Sie eine Zeitbereichsklausel hinzu, in der der Zeitstempelbereichfilter verwendet wird.
- Klicken Sie auf Zur Abfrage hinzufügen.
- Wählen Sie in der Drop-down-Liste Zeitraum aus.
- Geben Sie einen Startzeitstempel ein.
- Geben Sie einen Endzeitstempel ein.
Geben Sie 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
T
ist ein optionales Literal, das die Zeit angibt, und z
gibt die UTC-Zeit anstelle der Ortszeit an. Weitere Informationen zu Zeitstempelformaten finden Sie unter ISO 8601.
Limit festlegen
Wenn Sie die maximale Anzahl der zurückgegebenen Zeilen angeben möchten, fügen Sie eine LIMIT-Klausel hinzu.
- Klicken Sie auf Zur Abfrage hinzufügen.
- Wählen Sie in der Drop-down-Liste Limit aus.
- Geben Sie eine Zahl zwischen 1 und 1.00 ein.
Beschränkungen
Für den Abfragegenerator 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 gekürztes Ergebnis angezeigt, das mit der Anzahl der nicht angezeigten Zeichen versehen ist.
- Maximal 100 Spalten: Bigtable gibt die ersten 100 Spalten in jeder Zeile zurück, die der Abfrage entsprechen. Spaltenfamilien werden nicht in einer bestimmten Reihenfolge gespeichert, Spalten werden jedoch innerhalb ihrer Spaltenfamilie lexikografisch sortiert.
- Maximal 1.000 Zeilen: Der Abfragegenerator gibt maximal die ersten 1.000 Datenzeilen zurück, die Ihrer Abfrage entsprechen.
- Base64: Bigtable versucht, Base64-codierte Daten korrekt darzustellen, aber die Ergebnisse können nicht garantiert werden. 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 letzte Zelle (oder Version) in den Spalten abrufen, die Sie abfragen. Weitere Informationen zu diesem Konzept finden Sie unter Bigtable-Speichermodell und Allgemeine Konzepte.
Serialisierte Daten: Als Protocol Buffers gespeicherte Daten werden in den Abfrageergebnissen nicht korrekt angezeigt. JSON-Daten werden besser unterstützt, aber es kann nicht garantiert werden, dass sie richtig dargestellt werden.
Künstliche Zeitstempel: Wenn Ihre Anwendung der Zeitstempel-Property von Zellen beim Schreiben von Daten in Ihre Tabelle keine Zeitstempel zuweist, sondern andere Zahlen, können Sie in Ihrer Abfrage Zeitbereichsfilter verwenden, um einen Bereich der Werte abzurufen, die Sie anstelle von Zeitstempeln verwenden, sofern Sie sie als Mikrosekunden angeben. Weitere Informationen dazu, warum für Ihre Tabellendaten möglicherweise künstliche Zeitstempel verwendet werden, finden Sie unter Zeitstempel.