יצירת מכונה וכתיבת נתונים באמצעות ה-CLI של cbt

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

במדריך למתחילים הזה תבצעו את הפעולות הבאות:

  • מתחברים למכונה של Bigtable.
  • ביצוע משימות ניהוליות בסיסיות.
  • כתיבת נתונים לטבלה.
  • קריאת נתונים מטבלה.

לפני שמתחילים

  1. נכנסים לחשבון Google Cloud . אם אתם משתמשים חדשים ב- Google Cloud, צרו חשבון כדי שתוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
  2. התקינו את ה-CLI של Google Cloud.

  3. אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.

  4. כדי לאתחל את ה-CLI של gcloud, הריצו את הפקודה הבאה:

    gcloud init
  5. יוצרים או בוחרים Google Cloud פרויקט.

    תפקידים שנדרשים כדי לבחור או ליצור פרויקט

    • Select a project: כדי לבחור פרויקט לא צריך תפקיד IAM ספציפי – אפשר לבחור כל פרויקט שקיבלתם בו תפקיד.
    • יצירת פרויקט: כדי ליצור פרויקט, צריך את התפקיד Project Creator (יצירת פרויקטים) (roles/resourcemanager.projectCreator), שכולל את ההרשאה resourcemanager.projects.create. איך מקצים תפקידים
    • יוצרים Google Cloud פרויקט:

      gcloud projects create PROJECT_ID

      מחליפים את PROJECT_ID בשם של פרויקט Google Cloud שיוצרים.

    • בוחרים את הפרויקט שיצרתם: Google Cloud

      gcloud config set project PROJECT_ID

      מחליפים את PROJECT_ID בשם הפרויקט ב- Google Cloud .

  6. מוודאים שהחיוב מופעל בפרויקט Google Cloud .

  7. מפעילים את Cloud Bigtable API ואת Cloud Bigtable Admin API:

    תפקידים שנדרשים להפעלת ממשקי API

    כדי להפעיל ממשקי API, צריך את תפקיד ה-IAM 'אדמין של Service Usage' (roles/serviceusage.serviceUsageAdmin), שכולל את ההרשאה serviceusage.services.enable. איך מקצים תפקידים

    gcloud services enable bigtable.googleapis.com bigtableadmin.googleapis.com
  8. מעניקים תפקידים לחשבון המשתמש. מריצים את הפקודה הבאה לכל אחד מהתפקידים הבאים ב-IAM: roles/bigtable.admin

    gcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE

    מחליפים את מה שכתוב בשדות הבאים:

    • PROJECT_ID: מזהה הפרויקט.
    • USER_IDENTIFIER: המזהה של חשבון המשתמש . לדוגמה, myemail@example.com.
    • ROLE: תפקיד ה-IAM שאתם מקצים לחשבון המשתמש.
  9. התקינו את ה-CLI של Google Cloud.

  10. אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.

  11. כדי לאתחל את ה-CLI של gcloud, הריצו את הפקודה הבאה:

    gcloud init
  12. יוצרים או בוחרים Google Cloud פרויקט.

    תפקידים שנדרשים כדי לבחור או ליצור פרויקט

    • Select a project: כדי לבחור פרויקט לא צריך תפקיד IAM ספציפי – אפשר לבחור כל פרויקט שקיבלתם בו תפקיד.
    • יצירת פרויקט: כדי ליצור פרויקט, צריך את התפקיד Project Creator (יצירת פרויקטים) (roles/resourcemanager.projectCreator), שכולל את ההרשאה resourcemanager.projects.create. איך מקצים תפקידים
    • יוצרים Google Cloud פרויקט:

      gcloud projects create PROJECT_ID

      מחליפים את PROJECT_ID בשם של פרויקט Google Cloud שיוצרים.

    • בוחרים את הפרויקט שיצרתם: Google Cloud

      gcloud config set project PROJECT_ID

      מחליפים את PROJECT_ID בשם הפרויקט ב- Google Cloud .

  13. מוודאים שהחיוב מופעל בפרויקט Google Cloud .

  14. מפעילים את Cloud Bigtable API ואת Cloud Bigtable Admin API:

    תפקידים שנדרשים להפעלת ממשקי API

    כדי להפעיל ממשקי API, צריך את תפקיד ה-IAM 'אדמין של Service Usage' (roles/serviceusage.serviceUsageAdmin), שכולל את ההרשאה serviceusage.services.enable. איך מקצים תפקידים

    gcloud services enable bigtable.googleapis.com bigtableadmin.googleapis.com
  15. מעניקים תפקידים לחשבון המשתמש. מריצים את הפקודה הבאה לכל אחד מהתפקידים הבאים ב-IAM: roles/bigtable.admin

    gcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE

    מחליפים את מה שכתוב בשדות הבאים:

    • PROJECT_ID: מזהה הפרויקט.
    • USER_IDENTIFIER: המזהה של חשבון המשתמש . לדוגמה, myemail@example.com.
    • ROLE: תפקיד ה-IAM שאתם מקצים לחשבון המשתמש.
  16. מריצים את הפקודה הבאה כדי להתקין את ה-CLI של cbt:
    gcloud components install cbt

יצירת מכונה של Bigtable

  1. פותחים את הדף Create instance במסוף Google Cloud .

    יצירת מופע

  2. בשדה Instance name, מזינים Quickstart instance.

  3. בשדה Instance ID, מזינים quickstart-instance.

  4. לוחצים על Continue.

  5. בקטע Storage type (סוג האחסון), בוחרים באפשרות SSD.

  6. לוחצים על Continue.

  7. בשדה מזהה האשכול, מזינים quickstart-instance-c1.

  8. בשדה Region, בוחרים אזור שקרוב אליכם.

  9. בשדה Zone, בוחרים באפשרות Any (כל אזור).

  10. בקטע Node scaling mode (מצב שינוי גודל הצומת), בוחרים באפשרות Manual allocation (הקצאה ידנית).

  11. בשדה כמות, בוחרים באפשרות 1.

  12. לוחצים על יצירה כדי ליצור את המופע.

התחברות למכונה

  1. מגדירים את cbt CLI כך שישתמש בפרויקט ובמופע שלכם על ידי יצירת קובץ .cbtrc והחלפת PROJECT_ID במזהה של הפרויקט שבו יצרתם את מופע Bigtable:

    echo project = PROJECT_ID >> ~/.cbtrc && echo instance = quickstart-instance >> ~/.cbtrc
    
  2. מוודאים שהגדרתם את הקובץ .cbtrc בצורה נכונה:

    cat ~/.cbtrc

    במסוף מוצג התוכן של הקובץ .cbtrc, שנראה כך:

    project = PROJECT_ID
    instance = quickstart-instance

    עכשיו אפשר להשתמש ב-cbt CLI עם המופע.

קריאה וכתיבה של נתונים

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

הנתונים בשורה מאורגנים במשפחות עמודות, שהן קבוצות של עמודות. מגדיר עמודה מזהה עמודה יחידה בתוך קבוצת עמודות.

יכולים להיות כמה תאים עם חותמת זמן בנקודת החיתוך של שורה ועמודה.

  1. יוצרים טבלה בשם my-table.

    cbt createtable my-table
  2. הצגת רשימת הטבלאות:

    cbt ls

    הפלט של הפקודה אמור להיראות כך:

        my-table

  3. מוסיפים קבוצת עמודות אחת בשם cf1:

    cbt createfamily my-table cf1
  4. מציגים את קבוצות העמודות:

    cbt ls my-table

    הפלט של הפקודה אמור להיראות כך:

        Family Name     GC Policy
        -----------     ---------
        cf1             <never>

  5. כותבים את הערכים test-value1 ו-test-value2 לשורה r1, באמצעות קבוצת העמודות cf1 ומגדיר העמודה c1:

    cbt set my-table r1 cf1:c1=test-value1
      cbt set my-table r1 cf1:c1=test-value2
    
  6. משתמשים בפקודה cbt read כדי לקרוא את הנתונים שהוספתם לטבלה:

    cbt read my-table

    הפלט שמוצג במעטפת אמור להיראות כך:

        ----------------------------------------
        r1
          cf1:c1                                   @ 2023/03/22-06:56:11.323000
            "test-value1"
          cf1:c1                                   @ 2023/03/22-06:56:04.361000
            "test-value2"

    בשורה r1 מאוחסנים שני ערכים עם חותמת זמן באותה עמודה.

הסרת המשאבים

כדי להימנע מחיובים בחשבון Google Cloud על המשאבים שבהם השתמשתם במדריך למתחילים הזה, מוחקים את המופע. מחיקת הקובץ .cbtrc מאפשרת לכם לעבוד על פרויקט אחר.

  1. מחיקת הטבלה my-table:

    cbt deletetable my-table
  2. מוחקים את המכונה:

    cbt deleteinstance quickstart-instance
  3. מוחקים את הקובץ .cbtrc:

    rm ~/.cbtrc

  4. אם רוצים, מבטלים את פרטי הכניסה של ה-CLI של gcloud:

    gcloud auth revoke

המאמרים הבאים