C++ Hello World
Dieses Beispiel ist eine einfache "Hello World"-Anwendung, die in C++ geschrieben wurde. Sie veranschaulicht Folgendes:
- Authentifizierung einrichten
- Verbindung zu einer Bigtable-Instanz herstellen
- Erstellen einer neuen Tabelle
- Schreiben von Daten in die Tabelle
- Lesen von Daten aus der Tabelle
- Löschen einer Tabelle
Authentifizierung einrichten
Wenn Sie die C++ Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung verwenden möchten, installieren und initialisieren Sie die gcloud CLI und richten dann die Standardanmeldedaten für Anwendungen mit Ihren Nutzeranmeldedaten ein.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
Weitere Informationen unter Set up authentication for a local development environment.
Beispiel ausführen
Dieses Beispiel nutzt das Cloud Bigtable-Paket der Google Cloud-Clientbibliothek für C++, um mit Bigtable zu kommunizieren.
Für die Ausführung dieses Beispielprogramms folgen Sie der Anleitung auf GitHub.
Google Cloud-Clientbibliothek mit Bigtable verwenden
Die Beispielanwendung stellt eine Verbindung zu Bigtable her und zeigt einige einfache Vorgänge.
Clientbibliothek importieren und installieren
Laden Sie die Bigtable-Clientbibliothek für C++ von GitHub herunter oder klonen Sie sie, und kompilieren Sie diese anschließend. Folgen Sie der Compiler-Anleitung in der README-Datei auf oberster Ebene.
Fügen Sie die erforderlichen Header hinzu.
Verbindung zu Bigtable herstellen
Verwenden Sie MakeBigtableTableAdminConnection()
, um einen BigtableTableAdminClient
zu erstellen, mit dem Sie dann eine Tabelle anlegen.
Tabelle erstellen
Definieren Sie ein Schema für die Tabelle mit einer Spaltenfamilie. Legen Sie eine Regel für die automatische Speicherbereinigung für die Spaltenfamilie fest, um maximal eine Version jedes Werts beizubehalten. Verwenden Sie dieses Schema, um ein Tabellenobjekt mit BigtableTableAdminClient::CreateTable()
zu instanziieren. Erstellen Sie dann einen Datenclient, mit dem Sie Daten in Ihre Tabelle einfügen und daraus entfernen können.
Zeilen in eine Tabelle schreiben
Sie durchlaufen eine Liste mit Begrüßungsstrings in einer Schleife, um einige neue Zeilen für die Tabelle zu erstellen.
In jeder Iteration verwenden Sie SingleRowMutation
, um eine Zeile zu definieren und dieser einen Zeilenschlüssel zuzuweisen. Rufen Sie dann Table::Apply()
auf, um die Mutation auf die Zeile anzuwenden.
Filter erstellen
Erstellen Sie vor dem Lesen der von Ihnen geschriebenen Daten mit Filter::ColumnRangeClosed()
einen Filter, um die von Bigtable zurückgegebenen Daten zu beschränken. Mit diesem Filter wird Bigtable angewiesen, nur die neueste Version jedes Werts zurückzugeben, auch wenn die Tabelle ältere Zellen enthält, die abgelaufen sind, aber noch nicht durch die automatische Speicherbereinigung entfernt wurden.
Zeile nach ihrem Schlüssel lesen
Rufen Sie die Funktion Table::ReadRow()
auf, die den Zeilenschlüssel und den Filter übergibt, sodass Sie eine Version jedes Werts dieser Zeile erhalten.
Alle Tabellenzeilen scannen
Verwenden Sie Table::ReadRows()
, um einen Bereich von Zeilen aus einer Tabelle zu lesen.
Tabelle löschen
Löschen Sie die Tabelle mit BigtableTableAdminClient::DeleteTable()
.
Zusammenfassung
Hier ist das gesamte Beispiel ohne Kommentare: