מבוא לפתרון בעיות

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

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

תהליך עבודה של פתרון בעיות

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

  1. זיהוי התסמין ומצב הכשל. בודקים את תוצאות המשימה כדי לקבוע אם הבעיה היא כשל חמור (כמו קוד שגיאה או כשל במשימה), ירידה בביצועים (כמו שאילתה איטית או מחסור במשבצות), דחיית הרשאה או פער בלתי צפוי בעלויות.
  2. בדיקת פרטי הביצוע של המשימה כדי לבדוק את זמני הביצוע ברמת השלב, את הקצאת המשבצות ואת פרטי השגיאות, אתם יכולים להשתמש בסייר המשימות, בתרשים הביצוע של השאילתה או בכלי שורת הפקודה במסוף Google Cloud . אתם יכולים גם לבקש מ-Gemini Cloud Assist לבדוק את הבעיה.
  3. ניתוח טלמטריה ומטא-נתונים. אפשר לשלוח שאילתות לתצוגות של סכימת מידע או לבדוק את יומני הביקורת של Cloud כדי לקשר בין התנהגות המשימה לבין תחרות על משאבים, מגבלות על הזמנות או שינויים ניהוליים.
  4. החלת אמצעי הפחתה ממוקדים. כדי לפתור את הבעיה הבסיסית, אתם יכולים להשתמש במדריכים לפתרון בעיות ספציפיות לקטגוריה או בפונקציות SQL הגנתיות.

ההבדל בין פתרון בעיות לבין אופטימיזציה

כשעובדים עם BigQuery, חשוב להבחין בין פתרון בעיות, אופטימיזציה של ביצועים ושיטות מומלצות:

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

כלי אבחון

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

כלים חזותיים וכלים למסוף

הכלים הבאים יעזרו לכם לפתור בעיות ב-BigQuery ממסוףGoogle Cloud .

  • Jobs Explorer. לחפש, לסנן ולבדוק משימות קודמות ומשימות שפועלות בפרויקטים או בארגונים, בלי לכתוב שאילתות SQL. אתם יכולים לראות הודעות שגיאה, שימוש ב-slots, צירי זמן של ביצוע ומטא-נתונים של משימות. מידע נוסף זמין במאמר מעקב אחרי משימות ב-Jobs Explorer.
  • תרשים ביצוע השאילתה. בדיקת תוכנית הביצוע החזותית של שאילתה, שלב אחר שלב. תרשים הביצוע עוזר לזהות צווארי בקבוק כמו זליגות של ערבוב לדיסק, שלבים שמוגבלים על ידי המחשוב, חלוקת נתונים לא מאוזנת או עיכובים בקלט/פלט. מידע נוסף זמין במאמר קבלת תובנות לגבי ביצועי שאילתות.
  • תרשימים של Query Insights ומשאבים. צפייה בתרשימים בזמן אמת ובתרשימים היסטוריים של ניצול ה-slots, של בו-זמניות המשימות ושל הקצאות ההזמנות, כדי לאבחן אילוצים בקיבולת. מידע נוסף זמין במאמר שימוש בתרשימים של משאבים אדמיניסטרטיביים.
  • ‫Gemini Cloud Assist ב-BigQuery ניתוח מבוסס-AI של שאילתות שנכשלו וצווארי בקבוק בביצועים, בהתאם להקשר. ‫Gemini Cloud Assist מסביר קודי שגיאה, מדגיש תחביר SQL בעייתי ומציע שלבים לתיקון ישירות במסוףGoogle Cloud . מידע נוסף מופיע במאמר פתרון בעיות בשאילתות באמצעות Gemini Cloud Assist.

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

הכלים הבאים יכולים לעזור לכם לאבחן בעיות ב-BigQuery מממשק שורת הפקודה.

  • כלי שורת הפקודה של BigQuery כדי לבדוק מבני שגיאות מפורטים, מזהי בקשות ומטא-נתונים של משימות, משתמשים בפקודה bq show -j <var>JOB_ID</var> או מוסיפים את הדגל --format=prettyjson לפקודות של שאילתות. מידע נוסף זמין במאמר פתרון בעיות בפקודות CLI.
  • gcpdiag. מריצים אבחון אוטומטי משורת הפקודה כדי לזהות בעיות נפוצות בהגדרות של Google Cloud , כולל פערים בהרשאות IAM, הגבלות רשת ושגיאות בחשבון השירות. מידע נוסף זמין במאמר פתרון בעיות של כשלים בשאילתות באמצעות gcpdiag.

תצוגות של מטא-נתונים וטלמטריה

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

  • נתוני טלמטריה של ביצוע משימות. שליחת שאילתות ל-INFORMATION_SCHEMA.JOBS ול-INFORMATION_SCHEMA.JOBS_TIMELINE כדי לנתח את צריכת ה-slot-millisecond, את הבייטים שנשפכו, את זמני התור ואת קודי השגיאה בכל המשימות.
  • הזמנות וקיבולת. שולחים שאילתות ל-INFORMATION_SCHEMA.RESERVATIONS ול-INFORMATION_SCHEMA.CAPACITY_COMMITMENTS כדי לאבחן את הקצאת המשבצות, מגבלות ההזמנות והתנהגויות של התאמה אוטומטית לעומס.
  • סטרימינג והטמעה. שולחים שאילתה ל-INFORMATION_SCHEMA.STREAMING_TIMELINE כדי לזהות את זמן האחזור של הטמעת הנתונים ואת מגבלות קצב הסטרימינג.
  • תקינות האחסון והמחיצות. מריצים שאילתה על INFORMATION_SCHEMA.TABLE_STORAGE כדי לבדוק את הגדלים הפיזיים של הטבלאות, את האחסון הפעיל לעומת האחסון לטווח ארוך ואת התפלגות המחיצות.

למידע נוסף, קראו את המאמר מבוא ל-BigQuery INFORMATION_SCHEMA.

‫Cloud Monitoring ויומני ביקורת של Cloud

  • יומני ביקורת של Cloud. בודקים את יומני הביקורת של פעילות האדמין ושל הגישה לנתונים כדי לזהות מי יזם פעולות ספציפיות, לבדוק את הזהויות של מבצעי הקריאות ולנתח שגיאות של PERMISSION_DENIED. במאמר שימוש ביומני ביקורת ב-BigQuery תוכלו לקרוא מידע נוסף.
  • Cloud Monitoring. לעקוב אחרי מדדים כמו שימוש ביחידות קיבולת (Slot), משך הזמן של הרצת השאילתות ובייטים שהועלו, ולהגדיר מדיניות התראות כדי להודיע לצוות שלכם כשחורגים מהספים או מהמכסות. למידע נוסף, קראו את המאמר מעקב אחרי BigQuery באמצעות Cloud Monitoring.

פונקציות SQL הגנתיות והצהרות ניפוי באגים

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

  • ביטויים בטוחים. משתמשים בפונקציות SAFE_CAST(),‏ SAFE_DIVIDE(),‏ SAFE_OFFSET() ו-SAFE_ORDINAL() כדי להחזיר את הערך NULL במקום ליצור שגיאות זמן ריצה כשסוגי הנתונים או גבולות המערך לא תואמים. רוב הפונקציות הסקלריות תומכות בקידומת SAFE.. מידע נוסף זמין במאמרים ניפוי באגים בפונקציות והקידומת SAFE..
  • טענות נכונות (assertions) ב-SQL. אפשר להשתמש בהצהרה ASSERT בטרנזקציות או בסקריפטים עם כמה הצהרות כדי לאכוף תנאים לאימות נתונים, ולהיכשל עם הודעות שגיאה בהתאמה אישית לפני ביצוע פעולות במורד הזרם. מידע נוסף זמין במאמר הצהרות ניפוי באגים.

פתרון בעיות לפי קטגוריית הבעיה

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

ביצועים והרצה של שאילתות

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

ניהול זהויות והרשאות גישה (IAM) ואבטחה

לאבחן כשלים בבקרת הגישה, הקצאות חסרות של תפקידים וחסימות של מדיניות משילות מידע (data governance).

מכסות, הגבלת קצב של יצירת בקשות ומקומות שמורים

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

הטמעת נתונים, סטרימינג והעברה

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

  • פתרון בעיות בהעברות נתונים אבחון בעיות בשירות העברת הנתונים ל-BigQuery, בקישוריות לרשת להעברות פרטיות ובשגיאות בטעינת נתוני CSV.
  • פתרון בעיות בהגדרות העברה פתרון שגיאות בהגדרות של שירות העברת הנתונים ל-BigQuery במקורות כמו Amazon Simple Storage Service (Amazon S3),‏ Salesforce,‏ Google Ads ו-Cloud Storage.
  • פתרון בעיות ב-BigQuery Storage API ניפוי באגים של כשלים בהטמעת עדכונים בזמן אמת, שגיאות בהוספה ברמת השורה ומכסות תפוקה ב-BigQuery Storage Read API, ב-BigQuery Storage Write API ‏ (gRPC) וב-BigQuery Storage Write API ‏ (REST).
  • פתרון בעיות שקשורות לשגיאות בסכימה פתרון שגיאות של חוסר התאמה בסכימה מפעולות טעינה, שאילתה, העתקה ועדכון סכימה (כמו שינויים חסרים, כפולים או לא תואמים בעמודות), ומגבלות עומק של 15 רמות של סכימה, קובץ ושגרה.

העברת מחסן נתונים (data warehouse)

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

מקורות נתונים חיצוניים ושאילתות לכמה מסדי נתונים

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

חוסר התאמה בין החיוב לעלות

לבדוק חיובים לא צפויים ואי-התאמות בחיובים במחשוב ובאחסון.

הפחתת אובדן נתונים

כדי לשחזר נתונים היסטוריים ששונו או נמחקו, או כדי לשמור על המשכיות עסקית במהלך הפסקה אזורית, אתם יכולים להשתמש בכלים הבאים לתוכנית התאוששות מאסון (DR) ולשמירת נתונים:

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

שימוש בממשקי API

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

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

אימות ו-ADC

במאמר פתרון בעיות בהגדרת ADC מוסבר איך לפתור בעיות נפוצות שאתם עשויים להיתקל בהן במהלך השימוש ב-Application Default Credentials‏ (ADC).

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