בדיקה באמצעות האמולטור

Google Cloud CLI מספק אמולטור מקומי בזיכרון ל-Bigtable, שבו אפשר להשתמש כדי לבדוק את האפליקציה. מכיוון שהנתונים נשמרים באמולטור רק בזיכרון, הם לא יישמרו בין הפעלות. הכלי הזה מיועד לעזור לכם להשתמש ב-Bigtable לפיתוח ולבדיקה מקומיים, ולא לפריסות בסביבת ייצור.

אפשר להשתמש באמולטור עם כל ספריות הלקוח של Cloud Bigtable.

האמולטור לא מספק ממשקי API לניהול כדי ליצור או לנהל מופעים ואשכולות. אחרי שהאמולטור מופעל, אפשר להתחבר אליו באמצעות כל שם של פרויקט ומופע כדי ליצור טבלאות ולקרוא או לכתוב נתונים. האמולטור לא תומך בחיבור מאובטח.

התקנה והרצה של האמולטור

שתי הדרכים הנפוצות ביותר להפעלת האמולטור הן באמצעות ה-CLI של gcloud וDocker. בוחרים את הדרך שמתאימה לתהליך העבודה של פיתוח האפליקציה והבדיקה שלה.

מגדירים אימות

במסוף Google Cloud , מפעילים את Cloud Shell.

הפעלת Cloud Shell

בחלק התחתון של Google Cloud המסוף יתחיל סשן של Cloud Shell ותופיע הודעה של שורת הפקודה. Cloud Shell היא סביבת מעטפת שבה ה-CLI של Google Cloud מותקן ומוגדרים ערכים לפרויקט הקיים. הסשן יופעל תוך כמה שניות.

‫CLI של gcloud

  1. כדי לקבל את התכונות העדכניות, צריך לעדכן את ההתקנה של ה-CLI של gcloud:

    gcloud components update beta
    
  2. מריצים את הפקודה הבאה כדי להפעיל את האמולטור:

    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
    
  3. מקישים על Control-C כדי להפסיק את פעולת האמולטור.

Docker

  1. מוודאים ש-Docker מותקן במערכת וזמין בנתיב המערכת.

  2. מפעילים את האמולטור:

    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 wrapper לאמולטור

חבילת ה-wrapper של Java כוללת את האמולטור המובנה של Bigtable ומספקת ממשק Java לכתיבת בדיקות.

מידע נוסף על השימוש ב-wrapper של Java זמין במאגר GitHub.

במאמרים הבאים תוכלו לקרוא מידע נוסף על חבילות Java של האמולטור:

מסננים

האמולטור תומך בכל המסננים, חוץ ממסנן ההגבלה Sink.

בעיות שקשורות לאמולטור Bigtable מתועדות במאגר google-cloud-go ב-GitHub. שם אפשר לדווח על באגים, לשלוח בקשות לתכונות חדשות או להגיב על בעיות קיימות.