בדף הזה מוסבר איך לעקוב אחרי השאילתות שפעילות במסד הנתונים ולפתור בעיות שקשורות אליהן. שאילתות פעילות הן שאילתות שפועלות במשך זמן רב במסד הנתונים ויכולות להשפיע על הביצועים. מעקב אחרי השאילתות האלה יכול לעזור לזהות את הסיבות לחביון המערכת ולשימוש גבוה ב-CPU.
אפשר לראות את השאילתות הפעילות במרכז הבקרה של תובנות לגבי שאילתות. השאילתות האלה מוצגות לפי שעת התחלת העסקה. אם מופעל מספר גדול של שאילתות, יכול להיות שהתוצאות יוגבלו לקבוצת משנה של השאילתות הכוללות, בגלל מגבלות הזיכרון שהמערכת מטילה על איסוף הנתונים.
לפני שמתחילים
כדי להתחיל לצפות בשאילתות פעילות, צריך להפעיל את התכונות המתקדמות של תובנות לגבי שאילתות ולהפעיל את הניתוח של שאילתות פעילות במופע שלכם באופן הבא:
נכנסים לדף Clusters במסוף Google Cloud .
ברשימת האשכולות והמכונות, לוחצים על מכונת primary או על מכונת read pool.
לוחצים על תובנות לגבי שאילתות.
לוחצים על עריכת ההגדרות.
בחלון Edit query insights settings (עריכת הגדרות של תובנות לגבי שאילתות), בוחרים באפשרות Enable advanced query insights features for AlloyDB (הפעלת תכונות מתקדמות של תובנות לגבי שאילתות ב-AlloyDB) > Active Query Analysis (ניתוח שאילתות פעילות).
לוחצים על שמירת השינויים.
בחלון השינויים דורשים הפעלה מחדש, לוחצים על אישור והפעלה מחדש.
אתם יכולים להשתמש ב-Gemini Cloud Assist כדי לעקוב אחרי המשאבים שלכם ב-AlloyDB ל-PostgreSQL ולפתור בעיות שקשורות אליהם. מידע נוסף זמין במאמר בנושא מעקב ופתרון בעיות בעזרת Gemini.
הצגת שאילתות פעילות
כדי לראות את השאילתות הפעילות:
יוצרים תפקיד בהתאמה אישית ומוסיפים את ההרשאה
databaseinsights.monitoringViewerלניהול זהויות והרשאות גישה (IAM).מוסיפים את התפקיד הזה לכל משתמש שצופה בשאילתות פעילות.
במסוף Google Cloud , פותחים את הדף AlloyDB.
לוחצים על שם האשכול כדי לפתוח את הדף סקירה כללית שלו.
לוחצים על הכרטיסייה תובנות לגבי שאילתות. במרכז השליטה של תובנות לגבי שאילתות מוצגים פרטים על האשכול שנבחר.
לוחצים על הכרטיסייה תצוגת שאילתות פעילות. בכרטיסייה מוצג סיכום של השאילתות הפעילות שפועלות, יחד עם 50 העסקאות שפועלות הכי הרבה זמן.
אפשר לסנן את המידע לפי אחד מהקריטריונים הבאים:
- מסד נתונים: מסנן את עומס השאילתות במסד נתונים ספציפי או בכל מסדי הנתונים.
- משתמש: מסנן את עומס השאילתות ממשתמש מסוים במסד הנתונים או מכל המשתמשים.
- מזהה צומת: מוצג רק במופעים של מאגר קריאה. מסנן את עומס השאילתות בצומת ספציפי של מופע מאגר קריאה או בכל הצמתים.
כרטיס ניקוד של סיכום כל השאילתות הפעילות שעברו נרמול: מספק סקירה כללית של כל השאילתות הפעילות על ידי הצגת סך כל החיבורים על סמך הפרמטרים הבאים:
- התפלגות של חיבורים פעילים לפי מצב החיבור.
- התפלגות של חיבורים פעילים על סמך סוגים שונים של אירועי המתנה.
- התפלגות משכי הזמן של טרנזקציות לשאילתות שלא נמצאות במצב המתנה.
העסקאות שפועלות הכי הרבה זמן: סקירה כללית של 50 השאילתות המובילות שפועלות במצב
activeוidle in transactionעל סמך זמן הביצוע בסדר יורד.
אפשר לראות רשימה של חמישים שאילתות פעילות שעברו נרמול בלוח הבקרה של תובנות לגבי שאילתות.
שאילתה פעילה שעברה נורמליזציה מסירה מידע אישי ורגיש ומחזירה תקציר. לשתי שאילתות זהות, מלבד ערכי פסוקית ה-WHERE, יש אותו ערך גיבוב. לדוגמה, נניח שיש לכם את שלוש השאילתות הבאות:
select * from my_table where id = 1;select * from my_table where id = 2;select * from my_table where id = 100;
הגרסה המנורמלת של השאילתות האלה היא התקציר הבא:
select * from my_table where id = ?;
שאילתה שמופעלת בסשנים שונים מוצגת כרשומות שונות במרכז הבקרה.
הצגת העסקאות הארוכות ביותר
בטבלה הבאה מתוארות העמודות בטבלה Longest running transactions בלוח הבקרה של תובנות לגבי שאילתות:
| שם העמודה | תיאור |
|---|---|
| מזהה תהליך | מזהה התהליך הוא המזהה הייחודי של חיבור מסד הנתונים. |
| מזהה צומת | מזהה הצומת הוא המזהה הייחודי של צומת מופע מאגר הקריאה שבו מתבצעת שאילתה. |
| שאילתה | טקסט שאילתת SQL שעבר נרמול. |
| סטטוס | הסטטוס הנוכחי של החיבור. ערכי הסטטוס כוללים את active ו-idle in transaction. |
| משך הסשן | משך הסשן הנוכחי (בשניות). |
| משך העסקה | משך העסקה הנוכחית (בשניות). |
| משך השאילתה | משך הזמן של השאילתה הפעילה הנוכחית (בשניות). משך השאילתות במצב idle in transaction הוא 0 כי הן לא פועלות באופן פעיל. |
| סוג אירוע ההמתנה | סוג אירוע ההמתנה שמתרחש במהלך הרצת השאילתה. |
| אירוע המתנה | אירוע ההמתנה שמתרחש במהלך הרצת השאילתה. |
| מסד נתונים | השם של מסד הנתונים שבו הקישור הזה פועל. |
| שם האפליקציה | שם האפליקציה שבה הקישור הזה פועל. |
| שם משתמש | השם של משתמש מסד הנתונים שמחובר למסד הנתונים. |
| כתובת הלקוח | כתובת IP ספציפית של הלקוח ששלח שאילתה. |
| פעולה | הודעה שמכילה קישור לביטול עסקה. |
התצוגה מתעדכנת אוטומטית כל 60 שניות.
שימוש בשדות Database ו-User לסינון מרענן את הנתונים בדף.
כדי לנתח נתונים סטטיים, משביתים את האפשרות רענון אוטומטי ומשתמשים בשדה מסנן בטבלה העסקאות עם משך הפעולה הארוך ביותר לפי הצורך.
הפסקת שאילתה או עסקה
כדי להפסיק שאילתה או עסקה, צריך להיות לכם תפקיד databaseinsights.operationsAdmin. מידע נוסף מופיע במאמר מסמך עזר בנושא תפקידים בסיסיים ומוגדרים מראש ב-IAM.
עסקה יכולה לכלול כמה שאילתות. כדי לזהות אילו מהשאילתות פעילות כרגע, מעיינים בעמודה שאילתה בטבלה העסקה שפועלת הכי הרבה זמן.
כדי להפסיק שאילתה או עסקה:
- בוחרים את השאילתה בטבלה Longest running transaction (העסקה עם זמן הריצה הארוך ביותר).
- גוללים שמאלה לעמודה Action (פעולה).
- לוחצים על סיום הקישור.
בחלון סיום הקישור, לוחצים על אישור.
הדף מתרענן אחרי שמתחילים את סיום התהליך. אם סיום השאילתה נכשל, לא מוצגת הודעה והשאילתה ממשיכה להופיע ברשימת השאילתות הפעילות. אם סיום השאילתה מצליח, היא לא מוצגת יותר ברשימה.