יצירת מכונה וכתיבת נתונים באמצעות ה-CLI של cbt
אם אתם לומדים על Bigtable, אתם יכולים לעבור על מדריך להתחלה מהירה כדי להכיר את העקרונות הבסיסיים שבהם תשתמשו בסביבת ייצור.
במדריך למתחילים הזה תבצעו את הפעולות הבאות:
- מתחברים למכונה של Bigtable.
- ביצוע משימות ניהוליות בסיסיות.
- כתיבת נתונים בטבלה.
- קריאת נתונים מטבלה.
לפני שמתחילים
- נכנסים לחשבון Google Cloud . אם אתם משתמשים חדשים ב- Google Cloud, צרו חשבון כדי שתוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
-
התקינו את ה-CLI של Google Cloud.
-
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
-
כדי לאתחל את ה-CLI של gcloud, הריצו את הפקודה הבאה:
gcloud init -
יוצרים או בוחרים 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 .
מפעילים את Cloud Bigtable API ואת Cloud Bigtable Admin API, אם הם עדיין לא מופעלים:
תפקידים שנדרשים להפעלת ממשקי API
כדי להפעיל ממשקי API, נדרשת ההרשאה
serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד 'בעלים' (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד 'אדמין בממשק Service Usage' (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידיםgcloud services enable bigtable.googleapis.com
bigtableadmin.googleapis.com -
מעניקים תפקידים לחשבון המשתמש. מריצים את הפקודה הבאה לכל אחד מהתפקידים הבאים ב-IAM:
roles/bigtable.admingcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט. -
USER_IDENTIFIER: המזהה של חשבון המשתמש . לדוגמה,myemail@example.com. -
ROLE: תפקיד ה-IAM שאתם מקצים לחשבון המשתמש.
-
-
התקינו את ה-CLI של Google Cloud.
-
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
-
כדי לאתחל את ה-CLI של gcloud, הריצו את הפקודה הבאה:
gcloud init -
יוצרים או בוחרים 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 .
מפעילים את Cloud Bigtable API ואת Cloud Bigtable Admin API, אם הם עדיין לא מופעלים:
תפקידים שנדרשים להפעלת ממשקי API
כדי להפעיל ממשקי API, נדרשת ההרשאה
serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד 'בעלים' (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד 'אדמין בממשק Service Usage' (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידיםgcloud services enable bigtable.googleapis.com
bigtableadmin.googleapis.com -
מעניקים תפקידים לחשבון המשתמש. מריצים את הפקודה הבאה לכל אחד מהתפקידים הבאים ב-IAM:
roles/bigtable.admingcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט. -
USER_IDENTIFIER: המזהה של חשבון המשתמש . לדוגמה,myemail@example.com. -
ROLE: תפקיד ה-IAM שאתם מקצים לחשבון המשתמש.
-
- מריצים את הפקודה הבאה כדי להתקין את
cbtCLI :gcloud components install cbt
יצירת מכונה של Bigtable
פותחים את הדף Create instance במסוף Google Cloud .
בשדה Instance name (שם האירוע), מזינים
Quickstart instance.בשדה Instance ID (מזהה מכונה), מזינים
quickstart-instance.לוחצים על Continue.
בקטע Storage type, בוחרים באפשרות SSD.
לוחצים על Continue.
בשדה מזהה האשכול, מזינים
quickstart-instance-c1.בשדה Region, בוחרים אזור שקרוב אליכם.
בשדה Zone, בוחרים באפשרות Any (כל אזור).
בקטע מצב שינוי גודל הצומת, בוחרים באפשרות הקצאה ידנית.
בשדה כמות, בוחרים באפשרות 1.
לוחצים על יצירה כדי ליצור את המופע.
התחברות למכונה
מגדירים את
cbtCLI כך שישתמש בפרויקט ובמופע שלכם על ידי יצירת קובץ.cbtrc, והחלפתPROJECT_IDבמזהה של הפרויקט שבו יצרתם את מופע Bigtable:echo project = PROJECT_ID >> ~/.cbtrc && echo instance = quickstart-instance >> ~/.cbtrc
מוודאים שהגדרתם את הקובץ
.cbtrcבצורה נכונה:cat ~/.cbtrc
במסוף מוצג התוכן של הקובץ
.cbtrc, שנראה כך:project = PROJECT_ID instance = quickstart-instance
עכשיו אפשר להשתמש ב-
cbtCLI עם המופע.
קריאה וכתיבה של נתונים
ב-Bigtable הנתונים מאוחסנים בטבלאות, שמכילות שורות. כל שורה מזוהה באמצעות מפתח שורה.
הנתונים בשורה מאורגנים במשפחות עמודות, שהן קבוצות של עמודות. מגדיר העמודה מזהה עמודה יחידה בתוך קבוצת עמודות.
יכולים להיות כמה תאים עם חותמת זמן בנקודת החיתוך של שורה ועמודה.
יוצרים טבלה בשם
my-table.cbt createtable my-table
הצגת רשימת הטבלאות:
cbt ls
הפלט של הפקודה אמור להיראות כך:
my-tableהוספת קבוצת עמודות אחת בשם
cf1:cbt createfamily my-table cf1
מציגים את רשימת קבוצות העמודות:
cbt ls my-table
הפלט של הפקודה אמור להיראות כך:
Family Name GC Policy ----------- --------- cf1 <never>כותבים את הערכים
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
משתמשים בפקודה
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 מאפשרת לכם לעבוד על פרויקט אחר.
מחיקת הטבלה
my-table:cbt deletetable my-table
מוחקים את המכונה:
cbt deleteinstance quickstart-instance
מוחקים את הקובץ
.cbtrc:rm ~/.cbtrc
אם רוצים, מבטלים את פרטי הכניסה של ה-CLI של gcloud:
gcloud auth revoke
המאמרים הבאים
- עוברים על שיעור Codelab בנושא Bigtable.
-
cbtמאמרי העזרה של CLI - דוגמה לקוד מקור לתרחיש לדוגמה של זיהוי הונאות
- לכתוב אפליקציית Hello World ב-C#, C++, Go, Java, Node.js, PHP, Python, Ruby או באמצעות לקוח HBase ל-Java.