הגדרת סנכרון שינויים בזרמי נתונים

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

בדף הזה מוסבר איך להפעיל, להשבית ולשנות את תקופת השמירה של נתוני שינויים.

הוראות ליצירת טבלה חדשה עם הפעלה של שידור שינויים מפורטות במאמר בנושא יצירת טבלה.

תפקיד נדרש

כדי לקבל את ההרשאות שנדרשות להפעלה, להשבתה או לשינוי של זרם שינויים ב-Bigtable, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM הבא.

  • Bigtable Administrator (roles/bigtable.admin) on the Bigtable instance that contains the table you plan to stream changes from

הפעלת שינוי בשידור

כדי להפעיל שינוי בטבלה קיימת:

המסוף

  1. פותחים את רשימת מופעי Bigtable במסוף Google Cloud .

    פתיחת רשימת המופעים

  2. לוחצים על המופע שמכיל את הטבלה שרוצים להפעיל עבורה שינוי בנתונים.

  3. בחלונית הימנית לוחצים על טבלאות.

    בדף Tables (טבלאות) מוצגת רשימה של טבלאות במופע.

  4. לוחצים על עריכה בטבלה שרוצים להפעיל בה עדכון נתונים.

  5. לוחצים על הפעלת מקור נתונים לשינויים.

  6. בשדה זמן התפוגה, מזינים מספר מ-1 עד 7 כדי להגדיר את מספר הימים שבהם רשומות של מקור נתונים יישמרו.

  7. לוחצים על Save.

gcloud

כדי להפעיל זרם שינויים בטבלה, משתמשים בפקודה gcloud bigtable instances tables update.

  gcloud bigtable instances tables update TABLE_ID \
        --instance=INSTANCE_ID \
        --project=PROJECT_ID \
        --change-stream-retention-period=CHANGE_STREAM_RETENTION_PERIOD

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

  • TABLE_ID: המזהה של הטבלה שרוצים להזרים את השינויים שלה
  • INSTANCE_ID: המופע שמכיל את הטבלה
  • PROJECT_ID: הפרויקט שמכיל את המכונה
  • CHANGE_STREAM_RETENTION_PERIOD: משך הזמן שבו Bigtable צריך לשמור את נתוני זרם השינויים של הטבלה. הערך חייב להיות בין יום אחד לשבעה ימים, והוא צריך להיות מורכב ממספר ומאות שמייצגת את היחידה. היחידות הקבילות הן ימים (d), שעות (h), דקות (m) ושניות (s). לדוגמה: 5d

השבתה של שינוי השידור החי

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

המסוף

  1. פותחים את רשימת מופעי Bigtable במסוף Google Cloud .

    פתיחת רשימת המופעים

  2. לוחצים על המופע שרוצים לראות את הטבלאות שלו.

  3. בחלונית הימנית לוחצים על טבלאות.

    בדף Tables (טבלאות) מוצגת רשימה של טבלאות במופע.

  4. לוחצים על עריכה בטבלה שרוצים להשבית את ההגדרה של שינוי הנתונים שלה.

  5. מבטלים את הסימון בתיבה הפעלת זרם שינויים.

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

gcloud

כדי להשבית את זרם השינויים בטבלה, משתמשים בפקודה gcloud bigtable instances tables update.

  gcloud bigtable instances tables update TABLE_ID \
        --instance=INSTANCE_ID \
        --project=PROJECT_ID \
        --clear-change-stream-retention-period

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

  • TABLE_ID: המזהה של הטבלה שרוצים להזרים את השינויים שלה
  • INSTANCE_ID: המופע שמכיל את הטבלה
  • PROJECT_ID: הפרויקט שמכיל את המכונה

שינוי זמן השמירה של שינוי בשידור

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

אם מגדילים את זמן השמירה, זה לא חל רטרואקטיבית – סנכרון שינויים בזרמי נתונים נשמרים למספר הימים המוגדל החל מהרגע שבו משנים את ההגדרה.

המסוף

  1. פותחים את רשימת מופעי Bigtable במסוף Google Cloud .

    פתיחת רשימת המופעים

  2. לוחצים על המופע שרוצים לראות את הטבלאות שלו.

  3. בחלונית הימנית לוחצים על טבלאות.

    בדף Tables (טבלאות) מוצגת רשימה של טבלאות במופע.

  4. לוחצים על עריכה בטבלה שרוצים לשנות את ההגדרה של עדכון הנתונים שלה.

  5. בשדה 'זמן התפוגה', מזינים מספר מ-1 עד 7 כמספר הימים שבהם צריך לשמור את הרשומות של מקור הנתונים.

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

gcloud

כדי לשנות את תקופת השמירה של שינויים בטבלה, משתמשים בפקודה gcloud bigtable instances tables update.

  gcloud bigtable instances tables update TABLE_ID \
        --instance=INSTANCE_ID \
        --project=PROJECT_ID \
        --change-stream-retention-period=CHANGE_STREAM_RETENTION_PERIOD

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

  • TABLE_ID: המזהה של הטבלה שרוצים להזרים את השינויים שלה
  • INSTANCE_ID: המופע שמכיל את הטבלה
  • PROJECT_ID: הפרויקט שמכיל את המכונה
  • CHANGE_STREAM_RETENTION_PERIOD: משך הזמן שבו Bigtable צריך לשמור את נתוני זרם השינויים של הטבלה. הערך חייב להיות בין יום אחד לשבעה ימים, ולהיות מורכב ממספר ומאות שמייצגות את היחידה. היחידות הקבילות הן ימים (d), שעות (h), דקות (m) ושניות (s). לדוגמה: 5d

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