מבוא לפתרון בעיות
במאמר הזה נסביר על כלי האבחון, ממשקי הטלמטריה ומקורות המידע שזמינים לכם כדי לפתור בעיות ב-BigQuery.
אם נתקלתם בשגיאות בשאילתות, בצווארי בקבוק בביצועים, בשגיאות שקשורות להרשאות, במגבלות מכסה או בבעיות בהטמעת נתונים, אתם יכולים להשתמש בכלים המובנים של BigQuery כדי לזהות את שורש הבעיה ולפתור אותה במהירות.
תהליך עבודה של פתרון בעיות
כדי לפתור בעיה ב-BigQuery ביעילות, כדאי להביא בחשבון את הקריטריונים הבאים לאבחון:
- זיהוי התסמין ומצב הכשל. בודקים את תוצאות המשימה כדי לקבוע אם הבעיה היא כשל חמור (כמו קוד שגיאה או כשל במשימה), ירידה בביצועים (כמו שאילתה איטית או מחסור במשבצות), דחיית הרשאה או פער בלתי צפוי בעלויות.
- בדיקת פרטי הביצוע של המשימה כדי לבדוק את זמני הביצוע ברמת השלב, את הקצאת המשבצות ואת פרטי השגיאות, אתם יכולים להשתמש בסייר המשימות, בתרשים הביצוע של השאילתה או בכלי שורת הפקודה במסוף Google Cloud . אתם יכולים גם לבקש מ-Gemini Cloud Assist לבדוק את הבעיה.
- ניתוח טלמטריה ומטא-נתונים. אפשר לשלוח שאילתות לתצוגות של סכימת מידע או לבדוק את יומני הביקורת של Cloud כדי לקשר בין התנהגות המשימה לבין תחרות על משאבים, מגבלות על הזמנות או שינויים ניהוליים.
- החלת אמצעי הפחתה ממוקדים. כדי לפתור את הבעיה הבסיסית, אתם יכולים להשתמש במדריכים לפתרון בעיות ספציפיות לקטגוריה או בפונקציות 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בטרנזקציות או בסקריפטים עם כמה הצהרות כדי לאכוף תנאים לאימות נתונים, ולהיכשל עם הודעות שגיאה בהתאמה אישית לפני ביצוע פעולות במורד הזרם. מידע נוסף זמין במאמר הצהרות ניפוי באגים.
פתרון בעיות לפי קטגוריית הבעיה
כדי לראות את קודי השגיאה המפורטים, את שורש הבעיה ואת המדריכים לפתרון הבעיה, צריך לבחור קטגוריה מהקטעים הבאים.
ביצועים והרצה של שאילתות
אבחון שאילתות שלא פועלות, שנגמר להן הזמן הקצוב, שנתקלות במגבלות משאבים או שמתעכבות באופן לא צפוי.
- פתרון בעיות בשאילתות לפתור שגיאות ב-
resourcesExceeded, הרצת שאילתות איטית, זליגת נתונים ב-shuffle, מצבים של חוסר בזיכרון וכישלונות בשאילתות מתוזמנות. - פתרון בעיות שקשורות לזמני המתנה ארוכים בתור של השאילתות לזהות צווארי בקבוק שנובעים מפעולות בו-זמניות ושאילתות שממתינות בתור בגלל מגבלות על תורים אינטראקטיביים או תורים של שאילתות באצווה.
- המשמעות של הודעות השגיאה חיפוש קודי שגיאה ספציפיים של HTTP, מחרוזות של סיבות לשגיאות ופעולות מומלצות.
ניהול זהויות והרשאות גישה (IAM) ואבטחה
לאבחן כשלים בבקרת הגישה, הקצאות חסרות של תפקידים וחסימות של מדיניות משילות מידע (data governance).
- פתרון בעיות שקשורות להרשאות IAM ב-BigQuery אבחון שגיאות של דחיית הרשאות, הקצאת תפקידי IAM חסרים ושימוש בפותר הבעיות שקשורות למדיניות.
- פתרון בעיות ב-VPC Service Controls לזהות ולפתור הפרות של היקף האבטחה וחסימות של כללים לתעבורת נתונים נכנסת (ingress) או יוצאת (egress).
- פתרון בעיות באבטחה ברמת השורה וברמת העמודה לפתור בעיות גישה שקשורות למדיניות נתונים, לתגי מדיניות ולמסנני גישה ברמת השורה.
מכסות, הגבלת קצב של יצירת בקשות ומקומות שמורים
לפתור בעיות כשעומסי העבודה חורגים ממגבלות השירות או מהקצאות הקיבולת של BigQuery.
- פתרון בעיות שקשורות לשגיאות במכסות ובמגבלות לזהות מכסות שניתנות לשינוי לעומת מכסות שלא ניתנות לשינוי, לטפל במגבלות על שאילתות בו-זמניות ולפתור שגיאות שקשורות להגבלת קצב של יצירת בקשות ל-API.
- פתרון בעיות בניהול עומסי העבודה ב-BigQuery לאבחן בעיות שקשורות למחסור ב-slots, חוסר התאמה בהקצאת הזמנות, עיכובים בהתחייבות לקיבולת, תחרות על slots ובעיות במעקב אחרי הזמנות.
הטמעת נתונים, סטרימינג והעברה
לאבחן כשלים בטעינת נתונים, בהעברת רשומות בסטרימינג או בסנכרון מקורות חיצוניים.
- פתרון בעיות בהעברות נתונים אבחון בעיות בשירות העברת הנתונים ל-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.
- פתרון בעיות בנושא העברה לפתור שגיאות בהערכת ההעברה, בעיות בתרגום SQL אינטראקטיבי ובאצווה וכשלים בחילוץ מטא-נתונים.
מקורות נתונים חיצוניים ושאילתות לכמה מסדי נתונים
לאבחן שגיאות בקישוריות, באימות ובהפעלה כששולחים שאילתות לנתונים מחוץ ל-BigQuery.
- פתרון בעיות בשאילתות מאוחדות ב-Cloud SQL פתרון בעיות שקשורות לזמן קצוב לתפוגה של חיבורים, להגדרות של מכונות ולפרטי כניסה.
חוסר התאמה בין החיוב לעלות
לבדוק חיובים לא צפויים ואי-התאמות בחיובים במחשוב ובאחסון.
- פתרון בעיות שקשורות לפערים בעלויות ב-BigQuery לזהות את המקור של חיובים בלתי צפויים, לנתח את הבייטים שחויבו על פי דרישה ולבדוק את השימוש בהתחייבות לקיבולת.
הפחתת אובדן נתונים
כדי לשחזר נתונים היסטוריים ששונו או נמחקו, או כדי לשמור על המשכיות עסקית במהלך הפסקה אזורית, אתם יכולים להשתמש בכלים הבאים לתוכנית התאוששות מאסון (DR) ולשמירת נתונים:
- שחזור נתונים. שאילתה או שחזור של נתוני טבלה ששונו או נמחקו בחלון הזמן של Time Travel. מידע נוסף זמין במאמר שחזור נתונים.
- מסע בזמן. שמירת נתונים מעודכנים או שנמחקו במערך נתונים למשך תקופת שמירה מוגדרת, כדי להגן מפני שינויים מקריים. למידע נוסף, קראו את המאמר מסע בזמן.
- יתירות כשל אזורית. קידום רפליקה משנית לתפקיד הראשי במהלך הפסקה אזורית, כשמשתמשים בתוכנית התאוששות מאסון (DR) שמנוהלת על ידי BigQuery. מידע נוסף מופיע במאמר מעבר אזורי לגיבוי בעת כשל.
שימוש בממשקי API
כשאתם משתמשים ב-BigQuery באופן פרוגרמטי, אתם יכולים להיעזר במשאבים הבאים כדי לשפר את זמן האחזור של הבקשות ולנהל את תהליכי העבודה של ההעלאה:
- טיפים לשיפור הביצועים של ה-API שיטות מומלצות לביצוע קריאות ל-API, כמו ניהול מאגרי חיבורים, שימוש בפעולות באצווה וטיפול בניסיונות חוזרים. למידע נוסף, ראו טיפים לביצועי API.
- העלאות דרך API. לפתור בעיות בהטמעת נתונים ולנהל אותה באמצעות בקשות להעלאה ניתנת להמשך ובקשות להעלאה מרובת חלקים ב-API בארכיטקטורת REST. מידע נוסף זמין במאמר העלאות באמצעות API.
אימות ו-ADC
במאמר פתרון בעיות בהגדרת ADC מוסבר איך לפתור בעיות נפוצות שאתם עשויים להיתקל בהן במהלך השימוש ב-Application Default Credentials (ADC).
המאמרים הבאים
- מידע נוסף על מעקב אחרי BigQuery
- הפניות של
INFORMATION_SCHEMAב-BigQuery - אם אתם צריכים תמיכה בבעיות מתמשכות או קריטיות בסביבת הייצור, פנו ל-Cloud Customer Care.