שלום עולם ב-C++
הדוגמה הזו היא אפליקציית hello world פשוטה, שנכתבה ב-C++, שממחישה איך לבצע את הפעולות הבאות:
- מגדירים אימות
- מתחברים למכונה של Bigtable.
- ליצור טבלה חדשה.
- כתיבת נתונים בטבלה.
- קוראים את הנתונים בחזרה.
- מוחקים את הטבלה.
מגדירים אימות
כדי להשתמש בדוגמאות של C++ שבדף הזה בסביבת פיתוח מקומית, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
-
התקינו את ה-CLI של Google Cloud.
-
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
-
אם אתם משתמשים במעטפת מקומית, אתם צריכים ליצור פרטי כניסה לאימות מקומי עבור חשבון המשתמש:
gcloud auth application-default login
אם אתם משתמשים ב-Cloud Shell, אין צורך לבצע את הפעולה הזו.
אם מוחזרת שגיאת אימות ואתם משתמשים בספק זהויות חיצוני (IdP), ודאו ש נכנסתם ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
הרצת הדוגמה
בדוגמה הזו נעשה שימוש בחבילת Cloud Bigtable של ספריית הלקוחGoogle Cloud ל-C++ כדי לתקשר עם Bigtable.
כדי להריץ את תוכנית הדוגמה הזו, פועלים לפי ההוראות ב-GitHub.
שימוש בספריית הלקוח עם Bigtable Google Cloud
אפליקציית הדוגמה מתחברת ל-Bigtable ומדגימה כמה פעולות פשוטות.
התקנה וייבוא של ספריית הלקוח
מורידים או משכפלים את ספריית הלקוח של Bigtable C++ מ-GitHub, ואז מהדרים אותה. פועלים לפי ההוראות של הקומפיילר בקובץ README ברמה העליונה.
כוללים את הכותרות הנדרשות.
התחברות ל-Bigtable
משתמשים ב-MakeBigtableTableAdminConnection() כדי ליצור BigtableTableAdminClient, שבו תשתמשו כדי ליצור טבלה.
יצירת טבלה
מגדירים סכימה לטבלה עם קבוצת עמודות אחת. הגדר כלל איסוף אשפה עבור משפחת העמודות כדי לשמור גרסה אחת לכל היותר של כל ערך. משתמשים בסכימה הזו כדי ליצור מופע של אובייקט טבלה באמצעות BigtableTableAdminClient::CreateTable(). לאחר מכן יוצרים לקוח נתונים שאפשר להשתמש בו כדי להכניס נתונים לטבלה ולהוציא נתונים מהטבלה.
כתיבת שורות בטבלה
מבצעים לולאה ברשימה של מחרוזות ברכה כדי ליצור כמה שורות חדשות לטבלה.
בכל איטרציה, משתמשים ב-SingleRowMutation כדי להגדיר שורה ולהקצות לה מפתח וערך. לאחר מכן מתקשרים אל Table::Apply() כדי להחיל את השינוי על השורה.
יצירת מסנן
לפני שקוראים את הנתונים שכתבתם, צריך ליצור מסנן באמצעות Filter::ColumnRangeClosed() כדי להגביל את הנתונים שמוחזרים מ-Bigtable. מסנן זה מורה ל-Bigtable להחזיר רק את הגרסה העדכנית ביותר של כל ערך, גם אם הטבלה מכילה תאים ישנים יותר שפג תוקפם אך טרם הוסרו על ידי איסוף הזבל.
קריאת שורה לפי המפתח שלה
קוראים לפונקציה Table::ReadRow(), מעבירים את מפתח השורה ואת המסנן,
כדי לקבל גרסה אחת של כל ערך בשורה הזו.
סריקה של כל השורות בטבלה
כדי לקרוא טווח של שורות מהטבלה, משתמשים ב-Table::ReadRows().
מחיקת טבלה
מחיקת הטבלה באמצעות BigtableTableAdminClient::DeleteTable().
איך הכל משתלב יחד
זוהי הדוגמה המלאה ללא הערות.