使用模擬器進行測試
Google Cloud CLI 提供 Bigtable 的本機記憶體內模擬器,可用於測試應用程式。由於模擬器只會在記憶體中儲存資料,因此不會在執行期間保留資料。這項工具旨在協助您在本機開發及測試時使用 Bigtable,而非用於正式環境部署作業。
您可以使用模擬器搭配所有 Cloud Bigtable 用戶端程式庫。
模擬器並沒有提供管理 API 以建立或管理執行個體及叢集。模擬器啟動後,您可以使用任何專案和執行個體名稱連線至模擬器,建立資料表並讀取或寫入資料。模擬器不支援安全連線。
安裝並執行模擬器
執行模擬器最常見的兩種方式是使用 gcloud CLI 和 Docker。請選擇適合應用程式開發和測試工作流程的方式。
設定驗證方法
在 Google Cloud 控制台中啟用 Cloud Shell。
Google Cloud 控制台底部會開啟 Cloud Shell 工作階段,並顯示指令列提示。Cloud Shell 是已安裝 Google Cloud CLI 的殼層環境,並已設定適用於您目前專案的值。工作階段可能要幾秒鐘的時間才能初始化。
gcloud CLI
更新 gcloud CLI 安裝項目,取得最新功能:
gcloud components update beta執行以下指令來啟用模擬器:
gcloud beta emulators bigtable start若您尚未安裝模擬器,系統將會提示您下載及安裝二進位檔以使用模擬器。
模擬器會顯示正在執行的主機和通訊埠編號。
模擬器預設會選擇
localhost:8086。如要將模擬器繫結至特定主機和通訊埠,請使用選用的--host-port旗標,並替換 HOST 和 PORT:gcloud beta emulators bigtable start --host-port=HOST:PORT範例如下:
gcloud beta emulators bigtable start --host-port=localhost:8086按下「Ctrl+C」以停止模擬器。
Docker
確認系統已安裝 Docker,且系統路徑中提供該程式。
啟動模擬器:
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這個指令會執行模擬器,並將容器中的通訊埠對應至本機主機上的相同通訊埠。
您也可以在現有的 Docker Compose 設定 (.yaml) 檔案中使用模擬器。
如要進一步瞭解 Docker Compose,請參閱「Docker Compose 總覽」。
搭配模擬器使用用戶端程式庫
設定 BIGTABLE_EMULATOR_HOST 環境變數,以便搭配模擬器使用用戶端程式庫:
Linux / macOS
export BIGTABLE_EMULATOR_HOST=localhost:8086
Windows
set BIGTABLE_EMULATOR_HOST=localhost:8086
應用程式啟動時,用戶端程式庫會自動檢查 BIGTABLE_EMULATOR_HOST,並在模擬器執行時連線。
設定 BIGTABLE_EMULATOR_HOST 後,您可以按照「Hello World」範例測試模擬器。
如要停止模擬器,請輸入 Control-C,然後使用下列指令取消設定 BIGTABLE_EMULATOR_HOST:
unset BIGTABLE_EMULATOR_HOST
模擬器的 Java 包裝函式
Java 包裝函式會將內建的 Bigtable 模擬器與 Java 介面綁在一起,方便您編寫測試。
如要進一步瞭解如何使用 Java 包裝函式,請參閱 GitHub 存放區。
如要進一步瞭解模擬器 Java 封裝,請參閱下列說明文件:
篩選器
模擬器支援所有篩選器,但 Sink 限制篩選器除外。
Bigtable 模擬器相關問題會記錄在 google-cloud-go GitHub 存放區中,您可以在該處回報錯誤、提出功能要求,或對現有問題發表意見。