המלצות לגבי גודל ופריסה

במסמך הזה מפורטות המלצות לגבי עומסי עבודה ופריסות לצורך קביעת הגודל של מכונות AlloyDB ל-PostgreSQL, גם לעומסי עבודה של עיבוד טרנזקציות אונליין (OLTP) וגם לעומסי עבודה של עיבוד אנליטי אונליין (OLAP).

סקירה כללית

כדי לעזור לכם לשפר את הביצועים של מסד הנתונים, AlloyDB ל-PostgreSQL מספק את התכונות המובנות הבאות:

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

כדי לשפר את הביצועים של מכונת AlloyDB ל-PostgreSQL, צריך לנהל את הדברים הבאים::

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

שיקולים לגבי גודל

לפני שקובעים את הגודל של מכונת AlloyDB ל-PostgreSQL, צריך לקבוע את הפרטים הבאים:

  • סוג עומס העבודה: OLTP,‏ OLAP או HTAP
  • דרישות ביצועים: דרישות לגבי זמן האחזור וקצב העברת הנתונים
  • גודל הנתונים הצפוי: גודל הנתונים שאתם מתכננים לאחסן ב-AlloyDB ל-PostgreSQL, וגודל מערך הנתונים הפעיל
  • היקף עומס העבודה: עלייה או גידול בגודל הנתונים לאורך זמן

עומסי עבודה של OLTP

אפשר לפרוס את מסד הנתונים שלכם ב-AlloyDB ל-PostgreSQL כמופע אזורי (צומת יחיד) או כמופע עם זמינות גבוהה (שני צמתים בכל אזור). אפשר גם להוסיף מופעים של מאגר קריאה ואשכול משני באזור אחר לעומסי עבודה שמפוזרים גיאוגרפית או לתוכנית התאוששות מאסון (DR).

‫AlloyDB ל-PostgreSQL נפרס באמצעות ארכיטקטורה מבוזרת בקנה מידה של ענן, עם מחשוב ואחסון מפורקים. פעולות הכתיבה מאושרות ברגע שקובצי יומן הכתיבה מראש (WAL) נשמרים באחסון האזורי, בזמן שהחומר של הבלוק מועבר לאחסון.

באופן דומה, בארכיטקטורת מטמון רב-שכבתית, הנתונים ממוקמים באופן אוטומטי בין מטמון המאגר, מטמון מהיר במיוחד ומנוע האחסון החכם. בגלל ארכיטקטורת המטמון הרב-שכבתית שמשמשת ב-AlloyDB ל-PostgreSQL, פעולות קלט ופלט בשנייה (IOPS) לא רלוונטיות בהקשר של AlloyDB ל-PostgreSQL להשוואה עם מערכות מסדי נתונים אחרות.

עם זאת, שימוש בנתונים של עסקאות לשנייה (TPS) או עסקאות לדקה (TPM) יכול לספק השוואה משמעותית כדי להבין את כמות הנתונים שאפשר לטפל בהם ב-AlloyDB ל-PostgreSQL.

מדד הגודל העיקרי הוא TPS. כדי להעריך את הגודל הנדרש של AlloyDB ל-PostgreSQL, פועלים לפי השלבים הבאים:

  1. זיהוי עומס העבודה הקיים. אם אתם מבצעים העברה מ-PostgreSQL בניהול עצמי או ממסדי נתונים מסחריים אחרים, יכול להיות שכבר יש לכם את ערך ה-TPS של עומס העבודה הקיים.
  2. ניתוח השאילתות. זיהוי השאילתות הקריטיות ביותר בעומס העבודה וקביעת דרישות הביצועים שלהן.
  3. משתמשים בכלי כמו HammerDB או pgbench. הכלים האלה עוזרים להשוות את הביצועים של AlloyDB ל-PostgreSQL ולקבוע אם גודל המכונה עונה על דרישות ה-TPS שלכם.
  4. משתמשים במדריך להשוואת ביצועים של OLTP ב-AlloyDB ל-PostgreSQL. במדריך הזה מפורטים נתוני ביצועים של תצורות שונות של AlloyDB ל-PostgreSQL, כדי שתוכלו למצוא תצורה שתעמוד בדרישות ה-TPS שלכם.
  5. בוחרים גודל מתאים של AlloyDB ל-PostgreSQL. כדאי לקחת בחשבון את גודל הנתונים הנוכחי ואת הצפי לצמיחה בעתיד.

הנחיות לגבי גודל המכונה

בטבלת הדוגמה הבאה מוצגות המלצות לנתונים עם השוואה לביצועים של TPC-C, שכוללת יחס קריאה-כתיבה של כ-65% קריאות ו-35% כתיבות. כשקובעים את הגודל של מופע AlloyDB ל-PostgreSQL, צריך לשאוף לניצול מעבד (CPU) במצב יציב של כ-60-70% כדי להימנע מתקורה של תזמון מערכת ההפעלה. כך יש מרווח ביטחון למקרים של עליות חדות בניצול המשאבים על ידי אפליקציות לקוח.

vCPU/Mem עסקאות מומלצות לשנייה
טווח (30% נשמר במטמון)
גודל נתונים מומלץ לעבודה (עד 128TB גודל כולל)
הערך המומלץ ל-max_connections
‫2 / 16GB עד 1,000 עד 100GB 1000
‫4 / 32GB עד 2,500 עד 250GB 2000
‫8/ 64GB עד 4,000 עד 500GB 4000
‫16 / 128GB עד 8,000 עד 1TB 5,000
‫32GB / 256GB עד 14,000 עד ‎3TB 5,000
‫64 / 512GB עד 20,000 עד 8TB 5,000
‫96 / 768GB עד 25,000 עד 16TB 5,000
‫128 / 864GB יותר מ-20,000 עד ‎32TB 5,000

סוגי פריסה

בהתאם לעומס העבודה, אתם יכולים לפרוס את AlloyDB ל-PostgreSQL כמכונה ראשית בלבד או כמכונה ראשית עם מאגר קריאה.

רק ראשי

בוחרים פריסה ראשונית בלבד עבור עומסי העבודה הבאים:

  • כתיבה רבה עם קריאות ברמה נמוכה עד בינונית
  • שאילתות עם הרבה קריאות ומעט כתיבות
  • קריאה וכתיבה אופייניות ב-OLTP‏ (60-70% קריאות, 30-40% כתיבות).

מידע נוסף על סוגי מכונות זמין במאמר הנחיות כלליות לגבי גודל המכונה.

מכונה ראשית עם מאגר קריאה

אם בוחרים לפרוס יחידת אחסון ראשית עם מאגר קריאה, כדאי לשקול את הנקודות הבאות:

  • אם יש לכם קריאות שרגישות לזמן אחזור, כדאי להעביר את שאילתות הקריאה למופעים של מאגר קריאה. אפשר להגדיר עד 20 צמתים בכל המופעים של מאגר הקריאה. מידע נוסף זמין במאמר בנושא יצירת מופע של מאגר קריאה.
  • אם יש לכם יותר ממסד נתונים אחד – למשל, ניהול קשרי לקוחות (CRM) או Finance באותו מופע – אתם יכולים להגדיר כמה מופעים של מאגר קריאה. השימוש באסטרטגיה הזו עוזר לשמירה יעילה במטמון ולביצועי שאילתות.
  • אתם יכולים לשנות את הגודל של המופעים במאגר הקריאה ובמאגר הראשי בהתאם לדרישות שלכם. מידע נוסף על שיטות מומלצות לשימוש במופעי מאגר לקריאה זמין במאמר שיטות מומלצות לשיפור הביצועים והזמינות של AlloyDB.
  • כדי להשיג זמינות גבוהה, כדאי להוסיף יותר מצומת אחד לכל מופע של מאגר קריאה.
  • הפעלה סלקטיבית של מנוע מבוסס-עמודות במופעים ספציפיים של מאגר קריאה לשיפור הביצועים של שאילתות קריאה. במקרה הזה, לא צריך להפעיל את מנוע מבוסס-עמודות במופע הראשי.

כדאי להשתמש בתכונות מובנות כמו index advisor כדי להוסיף אינדקסים שיכולים לשפר את ביצועי השאילתות.

עומסי עבודה של OLAP

עבור עומסי עבודה של OLAP, מדד הגודל העיקרי הוא ביצועי השאילתות, במיוחד שאילתות שדורשות סריקות מלאות של טבלאות או צבירות. ‫AlloyDB ל-PostgreSQL כולל מנוע מבוסס-עמודות מובנה שעוזר להאיץ שאילתות ניתוח נתונים. הפעלת מנוע מבוסס-עמודות כברירת מחדל צורכת 30% מהזיכרון ומשתמשת אוטומטית בנתוני מטמון מהירים במיוחד.

למידע נוסף על מדידת ביצועי OLAP באמצעות AlloyDB ל-PostgreSQL עם עומס עבודה של TPC-H, אפשר לעיין במדריך בנושא השוואת ביצועים של OLAP ב-AlloyDB ל-PostgreSQL.

סוגי פריסה

בהתאם לעומס העבודה, אתם יכולים לפרוס את AlloyDB ל-PostgreSQL כמכונה ראשית בלבד או כמכונה ראשית עם מאגר קריאה.

רק ראשי

אם פורסים מופע ראשי בלבד, חשוב לשים לב לנקודות הבאות:

  • אפשר להשתמש בפריסה הזו גם לעסקאות עם שאילתות אנליטיות (HTAP).
  • הפעלת מנוע מבוסס-עמודות כדי לקבל עזרה בשאילתות OLAP.
  • מומלץ לפרוס עם מכונה עם 16 ליבות וירטואליות או יותר, שמספקת יותר זיכרון לאחסון נתונים בעמודות.

ראשי עם מאגר קריאה

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

  • אם יש לכם פעולות כתיבה כבדות וגם קריאות אנליטיות שרגישות לזמן אחזור עם דרישות נמוכות של השהיה, כדאי לפרוס את המכונה המרכזית עם זמינות גבוהה (HA) מופעלת, ועם מכונות ממאגר הקריאה.
  • מפעילים את מנוע מבוסס-העמודות במופעים של מאגר הקריאה שבהם מריצים את השאילתות האנליטיות.
  • אם יש לכם יותר ממסד נתונים אחד – למשל, ניהול קשרי לקוחות (CRM) או Finance באותו מופע – אתם יכולים להגדיר כמה מופעים של מאגר קריאה. השימוש באסטרטגיה הזו עוזר לשמירה יעילה במטמון ולביצועי שאילתות.
  • אתם יכולים לשנות את הגודל של המופעים במאגר הקריאה ובמאגר הראשי בהתאם לדרישות שלכם. מידע נוסף על שיטות מומלצות לשימוש במופעי מאגר לקריאה זמין במאמר שיטות מומלצות לשיפור הביצועים והזמינות של AlloyDB.
  • כדי להשיג זמינות גבוהה, כדאי להוסיף יותר מצומת אחד לכל מופע של מאגר קריאה.
  • הפעלה סלקטיבית של מנוע מבוסס-עמודות במופעים ספציפיים של מאגר קריאה לשיפור הביצועים של שאילתות קריאה. במקרה הזה, לא צריך להפעיל את מנוע מבוסס-עמודות במופע הראשי.

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