Eseguire il test utilizzando l'emulatore
Google Cloud CLI fornisce un emulatore in memoria locale per Bigtable, che puoi utilizzare per testare la tua applicazione. Poiché l'emulatore archivia i dati solo in memoria, non li mantiene 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 di amministrazione 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 tramite l'interfaccia a riga di comando gcloud e Docker. Scegli il metodo più adatto per lo sviluppo e il flusso di lavoro di test dell'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 il seguente 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 su 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 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 del contenitore alle stesse porte sull'host locale.
Puoi anche utilizzare l'emulatore come parte del file di configurazione Docker Compose (.yaml
) esistente.
Per ulteriori informazioni 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
All'avvio dell'applicazione, la libreria client cerca automaticamenteBIGTABLE_EMULATOR_HOST
e si connette all'emulatore se è in esecuzione.
Una volta impostato BIGTABLE_EMULATOR_HOST
, puoi testare l'emulatore seguendo i sample di Hello World.
Per arrestare l'emulatore, digita Ctrl-C, quindi reimposta 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 i test.
Per ulteriori 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 limitante Sink
.
I problemi relativi all'emulatore Bigtable vengono monitorati nel repository GitHub google-cloud-go, dove puoi inviare segnalazioni di bug e richieste di funzionalità o commentare i problemi esistenti.