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

הכלי להמלצות של 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

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

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

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

המסוף

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

  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.

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

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

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

המסוף

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

‫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 טבלאות.
תת-סוג: MYSQL_HIGH_NUMBER_OF_TABLES
שיפור הביצועים של מכונות Cloud SQL על ידי צמצום מספר הטבלאות.
תת-סוג: 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 בנושא מרחבי טבלאות כלליים.

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