יצירת מכסות שאילתות בהתאמה אישית

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

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

מכסה בהתאמה אישית היא פרואקטיבית, ולכן אי אפשר להריץ שאילתה של 11TB אם המכסה היא 10TB. יצירת מכסת נתונים מותאמת אישית על נתונים שעברו עיבוד מאפשרת לכם לשלוט בעלויות ברמת הפרויקט או ברמת המשתמש.

כדי להגדיר אמצעי בקרה מותאמים אישית של עלויות, אפשר לעדכן את אחת ממכסות השאילתות הבאות או את שתיהן:

  • QueryUsagePerDay: מכסות מותאמות אישית ברמת הפרויקט מגבילות את השימוש המצטבר של כל המשתמשים בפרויקט הזה.

  • QueryUsagePerUserPerDay: מכסה מותאמת אישית ברמת המשתמש חלה בנפרד על כל המשתמשים ועל חשבונות השירות בפרויקט. ללא קשר למגבלה לכל משתמש, סך השימוש של כל המשתמשים בפרויקט לא יכול לעבור את מגבלת השימוש בשאילתות ליום.

מגבלת ברירת המחדל של מכסת QueryUsagePerDay היא 200 טביבייט (TiB) של נתונים שמעובדים לכל פרויקט ביום. מגבלת ברירת המחדל של QueryUsagePerUserPerDay היא ללא הגבלה. כדי לבדוק את המגבלות הנוכחיות, אפשר לעיין בדף המכסות. אפשר לשנות את המגבלות בכל שלב – הגדרות חריגות בהתאמה אישית מבטלות את מגבלות ברירת המחדל.

מכסות השימוש בשאילתות חלות רק על מודל התמחור של שאילתות על פי דרישה.

במאמר מכסות ומגבלות יש מידע נוסף על מכסות BigQuery שאפשר להגדיר.

תפקיד נדרש

כדי לקבל את ההרשאה שנדרשת לשינוי המכסה, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM ‏Quota Administrator (role/servicemanagement.quotaAdmin) בפרויקט. כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

התפקיד המוגדר מראש הזה כולל את ההרשאה serviceusage.quotas.update, שנדרשת כדי לשנות את המכסה.

יכול להיות שתוכלו לקבל את ההרשאה הזו גם בתפקידים בהתאמה אישית או בתפקידים אחרים שמוגדרים מראש.

הגדרה או שינוי של מכסות בהתאמה אישית

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

כדי להגדיר או לעדכן אמצעי בקרת עלויות מותאם אישית, כמו הגבלת כמות הנתונים ב-BigQuery שאפשר לעבד בכל יום:

  1. במסוף Cloud de Confiance , פותחים את הדף IAM & Admin > Quotas & System Limits:

    כניסה לדף Quotas & System Limits

  2. משתמשים במסנן Service בתיבת החיפוש Filter כדי לסנן לפי BigQuery API.

  3. בוחרים את המכסות שרוצים לשנות. לדוגמה, כדי להגביל את כמות הנתונים שאפשר לשלוח לגביהם שאילתות ביום ברמת הפרויקט וברמת המשתמש, בוחרים באפשרויות Query usage per day (שימוש בשאילתות ביום) ו-Query usage per day per user (שימוש בשאילתות ביום לכל משתמש). יכול להיות שתצטרכו לעבור בין הדפים ברשימה כדי למצוא אותם. אחרי שבוחרים מכסת נפח, מופיעה סרגל כלים.

  4. בסרגל הכלים, לוחצים על עריכה. תיבת הדו-שיח Quota changes תיפתח.

  5. אם נבחרה האפשרות ללא הגבלה, מבטלים את הסימון שלה.

  6. מקלידים את המכסה החדשה הרצויה ב-TiB בשדה New value.

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

  8. לוחצים על Submit request.

למידע נוסף על הצגה וניהול של מכסות, תוכלו לקרוא את המאמר הצגה וניהול של מכסות.

הודעות השגיאה שמוחזרות

אחרי שמגדירים מכסה בהתאמה אישית, מערכת BigQuery מחזירה שגיאה כשחורגים ממנה:

  • אם חורגים ממכסה מותאמת אישית ברמת הפרויקט, BigQuery מחזיר את השגיאה usageQuotaExceeded:

    Custom quota exceeded: Your usage exceeded the custom quota for
    QueryUsagePerDay, which is set by your administrator. For more information,
    see https://cloud.google.com/bigquery/cost-controls
  • אם המשתמש חורג ממכסה מותאמת אישית ברמת המשתמש, BigQuery מחזיר שגיאה usageQuotaExceeded עם הודעת שגיאה שונה:

    Custom quota exceeded: Your usage exceeded the custom quota for
    QueryUsagePerUserPerDay, which is set by your administrator. For more
    information, see https://cloud.google.com/bigquery/cost-controls

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

דוגמה

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

  • ברמת הפרויקט: ‎50 TB ביום
  • ברמת המשתמש: 10TB ליום

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

בטבלה הבאה מפורטות המכסות שנותרו כש-10 משתמשים מריצים שאילתות במהלך היום.

Usage המכסה שנותרה
כל אחד מ-10 המשתמשים שולח שאילתות של 4TB ברמת הפרויקט: נותרו 10TB.
ברמת המשתמש: נשארים 6TB לכל משתמש, אבל רק עד 10TB בסך הכול.
חשבון השירות שולח שאילתה לגבי עוד 6TB ברמת הפרויקט: נותרו 4TB.
ברמת המשתמש: לחשבון השירות כבר אין אפשרות להשתמש ב-BigQuery. למשתמשים האחרים יישארו 6TB לכל משתמש, אבל רק עד 4TB בסך הכול.
משתמש אחד שולח שאילתה לגבי עוד 4TB ברמת הפרויקט: לא נותרו TB.
ברמת המשתמש: נותרו כמה TB, אבל אף אחד לא יכול להשתמש ב-BigQuery כי חרגתם מהמכסה ברמת הפרויקט.

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

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