הכלי Query Performance Metrics Explore ב-System Activity מספק פירוט של כל שאילתה שמופעלת ממופע Looker שלכם.
לדוגמה, אתם יכולים להשתמש ב-Explore הזה כדי לבדוק אילו רכיבים של שאילתה נטענו הכי לאט. אפשר גם להשתמש ב'ניתוח נתונים' כדי לזהות מגמות ואנומליות בביצועים של שאילתות.
מידע נוסף על הניתוחים שזמינים בפעילות המערכת מופיע בדף העזרה מעקב אחר השימוש ב-Looker באמצעות ניתוחים של פעילות המערכת.
צפייה במדדי הביצועים של השאילתות
מדדי הביצועים של השאילתות מוצגים ב-Explore של מדדי הביצועים של השאילתות בפעילות המערכת. כדי להציג את הניתוח Query Performance Metrics, צריך להיות אדמין ב-Looker או לקבל את ההרשאה see_system_activity.
הסבר על מחזור החיים של שאילתות ב-Looker
כל שאילתה ש-Looker שולח למסד הנתונים עוברת כמה שלבים, וכל שלב כולל כמה פעולות. כל אחד מהשלבים האלה מיוצג כמאפיין ב-Explore של מדדים לבדיקת ביצועי השאילתות.
ברמה גבוהה, אפשר להבין את השלבים כך:
- תור: השאילתה ממתינה לעובד אסינכרוני זמין.
- הפעלה וחיבור: תהליך העבודה מכין את השאילתה ומתחבר למסד הנתונים.
- הפעלת שאילתות: Looker מפעיל את השאילתה הראשית וכל שאילתה נוספת, כמו סכומים או טבלאות נגזרות, במסד הנתונים שלכם וטוען את התוצאות.
- עיבוד התוצאות: Looker מעבד את התוצאות וכותב אותן במטמון.
Async processing עוקב אחרי הזמן הכולל שמוקצה ל-worker אסינכרוני לביצוע שאילתה, משלב 2 עד שלב 4. בשאילתות מניתוחים ומלוחות בקרה, משך הזמן המצטבר של השלבים האלה שווה בערך לערך Async processing. בהורדות, במסירות מתוזמנות ובתוצאות אחרות שמיוצאות, השלב Stream to Cache חופף לשלבים האחרים. במקרים כאלה, משך הזמן המשולב של השלבים הנפרדים עשוי לחרוג ממשך הזמן הכולל של Async processing.

מדדים לבדיקת ביצועים של שאילתות
בקטעים הבאים מפורטים כל שלבי השאילתה בסדר כרונולוגי. בכל קטע של שלב בשאילתה, שלבי השאילתה מופיעים בסדר אלפביתי. כל מדד של שלב בשאילתה נמדד בזמן שחלף בשניות.
תזמונים: תור
| שלב השאילתה | תיאור המדד |
|---|---|
Queued |
הזמן בשניות שבו שאילתה ממתינה עד ש-worker אסינכרוני יהיה זמין להרצת השאילתה. |
תזמון: הפעלה וחיבור
| שלב השאילתה | תיאור המדד |
|---|---|
Acquire Connection |
משך הזמן בשניות שלוקח למכונה של Looker להתחבר למסד הנתונים של הלקוח. השלב הזה כולל את הזמן שנדרש כדי לחפש את פרטי הכניסה של המשתמש וליצור את מאגר החיבורים, אם הוא עדיין לא קיים. |
Cache Load |
הזמן שלוקח בשניות לשלוף תוצאות גולמיות ממטמון קבוצת התוצאות. |
Explore Init: Computed |
הזמן בשניות שנדרש כדי לאתחל את הניתוח לפני שמתחילים prepare אותו. אם השלב הזה מחזיר ערך null, ה-Explore אוחזר מהמטמון במקום להיטען ולעבור ניתוח מאפס. (ראו Explore Init: From Cache). |
Explore Init: From Cache |
הזמן שנדרש בשניות כדי לאחזר את ההפעלה של התכונה 'חיפוש נתונים' מהמטמון. אם השלב הזה מחזיר ערך null, הניתוח נטען ונותח במקום להישלף מהמטמון. (ראו Explore Init: Computed). |
Model Init: Computed |
הזמן בשניות שנדרש כדי לטעון ולנתח את המודל שדרוש להפעלת שאילתה. אם השלב הזה מחזיר ערך null, המודל אוחזר מהמטמון במקום להיטען ולעבור ניתוח מההתחלה. (ראו את השלב Model Init: From Cache). |
Model Init: From Cache |
הזמן שנדרש בשניות לשליפת הגדרת המודל מהמטמון. אם השלב הזה מחזיר ערך null, המודל נטען ונותח במקום להישלף מהמטמון. (ראו את השלב Model Init: Computed). |
Per User Throttler |
הזמן בשניות שבו השאילתה ממתינה לחיבור שיהיה זמין למשתמש כדי להריץ את השאילתה. |
Prepare |
הזמן בשניות שנדרש כדי להכין את השאילתה מההגדרה של Explore. |
Project Init |
הזמן בשניות שנדרש לאתחול פרויקט של LookML או לקריאה שלו מהמטמון. |
תזמונים: הרצת שאילתות
| שלב השאילתה | תיאור המדד |
|---|---|
Execute Grand Totals Query |
הזמן בשניות שלוקח להריץ את השאילתה כדי ליצור את הסכום הכולל במסד הנתונים של הלקוח. ההגדרה הזו חלה רק על שאילתות שבהן מופעלות האפשרויות סכומים כוללים וסכומים כוללים של שורות. |
Execute Main Query |
הזמן בשניות שלוקח להריץ את השאילתה primary במסד הנתונים של הלקוח. הזמן הזה לא כולל את זמן האתחול של החיבור או את זמן ההמתנה של המגביל. התזמון הזה מתחיל אחרי שאתחול החיבור וכל המגבילים הסתיימו. |
Execute Misc. Ancillary Queries |
הזמן בשניות שנדרש כדי להריץ שאילתות תומכות, כמו שאילתות של היקפים ומילוי מאפיינים, במסד הנתונים של הלקוח. |
Execute Row Totals Query |
הזמן בשניות שלוקח להריץ את השאילתה כדי ליצור סכומים כוללים של שורות במסד הנתונים של הלקוחות. ההגדרה הזו חלה רק על שאילתות שמופעל בהן סיכום שורות. |
Execute Totals Query |
הזמן בשניות שלוקח להריץ את השאילתה כדי ליצור סכומים כוללים במסד הנתונים של הלקוחות. ההגדרה חלה רק על שאילתות שמופעל בהן סיכום. |
Load Grand Totals Query In Memory |
הזמן שלוקח בשניות לטעון את השאילתה כדי ליצור את הסכום הכולל בזיכרון. ההגדרה הזו רלוונטית רק לשאילתות ללא סטרימינג שבהן מופעלות האפשרויות totals ו-row totals. |
Load Main Query In Memory |
הזמן בשניות שלוקח לטעון את תוצאות השאילתה הראשית בזיכרון ממסד הנתונים של הלקוח. רלוונטי רק לשאילתות שלא מועברות בסטרימינג. |
Load Misc. Ancillary Queries In Memory |
משך הזמן בשניות עד לטעינת שאילתות תומכות בזיכרון, כמו שאילתות של היקפים ומילוי מאפיינים. |
Load Process and Stream Main Query |
הזמן בשניות שנדרש כדי לטעון את השאילתה הראשית (ממסד הנתונים של הלקוח), לעבד אותה (במכונה של Looker) ולהעביר אותה בסטרימינג (ללקוח). רלוונטי רק לשאילתות בסטרימינג. |
Load Row Totals Query In Memory |
משך הזמן בשניות שלוקח לטעון את השאילתה כדי ליצור את סכומי השורות בזיכרון. ההגבלה הזו חלה רק על שאילתות שלא מועברות בסטרימינג ושהאפשרות סך כל השורות מופעלת בהן. |
Load Totals Query In Memory |
משך הזמן בשניות שלוקח לטעון את השאילתה כדי ליצור סכומים כוללים בזיכרון. ההגדרה הזו חלה רק על שאילתות שלא מועברות בסטרימינג עם סכומים כוללים מופעלים. |
PDTs |
הזמן בשניות שנדרש כדי ליצור את הטבלאות הנגזרות המתמידות (PDT) שנדרשות לשאילתה. |
Temporary DT |
הזמן בשניות שנדרש ליצירת טבלאות נגזרות זמניות. רלוונטי רק לניבים שלא תומכים בביטויי טבלה נפוצים (CTE) או בטבלאות נגזרות מוטבעות, כמו MySQL. |
תזמון: תוצאות העיבוד
| שלב השאילתה | תיאור המדד |
|---|---|
Postprocessing |
הזמן בשניות שנדרש לעיבוד השאילתה לאחר ההרצה. מתרחש אחרי שהחיבור נסגר. |
Stream to Cache |
הזמן בשניות שבו התוצאות מועברות בסטרימינג למטמון. במקרה של הורדות, מסירות מתוזמנות ותוצאות מיוצאות אחרות, השלב הזה כולל את הרצת השאילתה, ולכן הוא חופף למדדים בשלבים אחרים. |
תזמונים: כללי
| שלב השאילתה | תיאור המדד |
|---|---|
Async processing |
משך הזמן בשניות שבו worker אסינכרוני מבלה בשאילתה. ה-worker ממשיך לעבוד על השאילתה עד לסיום שלב עיבוד התוצאות, ולכן המדד הזה חופף לרוב המדדים האחרים בדף הזה. |
Connection Held |
הזמן בשניות שבו המכונה של Looker שומרת על חיבור למסד הנתונים של הלקוח. השלב הזה כולל את הזמן שלוקח למסד הנתונים של הלקוח להריץ את שאילתת ה-SQL. |
לכל מדד יש גם ערך ממוצע. הקבוצה Timings: Summaries מציגה את הזמן הכולל והממוצע של כל שלב.
מדדים של BigQuery BI Engine
אם אתם משתמשים ב-BigQuery BI Engine עם Looker, אתם יכולים להשתמש ב-Explore של מדדי ביצועי השאילתות כדי להציג מידע ספציפי למסד הנתונים על השאילתות שלכם. שאילתות שלא משתמשות ב-BI Engine ושאילתות של מסדי נתונים שאינם מסדי נתונים של BigQuery מחזירות ערכי null למדדים האלה.
| מדד | תיאור המדד |
|---|---|
BigQuery Job ID |
מזהה המשימה ב-BigQuery של השאילתה (או NULL). כדי לקצר את זמן התגובה של שאילתות ב-BigQuery, Looker מריץ שאילתות ב-BigQuery באמצעות אם המערכת של BigQuery קובעת שהיא לא יכולה להחזיר תוצאות מיידיות, היא יוצרת משימה ולשאילתה יהיה מזהה משימה ב-BigQuery (ומזהה השאילתה ב-BigQuery יהיה NULL). |
BigQuery Query ID |
מזהה השאילתה ב-BigQuery (או NULL). כדי לקצר את זמן התגובה לשאילתות ב-BigQuery, Looker מריץ שאילתות BigQuery באמצעות אם מערכת BigQuery קובעת שהיא לא יכולה להחזיר תוצאות באופן מיידי, היא יוצרת משימה ולשאילתה יהיה מזהה משימה ב-BigQuery (ומזהה השאילתה ב-BigQuery יהיה NULL). אם השדה הזה ריק, BigQuery לא הצליח להריץ את השאילתה באופן מיידי, ובמקום זאת יצר משימה להרצת השאילתה. במקום זאת, אפשר להשתמש ב- |
BI Engine Mode |
האם השאילתה הופעלה באופן חלקי או מלא עם האצה. מידע נוסף על הערכים האפשריים בשדה הזה זמין במאמר סטטיסטיקות של האצת BI Engine. |
BI Engine Reason |
אם לא ניתן היה להריץ את השאילתה בהאצה מלאה, השדה הזה מציג את הסיבה. ההודעה הזו מגיעה ישירות מ-Google BigQuery. |
פתרון בעיות באמצעות מדדים לבדיקת ביצועים של שאילתות
ניתוח מדדי השאילתות יכול לעזור לשפר את הביצועים במופע של Looker. כדי להתחיל, בוחרים את מרכז הבקרה Performance Recommendations מרשימת מרכזי הבקרה של System Activity.