Testare utilizzando l'emulatore
Google Cloud CLI fornisce un emulatore locale in memoria per Bigtable, che puoi utilizzare per testare la tua applicazione. Poiché l'emulatore archivia i dati solo in memoria, non li conserva tra le esecuzioni. È pensato per aiutarti a utilizzare Bigtable per lo sviluppo e i test locali, non per i deployment di produzione.
Puoi utilizzare l'emulatore con tutte le librerie client di Cloud Bigtable.
L'emulatore non fornisce API amministrative per creare o gestire istanze e cluster. Dopo l'avvio dell'emulatore, puoi connetterti utilizzando qualsiasi nome di progetto e istanza per creare tabelle e leggere o scrivere dati. L'emulatore non supporta una connessione sicura.
Installa ed esegui l'emulatore
I due modi più comuni per eseguire l'emulatore sono l'utilizzo dell'interfaccia a riga di comando gcloud e di Docker. Scegli il metodo più appropriato per lo sviluppo e il flusso di lavoro di test della tua applicazione.
Configura l'autenticazione
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Interfaccia a riga di comando gcloud
Aggiorna l'installazione di gcloud CLI per ottenere le funzionalità più recenti:
gcloud components update beta
Esegui questo comando per avviare l'emulatore:
gcloud beta emulators bigtable start
Se l'emulatore non è già installato, ti verrà chiesto di scaricare e installare il file binario per l'emulatore.
L'emulatore stampa l'host e il numero di porta in cui è in esecuzione.
Per impostazione predefinita, l'emulatore sceglie
localhost:8086
. Per associare l'emulatore a un host e una porta specifici, utilizza il flag facoltativo--host-port
, sostituendo HOST e PORT:gcloud beta emulators bigtable start --host-port=HOST:PORT
Di seguito è riportato un esempio:
gcloud beta emulators bigtable start --host-port=localhost:8086
Digita Ctrl+C per arrestare l'emulatore.
Docker
Assicurati che Docker sia installato sul tuo sistema e disponibile nel percorso di sistema.
Avvia l'emulatore:
docker run -p 127.0.0.1:8086:8086 --rm -ti google/cloud-sdk gcloud beta emulators bigtable start --host-port=0.0.0.0:8086
Questo comando esegue l'emulatore e mappa le porte nel container alle stesse porte sull'host locale.
Puoi anche utilizzare l'emulatore come parte del file di configurazione Docker Compose (.yaml
) esistente.
Per saperne di più su Docker Compose, consulta la panoramica di Docker Compose.
Utilizzare le librerie client con l'emulatore
Imposta la variabile di ambiente BIGTABLE_EMULATOR_HOST
per utilizzare le librerie client con l'emulatore:
Linux / macOS
export BIGTABLE_EMULATOR_HOST=localhost:8086
Windows
set BIGTABLE_EMULATOR_HOST=localhost:8086
Quando l'applicazione viene avviata, la libreria client verifica automaticamente la presenza di
BIGTABLE_EMULATOR_HOST
e si connette all'emulatore se è in esecuzione.
Una volta impostato BIGTABLE_EMULATOR_HOST
, puoi testare l'emulatore seguendo gli
esempi di Hello World.
Per arrestare l'emulatore, digita Control-C, quindi annulla l'impostazione di BIGTABLE_EMULATOR_HOST
con il seguente comando:
unset BIGTABLE_EMULATOR_HOST
Wrapper Java per l'emulatore
Il wrapper Java raggruppa l'emulatore Bigtable integrato e fornisce un'interfaccia Java per scrivere test.
Per maggiori informazioni sull'utilizzo del wrapper Java, consulta il repository GitHub.
La seguente documentazione fornisce ulteriori informazioni sui pacchetti Java dell'emulatore:
Filtri
L'emulatore supporta tutti i filtri, ad eccezione del filtro di limitazione Sink
.
I problemi relativi all'emulatore Bigtable vengono monitorati nel repository GitHub google-cloud-go, dove puoi segnalare bug e richieste di funzionalità o commentare i problemi esistenti.