התאמת הביצועים היא תהליך איטרטיבי שבו בודקים מדדים כמו ניצול CPU וחביון, משנים את הסכימה ואת האפליקציה כדי לשפר את הביצועים, ואז בודקים שוב.
לדוגמה, בסכימה אפשר להוסיף או לשנות אינדקס, או לשנות מפתח ראשי. יכול להיות שבאפליקציה שלכם תבצעו כתיבה באצווה, או שתמזגו או תשנו את השאילתות.
במיוחד לגבי תנועת נתונים בסביבת ייצור, חשוב לבצע אופטימיזציה של הביצועים כדי למנוע הפתעות. ככל שההגדרה קרובה יותר לנתוני התפוקה ולגדלי הנתונים של תנועת הייצור בזמן אמת, כך כוונון הביצועים יעיל יותר.
כדי לבדוק ולשפר את הביצועים של הסכימה והאפליקציה, פועלים לפי השלבים הבאים:
- העלאה של קבוצת משנה של הנתונים למסד נתונים ב-Spanner. אתם יכולים להשתמש בתהליך העבודה של BigQuery reverse ETL כדי לטעון את הנתונים לדוגמה. מידע נוסף זמין במאמר בנושא טעינת נתוני דוגמה.
- מפנים את האפליקציה אל Spanner.
- כדי לוודא שהמסד נתונים עקבי, בודקים את התהליכים הבסיסיים.
- כדי לוודא שהביצועים עומדים בציפיות שלכם, מומלץ לבצע בדיקות עומס באפליקציה. כדי לקבל עזרה בזיהוי השאילתות הכי יקרות ובאופטימיזציה שלהן, אפשר לעיין במאמר בנושא זיהוי בעיות בביצועים של שאילתות באמצעות תובנות לגבי שאילתות.
באופן ספציפי, הגורמים הבאים יכולים לתרום לביצועים לא אופטימליים של שאילתות:
- שאילתות לא יעילות: מידע על כתיבת שאילתות SQL יעילות זמין במאמר שיטות מומלצות ל-SQL.
- ניצול גבוה של CPU: מידע נוסף זמין במאמר בנושא בדיקת ניצול גבוה של CPU.
- נעילה: כדי לצמצם צווארי בקבוק שנגרמים מנעילת טרנזקציות, אפשר לעיין במאמר בנושא זיהוי טרנזקציות שעלולות לגרום לזמני אחזור ארוכים.
- תכנון לא יעיל של הסכימה: אם הסכימה לא מתוכננת היטב, האופטימיזציה של השאילתה לא תהיה יעילה במיוחד. מידע נוסף על תכנון סכימות טובות זמין במאמר שיטות מומלצות לתכנון סכימות.
- נקודות חמות: נקודות חמות ב-Spanner מגבילות את קצב העברת הנתונים לכתיבה, במיוחד באפליקציות עם QPS גבוה. כדי לזהות נקודות חמות או בעיות בתכנון הסכימה, בודקים את הנתונים הסטטיסטיים של Key Visualizer במסוף Google Cloud . מידע נוסף על הימנעות מנקודות חמות זמין במאמר בחירת מפתח ראשי למניעת נקודות חמות.
- אם משנים סכימה או אינדקסים, צריך לחזור על בדיקת העקביות והביצועים של מסד הנתונים עד שמגיעים לתוצאות משביעות רצון.
לקבלת מידע נוסף על שיפור הביצועים של מסד הנתונים, אפשר לפנות אל התמיכה של Spanner.