Menguji menggunakan emulator

Google Cloud CLI menyediakan emulator dalam memori lokal untuk Bigtable, yang dapat Anda gunakan untuk menguji aplikasi. Karena emulator hanya menyimpan data dalam memori, emulator tidak akan mempertahankan data di seluruh proses. Emulator ini dimaksudkan 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 apa pun 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 alur kerja pengembangan dan pengujian aplikasi Anda.

Menyiapkan autentikasi

Di konsol, aktifkan Cloud Shell. Google Cloud

Aktifkan Cloud Shell

Di bagian bawah konsol Google Cloud , sesi Cloud Shell akan dimulai dan menampilkan prompt command line. Cloud Shell adalah lingkungan shell dengan Google Cloud CLI yang sudah terinstal, dan dengan nilai yang sudah ditetapkan untuk project Anda saat ini. Diperlukan waktu beberapa detik untuk melakukan inisialisasi pada sesi.

gcloud CLI

  1. Update penginstalan gcloud CLI 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 tempat emulator berjalan.

    Secara default, emulator akan memilih localhost:8086. Untuk mengikat emulator ke host dan port tertentu, gunakan flag --host-port opsional, dengan mengganti 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 container ke port yang sama di host lokal Anda.

Anda juga dapat menggunakan emulator sebagai bagian dari file konfigurasi Docker Compose (.yaml) yang ada. Untuk mengetahui 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 hapus setelan BIGTABLE_EMULATOR_HOST dengan perintah berikut:

    unset BIGTABLE_EMULATOR_HOST

Wrapper Java untuk emulator

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

Untuk mengetahui 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 pembatasan Sink.

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