Hello World C++
Questo esempio è una semplice applicazione "hello world", scritta in C++, che mostra come eseguire le seguenti operazioni:
- Configura l'autenticazione
- Connettiti a un'istanza Bigtable.
- Crea una nuova tabella.
- Scrivi i dati nella tabella.
- Rileggi i dati.
- Elimina la tabella.
Configura l'autenticazione
Per utilizzare gli esempi di C++ in questa pagina in un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura Credenziali predefinite dell'applicazione con le tue credenziali utente.
-
Installa Google Cloud CLI.
-
Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.
-
Se utilizzi una shell locale, crea credenziali di autenticazione locali per il tuo account utente:
gcloud auth application-default login
Non è necessario eseguire questa operazione se utilizzi Cloud Shell.
Se viene restituito un errore di autenticazione e utilizzi un provider di identità (IdP) esterno, verifica di aver acceduto a gcloud CLI con la tua identità federata.
Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Esecuzione dell'esempio
Questo esempio utilizza il pacchetto Cloud Bigtable della libreria clientGoogle Cloud per C++ per comunicare con Bigtable.
Per eseguire questo programma di esempio, segui le istruzioni su GitHub.
Utilizzo della libreria client Google Cloud con Bigtable
L'applicazione di esempio si connette a Bigtable e mostra alcune operazioni semplici.
Installazione e importazione della libreria client
Scarica o clona la libreria client C++ di Bigtable da GitHub, quindi compilala. Segui le istruzioni del compilatore nel README di primo livello.
Includi le intestazioni richieste.
Connessione a Bigtable
Utilizza MakeBigtableTableAdminConnection() per
costruire un BigtableTableAdminClient, che
userai per creare una tabella.
Creazione di una tabella
Definisci uno schema per la tabella con una famiglia di colonne. Imposta una
regola di garbage collection per la famiglia di colonne in modo da conservare al massimo una versione
di ogni valore. Utilizza questo schema per creare un'istanza di un oggetto tabella utilizzando
BigtableTableAdminClient::CreateTable(). Quindi crea un client
di dati che puoi utilizzare per inserire ed estrarre dati dalla tabella.
Scrittura di righe in una tabella
Scorrere un elenco di stringhe di saluto per creare nuove righe per la tabella.
In ogni iterazione, utilizza SingleRowMutation per definire
una riga e assegnarle una chiave di riga e un valore. Poi chiama Table::Apply() per applicare la mutazione alla riga.
Creare un filtro
Prima di leggere i dati che hai scritto, crea un filtro utilizzando Filter::ColumnRangeClosed() per limitare i dati restituiti da Bigtable. Questo filtro indica
a Bigtable di restituire solo la versione più recente di ogni valore,
anche se la tabella contiene celle precedenti scadute ma non ancora
rimosse dalla garbage collection.
Leggere una riga in base alla chiave
Chiama la funzione Table::ReadRow(), passando la chiave di riga e il filtro,
per ottenere una versione di ogni valore in quella riga.
Scansione di tutte le righe della tabella
Utilizza Table::ReadRows() per leggere un intervallo di righe
dalla tabella.
Eliminazione di una tabella
Elimina la tabella con BigtableTableAdminClient::DeleteTable().
In sintesi
Ecco l'esempio completo senza commenti.