יצירת לוחות בקרה, תרשימים והתראות

במאמר הזה מוסבר איך ליצור תרשימים והתראות כדי לעקוב אחרי משאבי BigQuery באמצעות Cloud Monitoring.

לפני שמתחילים

לפני שמשתמשים ב-Cloud Monitoring, צריך לוודא שיש לכם:

  • חשבון לחיוב ב-Cloud.
  • פרויקט ב-BigQuery עם חיוב מופעל.

צפייה ויצירה של לוחות בקרה, תרשימים והתראות

הצגת לוח הבקרה של Cloud Monitoring

כדי להשתמש ב-Cloud Monitoring למעקב אחרי פרויקט BigQuery:

  1. נכנסים לדף Monitoring במסוף Google Cloud .

    למעבר אל Monitoring

  2. אם שם הפרויקט לא נבחר כבר בחלק העליון של הדף, בוחרים אותו.

  3. כדי לראות את המשאבים של BigQuery, בוחרים באפשרות Dashboards > BigQuery. בדף הזה מוצגת רשימה של טבלאות, אירועים ודיווח על אירועים שניתנים להגדרה על ידי המשתמש, וגם תרשימים של מדדי פרויקטים או מדדי מערכי נתונים.

    מרכז הבקרה של BigQuery.

הצגה חזותית של המשבצות הזמינות והמשבצות שהוקצו

כדי לראות את ה-slots שזמינים ואת ה-slots שהוקצו לפרויקט, נכנסים למרכז הבקרה של BigQuery שמתואר במאמר הצגת מרכז הבקרה של Cloud Monitoring:

  1. נכנסים לדף Monitoring במסוף Google Cloud .

    למעבר אל Monitoring

  2. בוחרים באפשרות מרכזי בקרה > BigQuery.

  3. בלוח הבקרה של Cloud Monitoring ל-BigQuery, גוללים לתרשים Slot Utilization.

התרשים Slot Utilization מופיע גם בלוח הבקרה הראשי שמוגדר כברירת מחדל ב-Cloud Monitoring וגם בלוח הבקרה של Cloud Monitoring ל-BigQuery.

יצירת לוח בקרה ותרשים

אתם יכולים להציג את המדדים שנאספו באמצעות Cloud Monitoring בתרשימים ובלוחות הבקרה הפרטיים שלכם:

  1. נכנסים לדף Monitoring במסוף Google Cloud .

    למעבר אל Monitoring

  2. לוחצים על Dashboards > Create Dashboard.

  3. לוחצים על הוספת תרשים. הדף Add Chart מופיע:

    הוספת דף תרשים.

  4. בשדות של החלונית Find resource type and metric:

    • ברשימה הנפתחת Resource type, בוחרים באפשרות Global. יכול להיות שתצטרכו להרחיב את הרשימה Resource types כדי לראות את האפשרות Global.
    • ברשימה הנפתחת Metric, בוחרים באפשרות Query execution time.
  5. השדות בחלונית Aggregation קובעים איך יוצגו נתוני זמן הביצוע. אפשר לשנות את הגדרות ברירת המחדל של השדות האלה.

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

צפייה במכסות ובניצול שלהן

ב-Cloud Monitoring אפשר לראות מדדים של שימוש במכסות ומגבלות:

  1. נכנסים לדף Monitoring במסוף Google Cloud .

    למעבר אל Monitoring

  2. בחלונית הניווט, בוחרים באפשרות Metrics explorer.

  3. בסרגל הכלים, לוחצים על Explorer > Configuration.

  4. בקטע Resource & Metric, לוחצים על Select a metric.

  5. בוחרים באפשרות Consumer Quota > Quota > Quota limit, ואז לוחצים על Apply.

  6. לוחצים על Add filter, ובתפריט Label בוחרים באפשרות limit_name.

  7. בתפריט Value, בוחרים את המכסה שרוצים לראות את המדדים שלה.

    ‫Metrics Explorer.

יצירת התראה

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

תנאי חדש
שדה

ערך
משאב ומדד בתפריט Resources, בוחרים באפשרות BigQuery Project.
בתפריט Metric categories בוחרים באפשרות Query.
בתפריט Metrics, בוחרים באפשרות Query execution times.
סינון
Across time series
Time series group by
priority
בסדרות זמן
צבירה של סדרות זמן
99th percentile
חלון זמן דינמי 5 m
פונקציית חלון זמן דינמי sum
הגדרת טריגר להתראה
שדה

ערך
סוג התנאי Threshold
טריגר להתראה Any time series violates
מיקום הסף Above threshold
ערך הסף אתם קובעים את הערך הזה, אבל מומלץ להגדיר סף של 60 שניות.
חלון הבדיקה החוזרת most recent value

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

תנאי חדש
שדה

ערך
משאב ומדד בתפריט Resources, בוחרים באפשרות BigQuery Project.
בתפריט Metric categories בוחרים באפשרות Query.
בתפריט Metrics, בוחרים באפשרות Statement scanned bytes billed.
סינון (אין צורך במסנן להתראה ברמת הפרויקט)
Across time series
Time series group by
(אם רוצים לצבור את כל הסדרות, משאירים את השדה ריק)
בסדרות זמן
צבירה של סדרות זמן
sum
חלון זמן דינמי 5 m
פונקציה של חלון זמן דינמי sum
הגדרת טריגר להתראה
שדה

ערך
סוג התנאי Threshold
טריגר להתראה Any time series violates
מיקום הסף Above threshold
ערך הסף אתם קובעים את הערך הזה. לדוגמה, כדי להפעיל התראה כשהשימוש חורג מ-1TiB, מזינים 1000000000000.

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

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

Threshold in Bytes = (Target Amount / (price per TiB)) * 1,000,000,000,000

דוגמה: הפעלת התראה כשהשימוש חורג מ-100$

נניח שאתם רוצים לקבל התראה כשעלויות השאילתות בפרויקט חורגות מ-‎100$‎.

  1. מחשבים את נפח הנתונים המקביל ב-TiB:
    $100 / (price per TiB) = Equivalent Data Volume in TiB
  2. המרת נפח הנתונים לבייטים:
    (Equivalent Data Volume in TiB) * 1,000,000,000,000 = Threshold Value in Bytes
  3. הגדרת ערך הסף:
    בקטע Configure alert trigger של המדיניות, מזינים את הערך של "Threshold Value in Bytes" בתור Threshold value.

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

מדדים שאפשר להציג בתרשים

המדדים הבאים זמינים, עם עיכוב של עד כמה שעות.

סוג המשאב שם יחידות תיאור
BigQuery
Scanned bytes
בייטים לדקה מספר הבייטים שנסרקו.
BigQuery
Scanned bytes billed
בייטים לדקה מספר הבייטים שנשלחו לחיוב כשמשתמשים במודל הניתוח על פי דרישה. יכול להיות שיהיה הבדל בין הבייטים שנסרקו לבין הבייטים שנסרקו וחויבו, כי החיובים מעוגלים כלפי מעלה, עם כמות מינימלית של נתונים שעובדו לכל שאילתה.
BigQuery
BI Engine Query Fallback Count (Preview)
שאילתות שיעור השאילתות שלא השתמשו ב-BI Engine. אפשר להגדיר את האפשרות קיבוץ לפי לערך reason כדי להפריד את הספירה לפי סיבות שונות למעבר למצב חלופי, כולל:
  • NO_RESERVATION
  • INSUFFICIENT_RESERVATION
  • UNSUPPORTED_SQL_TEXT
  • INPUT_TOO_LARGE
  • OTHER_REASON
BigQuery
Query count
שאילתות שאילתות בתהליך.
BigQuery
Query execution count (Preview)
שאילתות מספר השאילתות שהופעלו.
BigQuery
Query execution times
- 5th percentile
- 50th percentile
- 95th percentile
- 99th percentile
שניות זמני הרצת שאילתות שלא נשמרו במטמון.
BigQuery
Slots used by project
מכונות מזל מספר יחידות הקיבולת של BigQuery שהוקצו למשימות של שאילתות בפרויקט.

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

BigQuery
Slots used by project and job type
מכונות מזל מספר ה-slots שהוקצו לפרויקט בכל שלב, בחלוקה לפי סוג העבודה. אפשר גם לחשוב על זה כמספר ה-slots שבהם הפרויקט משתמש. משימות טעינה וחילוץ הן פעולות חינמיות, והן פועלות במאגר משאבים ציבורי.

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

BigQuery
Slots used by project, reservation, and job type
מכונות מזל מספר יחידות הקיבולת של BigQuery שהוקצו לפרויקט. אפשר לחלק את הקצאת המשבצות לפי סוג העבודה וההזמנה.
BigQuery
Total slots
מכונות מזל המספר הכולל של משבצות שזמינות לפרויקט.

אם הפרויקט חולק הקצאה של משבצות עם פרויקטים אחרים, המשבצות שבהן משתמשים הפרויקטים האחרים לא מוצגות.

BigQuery
Slots used across projects in reservations
מכונות מזל מספר יחידות קיבולת של BigQuery שהוקצו לפרויקטים בהזמנה. חשוב לזכור שנתוני המדדים מדווחים רק כשפרויקט אחד לפחות הוקצה להזמנה ומשתמש במשבצות. במקום זאת, כדאי לשלוח שאילתות לגבי פרטי ההזמנות מ-INFORMATION_SCHEMA. כדי לראות את מדדי השימוש ביחידות קיבולת (Slot) בכל הפרויקטים שצורכים משאבים ממקום שמור, צריך להוסיף באופן מפורש את הפרויקטים האלה להיקף המדדים בפרויקט של הפרויקט שבו אתם צופים במרכז הבקרה.
BigQuery
Slots used by project in reservation
מכונות מזל מספר יחידות קיבולת של BigQuery שהוקצו לפרויקט במקום השמור. כדי לראות את מדדי השימוש ביחידות קיבולת (Slot) בכל הפרויקטים שצורכים משאבים ממאגר, צריך להוסיף באופן מפורש את הפרויקטים האלה להיקף המדדים בפרויקט של הפרויקט שבו אתם צופים במרכז הבקרה.
משימה רציפה ב-BigQuery
Estimated backlog logical bytes
בייטים מספר הבייטים בצבר המשימות לכל שלב במשימה הרציפה.
משימה רציפה ב-BigQuery
Estimated backlog records
רשומות המספר המשוער של רשומות בצבר המשימות לכל שלב במשימה הרציפה.
משימה רציפה ב-BigQuery
Estimated bytes processed
בייטים מספר הבייטים המשוער שעובדו בכל שלב של המשימה הרציפה.
משימה רציפה ב-BigQuery
Output watermark
חותמת הזמן חותמת הזמן האחרונה, במיקרו-שניות מאז ראשית זמן יוניקס (Unix epoch), שעד אליה כל הנתונים עובדו בשלב הזה של המשימה הרציפה.
משימה רציפה ב-BigQuery
Records read
רשומות מספר רשומות הקלט שנקראו בכל שלב של המשימה הרציפה.
משימה רציפה ב-BigQuery
Records written
רשומות מספר רשומות הפלט שנכתבו בכל שלב של המשימה הרציפה.
משימה רציפה ב-BigQuery
Slots used
אלפיות שנייה של משבצת המספר הכולל של אלפיות השנייה של ה-slot שבהן השתמש המשימה הרציפה.
מערך נתונים ב-BigQuery
Stored bytes
בייטים בייטים שמאוחסנים במערך הנתונים – ב-100 הטבלאות הכי גדולות במערך הנתונים, הבייטים שמאוחסנים מוצגים לכל טבלה בנפרד (לפי שם). כל הטבלאות הנוספות במערך הנתונים (מעבר ל-100 הגדולות ביותר) מדווחות כסכום יחיד, ושם הטבלה של הסיכום הוא מחרוזת ריקה.
מערך נתונים ב-BigQuery
Table count
Tables מספר הטבלאות במערך הנתונים.
מערך נתונים ב-BigQuery
Uploaded bytes
בייטים לדקה מספר הבייטים שהועלו לטבלה כלשהי במערך הנתונים.
מערך נתונים ב-BigQuery שורות שהועלו שורות לדקה מספר הרשומות שהועלו לטבלה כלשהי במערך הנתונים.

רשימה מלאה של המדדים הזמינים ל- Google Cloud מופיעה במאמר מדדיGoogle Cloud .

בעיות מוכרות

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

  • אם השאילתות פועלות גם בארה"ב וגם באיחוד האירופי, יכול להיות שה-slots שהוקצו וה-slots הזמינים לא נכונים.

  • המשבצות שהוקצו מדווחות כערך הממוצע בחלון זמן (רוחב חלון הזמן תלוי ברמת הזום של התרשים). הגדלה והקטנה של התצוגה יכולות לשנות את הערך של המשבצות שהוקצו. אם מגדילים את התצוגה לחלון זמן של שעה או פחות, מוצגים הערכים האמיתיים של המשבצות שהוקצו. בטווח הזה, בכל זמן שמוצג בתרשים, avg(slots allocated) = slots allocated.

  • הנתונים בתרשימים של Cloud Monitoring רלוונטיים רק לפרויקט שנבחר.

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