Wenn Sie sich über Cloud Bigtable informieren, erhalten Sie in einer Kurzanleitung einen Einblick in die Grundlagen, die Sie in einer Produktionsumgebung einsetzen.
In dieser Anleitung wird das cbt
-Befehlszeilentool verwendet. Wenn Sie HBase Shell bevorzugen, befolgen Sie stattdessen die Kurzanleitung mit HBase Shell.
In dieser Kurzanleitung führen Sie die folgenden Aktionen aus:
- Verbindung zu einer Cloud Bigtable-Instanz herstellen
- Grundlegende Verwaltungsaufgaben ausführen
- Daten in eine Tabelle schreiben
- Daten aus einer Tabelle lesen
Sie können diese Kurzanleitung mit der Cloud Shell oder in Ihrem lokalen Terminalfenster durchführen.
Wählen Sie ein GCP-Projekt aus oder erstellen Sie es. Wenn Sie die in dieser Kurzanleitung erstellten Ressourcen nicht behalten möchten, erstellen Sie ein neues Projekt. Wenn Sie die Kurzanleitung abgeschlossen haben, löschen Sie das Projekt wieder.
Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein So prüfen Sie, ob die Abrechnung für Ihr Projekt aktiviert ist.
Aktivieren Sie die Cloud Bigtable API und die Cloud Bigtable Admin API.
Nachdem Sie die APIs aktiviert haben, klicken Sie auf Zu den Anmeldedaten.
Beantworten Sie auf der Seite Anmeldedaten die erforderlichen Fragen:
- Wählen Sie als Antwort auf "Welche API verwenden Sie?" Cloud Bigtable API aus.
- Beantworten Sie die Frage zu App Engine oder Compute Engine. In dieser Kurzanleitung werden Sie diese nicht verwenden.
- Klicken Sie auf Welche Anmeldedaten brauche ich?
- Geben Sie die folgenden Informationen an, wenn Sie aufgefordert werden, ein Dienstkonto zu erstellen:
- Wählen Sie einen Namen für Ihr Dienstkonto aus.
- Wählen Sie als Rolle Cloud Bigtable > Bigtable Administrator aus.
- Als Schlüsseltyp wählen Sie JSON aus.
- Klicken Sie auf Weiter.
- Speichern Sie die neu erstellte JSON-Datei des Dienstkontos in Ihrem lokalen Verzeichnis
HOME
oder an Ihrem bevorzugten Speicherort. Sie können diesen Schritt überspringen, wenn Sie die Kurzanleitung in Cloud Shell ausführen möchten.
- Wenn Sie nicht aufgefordert werden, ein neues Dienstkonto zu erstellen, klicken Sie auf Fertig.
Öffnen Sie ein Terminalfenster lokal oder mithilfe von Cloud Shell.
Wenn Sie das lokale Terminalfenster verwenden, legen Sie die Umgebungsvariable
GOOGLE_APPLICATION_CREDENTIALS
fest. Geben Sie für [PATH] den Dateipfad der JSON-Datei an, die Ihren Dienstkontoschlüssel enthält.export GOOGLE_APPLICATION_CREDENTIALS="[PATH]"
Beispiel:
export GOOGLE_APPLICATION_CREDENTIALS="/home/user/Downloads/my-key.json"
Wenn Sie das lokale Terminalfenster verwenden und das Cloud SDK sowie das
cbt
-Tool noch nicht installiert haben, tun Sie dies jetzt. Wenn Sie Cloud Shell verwenden, sind diese Tools vorinstalliert und Sie können diese Schritte überspringen.Installieren Sie das
cbt
-Befehlszeilentool.gcloud components update
gcloud components install cbt
Cloud Bigtable-Instanz erstellen
Öffnen Sie in der Google Cloud Console die Seite Instanz erstellen.
Geben Sie als Instanzname
Quickstart instance
ein.Geben Sie als Instanz-ID
quickstart-instance
ein.Wählen Sie als Speichertyp SSD aus.
Geben Sie als Cluster-ID
quickstart-instance-c1
ein.Wählen Sie als Region eine Region in Ihrer Nähe aus.
Wählen Sie als Zone eine Zone in der ausgewählten Region aus.
Klicken Sie auf Erstellen, um die Instanz zu erstellen.
Mit Instanz verbinden
Konfigurieren Sie
cbt
so, dass Ihr Projekt und Ihre Instanz verwendet werden. Erstellen Sie dazu eine.cbtrc
-Datei und ersetzen Sie project-id durch die ID des Projekts, in dem Sie die Cloud Bigtable-Instanz erstellt haben:echo project = project-id > ~/.cbtrc
echo instance = quickstart-instance >> ~/.cbtrc
Prüfen Sie, ob Sie die Datei
.cbtrc
korrekt eingerichtet haben:cat ~/.cbtrc
Das Terminal zeigt den Inhalt der Datei
.cbtrc
, der in etwa so aussieht:project = project-id instance = quickstart-instance
Jetzt können Sie das
cbt
-Tool mit Ihrer Instanz verwenden.
Daten lesen und schreiben
Cloud Bigtable speichert Daten in Tabellen, die Zeilen enthalten. Jede Zeile wird durch einen Zeilenschlüssel identifiziert.
Daten innerhalb einer Zeile sind in Spaltenfamilien organisiert, d. h. in Gruppen von Spalten. Ein Spaltenqualifizierer identifiziert eine einzelne Spalte innerhalb einer Spaltenfamilie.
Es können mehrere zeitlich gestaffelte Versionen des Werts am Schnittpunkt zwischen einer Zeile und einer Spalte vorhanden sein. Jede Version wird als Zelle bezeichnet.
Erstellen Sie eine Tabelle mit dem Namen
my-table
.cbt createtable my-table
Listen Sie Ihre Tabellen auf:
cbt ls
Die Befehlsausgabe sollte in etwa so aussehen:
my-table
Fügen Sie eine Spaltenfamilie mit dem Namen
cf1
hinzu:cbt createfamily my-table cf1
Listen Sie die Spaltenfamilien auf:
cbt ls my-table
Die Befehlsausgabe sollte in etwa so aussehen:
Family Name GC Policy ----------- --------- cf1 <never>
Geben Sie den Wert
test-value
in der Zeiler1
ein. Nutzen Sie dazu die Spaltenfamiliecf1
und den Spaltenqualifiziererc1
:cbt set my-table r1 cf1:c1=test-value
Verwenden Sie den Befehl
cbt read
, um die Daten zu lesen, die Sie der Tabelle hinzugefügt haben:cbt read my-table
Shell zeigt in etwa Folgendes an:
---------------------------------------- r1 cf1:c1 @ 2019/11/26-15:05:38.840000 "test-value"
Da Sie keinen Zeitstempel angegeben haben, wird dieser automatisch hinzugefügt.
Bereinigen
Löschen Sie die Instanz, um zu vermeiden, dass Ihrem Google Cloud-Konto die in dieser Kurzanleitung verwendeten Ressourcen in Rechnung gestellt werden. Wenn Sie die Datei .cbtrc
löschen, können Sie mit einem anderen Projekt arbeiten.
Löschen Sie die Tabelle
my-table
:cbt deletetable my-table
Löschen Sie die Instanz:
cbt deleteinstance quickstart-instance
Löschen Sie die Datei
.cbtrc
:rm ~/.cbtrc