במסמך הזה מפורטים טיפים לפתרון בעיות שקשורות למינויים ל-Bigtable.
לא ניתן ליצור או לעדכן מינוי
כשמנסים ליצור או לעדכן מינוי ל-Bigtable, יכול להיות שתיתקלו בשגיאות הבאות.
שגיאת דחיית הרשאה
אם מופע או טבלה של Bigtable לא קיימים, או אם לחשבון השירות שהוגדר אין גישה לאף אחד מהם, מוצגת שגיאת דחיית הרשאה.
כדי לפתור את הבעיה:
בודקים שהמופע והטבלה קיימים. מידע נוסף זמין במאמרים הבאים:
אם הם לא קיימים, צריך ליצור אותם ולנסות שוב ליצור את המינוי. דוגמה לשלב הזה מופיעה במאמר כתיבה מ-Pub/Sub ל-Bigtable.
אם השגיאה עדיין מופיעה, צריך לבדוק אם לחשבון השירות יש את ההרשאות הנכונות. מידע נוסף זמין במאמר הענקת תפקידים ב-IAM לחשבון השירות.
חסרות קבוצות עמודות
אם בטבלת Bigtable אין את משפחות העמודות הנכונות, תתקבל שגיאת INCOMPATIBLE_BIGTABLE_SCHEMA.
הסיבות האפשריות לשגיאה הזו:
- בטבלה אין קבוצת עמודות
data. - הכתיבה של מטא-נתונים מופעלת, ולטבלה אין קבוצת עמודות
pubsub_metadata.
כדי לפתור את הבעיה, צריך ליצור את קבוצות העמודות הנדרשות. מידע נוסף זמין במאמר בנושא הוספת משפחות עמודות.
המינוי לא כותב נתונים
אם מינוי Bigtable לא כותב נתונים, בודקים את מצב המינוי על ידי הרצת הפקודה gcloud beta pubsub subscriptions describe:
gcloud beta pubsub subscriptions describe SUBSCRIPTION_ID
מחליפים את SUBSCRIPTION_ID בשם המינוי.
השדה bigtableConfig.state מכיל את המצב. אם המינוי מוכן לכתיבת הודעות ל-Bigtable, הסטטוס הוא ACTIVE.
אחרת, יש שגיאה בהגדרה שמונעת מהמינוי לכתוב הודעות לטבלת Bigtable.
דוגמאות לבעיות בהגדרות:
פרופיל האפליקציה לא מוגדר לניתוב של אשכול יחיד.
שגיאות הרשאה. מידע נוסף על השגיאה Permission denied
בטבלת Bigtable חסרה קבוצת עמודות נדרשת. מידע נוסף על עמודות חסרות
המינוי לא יכול לכתוב לטבלת Bigtable בגלל מדיניות אחסון הודעות. השגיאה הזו מתרחשת אם
enforceInTransitהואTrueוהמיקום של הטבלה לא נמצא באזור מותר.
בזמן שהמינוי במצב שגיאה, המערכת לא כותבת הודעות לטבלת Bigtable. ההודעות נשארות בפיגור של המינוי, ולא נשלחות אל נושא ההודעות שלא נמסרו, אם הוא מוגדר. הודעות שלא אושרו נשמרות למשך משך השמירה של ההודעות שמוגדר במינוי.
אחרי שהבעיה תיפתר, המינוי יחזור למצב תקין.
הגדלת העומס
אם מצב המינוי הוא ACTIVE אבל יש הצטברות של הודעות במינוי, או שההודעות מועברות לנושא של הודעות שלא ניתן למסור במינוי, כדאי לבדוק את הבעיות הבאות.
קצב הפרסום חורג מהקיבולת
אם קצב פרסום ההודעות בנושא חורג מהקיבולת של אשכול Bigtable, יכול להיות שייווצרו הצטברויות של הודעות בהרשמה.
לסידור ההודעות יש השפעות על הביצועים. שימוש במינויים ל-Bigtable עם הזמנה עלול להוביל לתפוקה נמוכה יותר או לזמן אחזור גבוה יותר של מסירת הודעות. אם אתם נתקלים בבעיות בביצועים כשההזמנה מופעלת, הקפידו להשתמש במפתחות הזמנה עם רמת פירוט מספקת כדי להימנע ממקשי קיצור, או לשנות את האפליקציה כך שלא תידרש הזמנה. מידע נוסף זמין במאמר שיקולים לשימוש בהעברת הודעות לפי סדר.
כדאי לעקוב אחר הביצועים של האשכול ולשקול להגדיל את גודל האשכול. מידע נוסף זמין בנושאים הבאים במסמכי התיעוד של Bigtable:
תנועה בין אזורים
אם האפליקציה שלכם מפרסמת את הנושא מאזור אחר מאזור אשכול Bigtable, ייקח יותר זמן לפרסם כל הודעה, בהשוואה לפרסום מאותו אזור. זמן הפרסום הארוך יותר מקטין את קצב כתיבת ההודעות במינוי ל-Bigtable, וכך מקטין את התפוקה הכוללת.
כדי לצמצם את הזמן שנדרש לפרסום הודעות, כדאי לפרסם אותן באותו אזור שבו נמצא אשכול Bigtable.
המאמרים הבאים
- אם אתם עדיין נתקלים בבעיות במינוי ל-Bigtable, תוכלו לעיין במאמר בנושא קבלת תמיכה.