ניהול מספר גדול של טבלאות

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

בדף הזה מוסבר איך פועלת מערכת ההמלצות לגבי מספר גדול של טבלאות ואיך אפשר להשתמש בה.

איך זה עובד

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

הכלי להמלצות על מספר גבוה של טבלאות ב-Cloud SQL מנתח מדדים של מספר הטבלאות במכונת Cloud SQL MySQL. אם מספר הטבלאות גדול מ-80% ממגבלת ה-SLA או שווה לה, כלומר 50,000 טבלאות, המופע נחשב כבעל מספר גבוה של טבלאות.

תמחור

שירות ההמלצות של Cloud SQL בנושא מספר גבוה של טבלאות פתוחות נמצא ברמת התמחור Standard של Recommender.

לפני שמתחילים

כדי לראות המלצות ותובנות, צריך לבצע את הפעולות הבאות:

  • כדי לקבל את ההרשאות לצפייה בתובנות ובהמלצות ולעבודה איתן, צריך לוודא שיש לכם את התפקידים הנדרשים.
    Tasks תפקידים
    לצפייה בהמלצות אחד מהתפקידים הבאים: recommender.cloudsqlViewer או cloudsql.viewer.
    יישום ההמלצות אחד מהתפקידים האלה: recommender.cloudsqlAdmin,‏ cloudsql.editor או cloudsql.admin.
    מידע נוסף על תפקידים זמין במאמרים הסבר על תפקידים ומתן הרשאות IAM.
  • מפעילים את Recommender API, אם הוא עדיין לא מופעל.

    תפקידים שנדרשים להפעלת ממשקי API

    כדי להפעיל ממשקי API, צריך את ההרשאה serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד 'בעלים' (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד 'אדמין בממשק Service Usage' (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידים

    להפעלת ה-API

רשימת המלצות לשיפור הביצועים של מופע

אפשר לראות את ההמלצות לשיפור הביצועים של מופע באמצעות Google Cloud המסוף, gcloud CLI או Recommender API.

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

המסוף

כדי להציג רשימה של המלצות לגבי ביצועי מכונות באמצעות מסוףGoogle Cloud , פועלים לפי השלבים הבאים:

  1. נכנסים לדף Cloud SQL Instances.

    כניסה לדף Cloud SQL Instances

  2. לוחצים על הצגת הכול בבאנר ההמלצות 'ניהול מספר גדול של טבלאות'.

אפשר גם לפעול לפי השלבים הבאים:

  1. עוברים אל Active Assist. מומלץ לעיין גם במאמר איך מתחילים להשתמש בדף ההמלצות.

    כניסה לדף Active Assist

  2. בכרטיס Improve Cloud SQL Instance Performance (שיפור הביצועים של מכונת Cloud SQL), לוחצים על View all (הצגת הכול).

  3. בוחרים את המופעים עם ההמלצה ניהול מספר גדול של טבלאות.

‫CLI של gcloud

כדי להציג רשימה של המלצות לשיפור הביצועים של המכונה באמצעות gcloud CLI, מריצים את הפקודה gcloud recommender recommendations list באופן הבא:

gcloud recommender recommendations list \
--project=PROJECT_ID \
--location=LOCATION \
--recommender=google.cloudsql.instance.PerformanceRecommender \
--filter=recommenderSubtype=MYSQL_HIGH_NUMBER_OF_TABLES_BEST_PRACTICE

מחליפים את מה שכתוב בשדות הבאים:

  • ‫PROJECT_ID: מזהה הפרויקט
  • ‫LOCATION: אזור, כמו us-central1

API

כדי להציג רשימה של המלצות לשיפור הביצועים של מופע באמצעות Recommendations API, מפעילים את method‏ recommendations.list באופן הבא:

GET https://recommender.googleapis.com/v1beta1/projects/PROJECT-ID/locations/LOCATION/recommenders/google.cloudsql.instance.PerformanceRecommender.MySqlHighNumberOfTablesBestPractice/recommendations

מחליפים את מה שכתוב בשדות הבאים:

  • ‫PROJECT_ID: מזהה הפרויקט.
  • ‫LOCATION: אזור, כמו us-central1.

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

צפייה בתובנות ובהמלצות מפורטות

אתם יכולים לראות תובנות והמלצות מפורטות לגבי מקרים שבהם יש מספר גדול של טבלאות באמצעות מסוף Google Cloud , gcloud CLI או Recommender API.

המסוף

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

‫CLI של gcloud

כדי לראות תובנות והמלצות מפורטות לגבי מקרים שקרובים לסף הביצועים באמצעות gcloud CLI, מריצים את הפקודה gcloud recommender insights list באופן הבא:

gcloud recommender insights list \
--project=PROJECT_ID \
--location=LOCATION \
--insight-type=google.cloudsql.instance.PerformanceInsight \
--filter=insightSubtype=MYSQL_HIGH_NUMBER_OF_TABLES

מחליפים את מה שכתוב בשדות הבאים:

  • ‫PROJECT_ID: מזהה הפרויקט.
  • ‫LOCATION: אזור, כמו us-central1.

API

כדי לראות תובנות והמלצות מפורטות לגבי מקרים שקרובים לסף הביצועים באמצעות Recommendations API, צריך לקרוא לשיטה insights.list באופן הבא:

GET https://recommender.googleapis.com/v1beta1/projects/PROJECT-ID/locations/LOCATION/insightTypes/google.cloudsql.instance.PerformanceRecommender.MySqlHighNumberOfTables/insights

מחליפים את מה שכתוב בשדות הבאים:

  • ‫PROJECT_ID: מזהה הפרויקט.
  • ‫LOCATION: אזור, כמו us-central1.

בטבלה הבאה מפורטים התובנות וההמלצות שמתקבלות מהכלי להמלצות של Cloud SQL high-number-of-open-tables, כדי לעזור לכם לשפר את הביצועים. סוגי המשנה מוצגים בתוצאות של gcloud CLI ושל API.

תובנה המלצה
מספר הטבלאות במופע הזה גדול או שווה ל-80% ממגבלת ה-SLA, שהיא 50,000 טבלאות.
Subtype: MYSQL_HIGH_NUMBER_OF_TABLES
שיפור הביצועים של מכונת Cloud SQL על ידי צמצום מספר הטבלאות.
Subtype: MYSQL_HIGH_NUMBER_OF_TABLES_BEST_PRACTICE

יישום ההמלצות

בודקים את ההמלצות בקפידה ומבצעים אחת מהפעולות הבאות:

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

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

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

אופטימיזציה של הביצועים של המופע

  • עורכים את המופע כדי להגדיל את מספר ה-vCPU ל-32 ליבות לפחות ואת גודל הזיכרון ל-200GB לפחות. כך מגדילים את מגבלת הטבלה של המופע מ-50,000 ל-500,000.

  • מחיקת טבלאות מיותרות:

    DROP TABLE TABLE_NAME; 

    מחליפים את מה שכתוב בשדות הבאים:

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

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

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

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