Menguji menggunakan emulator

Google Cloud CLI menyediakan emulator lokal dalam memori untuk Bigtable, yang dapat Anda gunakan untuk menguji aplikasi. Karena emulator hanya menyimpan data dalam memori, emulator tidak akan mempertahankan data di seluruh operasi. Ini ditujukan untuk membantu Anda menggunakan Bigtable untuk pengembangan dan pengujian lokal, bukan untuk deployment produksi.

Anda dapat menggunakan emulator dengan semua library klien Cloud Bigtable.

Emulator tidak menyediakan API administratif untuk membuat atau mengelola instance dan cluster. Setelah emulator dimulai, Anda dapat terhubung ke emulator menggunakan nama project dan instance untuk membuat tabel serta membaca atau menulis data. Emulator tidak mendukung koneksi aman.

Menginstal dan menjalankan emulator

Dua cara paling umum untuk menjalankan emulator adalah dengan menggunakan gcloud CLI dan Docker. Pilih cara yang sesuai untuk pengembangan aplikasi dan alur kerja pengujian Anda.

Menyiapkan autentikasi

In the Google Cloud console, activate Cloud Shell.

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.

gcloud CLI

  1. Update penginstalan gcloud CLI Anda untuk mendapatkan fitur terbaru:

    gcloud components update beta
    
  2. Jalankan perintah berikut untuk memulai emulator:

    gcloud beta emulators bigtable start
    

    Jika emulator belum diinstal, Anda akan diminta untuk mendownload dan menginstal biner untuk emulator.

    Emulator akan mencetak host dan nomor port tempatnya berjalan.

    Secara default, emulator memilih localhost:8086. Untuk mengikat emulator ke host dan port tertentu, gunakan flag --host-port opsional, yang menggantikan HOST dan PORT:

    gcloud beta emulators bigtable start --host-port=HOST:PORT
    

    Berikut adalah contohnya:

    gcloud beta emulators bigtable start --host-port=localhost:8086
    
  3. Ketik Control-C untuk menghentikan emulator.

Docker

  1. Pastikan Docker diinstal di sistem Anda dan tersedia di jalur sistem.

  2. Mulai emulator:

    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
    

    Perintah ini menjalankan emulator dan memetakan port dalam penampung ke port yang sama di host lokal Anda.

Anda juga dapat menggunakan emulator sebagai bagian dari file konfigurasi Docker Compose (.yaml) yang ada. Untuk informasi selengkapnya tentang Docker Compose, lihat Ringkasan Docker Compose.

Menggunakan library klien dengan emulator

Tetapkan variabel lingkungan BIGTABLE_EMULATOR_HOST untuk menggunakan library klien dengan emulator:

Linux / macOS

  export BIGTABLE_EMULATOR_HOST=localhost:8086

Windows

  set BIGTABLE_EMULATOR_HOST=localhost:8086

Saat aplikasi Anda dimulai, library klien akan otomatis memeriksa BIGTABLE_EMULATOR_HOST dan terhubung ke emulator jika sedang berjalan.

Setelah BIGTABLE_EMULATOR_HOST ditetapkan, Anda dapat menguji emulator dengan mengikuti contoh hello world.

Untuk menghentikan emulator, ketik Control-C, lalu batalkan penetapan BIGTABLE_EMULATOR_HOST dengan perintah berikut:

    unset BIGTABLE_EMULATOR_HOST

Wrapper Java untuk emulator

Wrapper Java memaketkan emulator Bigtable bawaan dan menyediakan antarmuka Java untuk menulis pengujian.

Untuk informasi selengkapnya tentang cara menggunakan wrapper Java, lihat repositori GitHub.

Dokumentasi berikut memberikan informasi selengkapnya tentang paket Java emulator:

Filter

Emulator mendukung semua filter, kecuali filter pembatas Sink.

Masalah terkait emulator Bigtable dilacak di repositori GitHub google-cloud-go, tempat Anda dapat mengajukan laporan bug dan permintaan fitur atau mengomentari masalah yang ada.