מידע על רפליקציה ב-Cloud SQL

שכפול הוא היכולת ליצור עותקים של מכונת Cloud SQL ולהעביר עבודה לעותקים.

מבוא

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

סיבות אחרות לשכפול כוללות העברת נתונים בין אזורים.

בנוסף, אם מופע מקורי מושחת, אפשר לקדם רפליקה למופע עצמאי (במקרה כזה, רפליקות קיימות לא יראו את המופע הזה כמופע ראשי).

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

כשמשכפלים את הנתונים בפעם הראשונה:

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

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

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

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

‫Cloud SQL תומך בסוגים הבאים של רפליקות:

באמצעות אכיפת מחברים, אתם יכולים לאכוף שימוש רק בשרת proxy ל-Cloud SQL Auth או במחברים של Cloud SQL Language כדי להתחבר למכונות Cloud SQL. כשהאכיפה של המחבר מופעלת, Cloud SQL דוחה חיבורים ישירים למסד הנתונים. אי אפשר ליצור עותקים לקריאה של מופע שמופעלת בו אכיפה של מחברים. באופן דומה, אם למכונה יש רפליקות לקריאה, אי אפשר להפעיל את אכיפת המחבר במכונה.

‫Cloud SQL לא תומך בשכפול בין שני שרתים חיצוניים.

Read replicas

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

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

מתחברים ישירות לרפליקה באמצעות שם החיבור וכתובת ה-IP שלה. אם מתחברים לרפליקה באמצעות כתובת IP פרטית, אין צורך ליצור חיבור פרטי נוסף ל-VPC עבור הרפליקה, כי החיבור עובר בירושה מהמכונה הראשית.

מידע על יצירת עותק לקריאה זמין במאמר יצירת עותקים לקריאה. מידע על ניהול רפליקה לקריאה מופיע במאמר בנושא ניהול רפליקות לקריאה.

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

בחירת סוג מכונה מתאים

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

נפח אחסון ברפליקות לקריאה

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

רפליקות לקריאה באזורים שונים

רפליקציה בין אזורים מאפשרת ליצור רפליקה לקריאה באזור שונה מהמופע הראשי. יוצרים רפליקה לקריאה באזור אחר באותו אופן שבו יוצרים רפליקה באותו אזור.

במקרה של רפליקות לקריאה של SQL Server, ההנחה היא שהרפליקה נמצאת באותה רשת וירטואלית כמו הרפליקה הראשית, או שהן מתקשרות באמצעות כתובת IP ציבורית.

רפליקות בין אזורים:

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

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

שכפול קריאה מדורג

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

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

הסברים על המונחים

  • רפליקה מדורגת: רפליקה לקריאה חוצה אזורים שאפשר להשתמש בה לפעולות של מעבר גיבוי אוטומטי וגיבוי אוטומטי של רפליקה בתוכנית מתקדמת להתאוששות מאסון (DR) עם Cloud SQL ל-SQL Server.
  • שכפול מדורג: עותק לקריאה שיכול להיות לו עותק משלו.
  • רמות: אפשר ליצור רמות של רפליקות בהיררכיית רפליקות מדורגת. לדוגמה, אם מוסיפים ארבעה עותקים למקרה שימוש, ארבעת העותקים האלה נמצאים באותה רמה.
  • מופעים מקבילים: כמה רפליקות שמשכפלות מאותו מופע ראשי. פריטים באותה רמה בהיררכיית העותק. לשכפול יכולים להיות עד שמונה אחים.
  • רפליקה מסוג Leaf: רפליקה לקריאה שאין לה רפליקות משלה. בהיררכיית שכפול מרובת רמות, העותק המשוכפל ברמת העלה הוא הרמה האחרונה.
  • קידום פעולה שממירה עותק, בכל רמה בהיררכיה, למופע ראשי. כשמקודמים את העותק, היררכיית העותקים המשוכפלים הקיימת נשמרת.

הגדרה של עותקים משוכפלים מדורגים

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

מידע נוסף על הגדרת קבוצות זמינות מבוזרות זמין במאמר הגדרת קבוצת זמינות מבוזרת Always On.

הגבלות

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

תרחישי שימוש בשכפול

תרחישי השימוש הבאים רלוונטיים לכל סוג של שכפול.

שם ראשי רפליקה היתרונות ותרחישי השימוש מידע נוסף
קריאת רפליקה מכונה של Cloud SQL מכונה של Cloud SQL
  • קיבולת קריאה נוספת
  • יעד ב-Analytics
  • שיפור ביצועי הקריאה
  • ייצוא מרפליקות
רפליקת קריאה באזור אחר מכונה של Cloud SQL מכונה של Cloud SQL
  • קיבולת קריאה נוספת
  • יעד ב-Analytics
  • יכולת נוספת של תוכנית התאוששות מאסון (DR)
  • שיפור ביצועי קריאה
  • העברת נתונים בין אזורים
שכפול של SQL Server מכונה חיצונית ל-Cloud SQL מכונה של Cloud SQL ל-SQL Server
  • נתיב ההעברה ל-Cloud SQL
  • שכפול משרת חיצוני ל-Cloud SQL
  • שכפול מ-Cloud SQL לשרת חיצוני
  • שכפול בין מכונות של Cloud SQL
  • שכפול נתונים אל Google Cloud
  • יעד ב-Analytics

חיוב

  • החיוב על העתק לקריאה זהה לחיוב על מופע רגיל של Cloud SQL. אין חיוב על שכפול הנתונים.
  • התמחור של רפליקת קריאה חוצה-אזורים זהה לתמחור של יצירת מכונת Cloud SQL חדשה באזור. תוכלו לעיין במחירון של מכונות Cloud SQL ולבחור את האזור המתאים. בנוסף לעלות הרגילה שמשויכת למופע, שכפול חוצה אזורים כרוך בחיובים על העברת נתונים חוצה אזורים עבור יומני שכפול שנשלחים מהמופע הראשי למופע המשוכפל, כפי שמתואר בתמחור של תעבורת נתונים יוצאת (egress) ברשת.

קיצור דרך למידע על רפליקות לקריאה ב-Cloud SQL

נושא קבוצת הדיון
גיבויים אי אפשר להגדיר גיבויים בעותק המשוכפל.
ליבות וזיכרון העותקים לקריאה יכולים להשתמש במספר ליבות שונה ובכמות זיכרון שונה מאלה של המופע הראשי.
מחיקת המופע הראשי כדי למחוק מופע ראשי, צריך להפוך את כל העותקים לקריאה בלבד למופעים עצמאיים או למחוק אותם.
מחיקת העותק כשמוחקים עותק משוכפל, אין לכך השפעה על הסטטוס של המופע הראשי.
מחיקה של מסד נתונים משוכפל אפשר למחוק מסד נתונים משוכפל של SQL Server באמצעות Google Cloud המסוף או הפקודה gcloud, והמחיקה מועברת אוטומטית לשכפולים. אי אפשר למחוק מסד נתונים משוכפל של SQL Server באמצעות פקודות T-SQL.
מעבר לגיבוי (Failover) מופע ראשי יכול לבצע מעבר לגיבוי אוטומטי לרפליקה רק אם הרפליקה היא רפליקת DR. רפליקות לקריאה לא יכולות לבצע מעבר לגיבוי בכל דרך שהיא במהלך הפסקת שירות.
איזון עומסים ‫Cloud SQL לא מספק איזון עומסים בין העתקים.
חלונות זמן לתחזוקה הרפליקות לקריאה חולקות את חלונות הזמן לתחזוקה עם המכונה הראשית. הרפליקות פועלות לפי הגדרות התחזוקה של המכונה הראשית, כולל חלון הזמן לתחזוקה, שינוי מועד התחזוקה ותקופת התחזוקה האסורה. במהלך התחזוקה, מערכת Cloud SQL מעדכנת קודם את כל הרפליקות לקריאה לפני שהיא מעדכנת את המכונה הראשית.
עותקי קריאה מרובים אפשר ליצור עד 8 רפליקות לקריאה עבור מופע ראשי יחיד.
כתובת IP פרטית אם אתם מתחברים לרפליקה באמצעות כתובת IP פרטית, אתם לא צריכים ליצור חיבור VPC פרטי נוסף לרפליקה, כי היא מקבלת אותו בירושה מהמופע הראשי.
שחזור המופע הראשי אי אפשר לשחזר את המופע הראשי של העותק המשוכפל בזמן שהעותק המשוכפל קיים. לפני שמשחזרים מכונה מגיבוי או מבצעים בה שחזור מערכת מנקודה מסוימת בזמן (PITR), צריך לקדם או למחוק את כל העותקים שלה.
הגדרות ההגדרות של המופע הראשי מועברות למופע המשוכפל, כולל שינויים בנתונים על משתמשים שיכולים לגשת למופע.
הפסקת העתק אי אפשר stop עותק משוכפל. אתם יכולים restart או delete אותו, אבל אתם לא יכולים להפסיק אותו כמו שאתם יכולים להפסיק מופע ראשי.
שדרוג רפליקה שדרוג משבש יכול להתרחש בכל שלב בעותקי קריאה.
טבלאות משתמשים אי אפשר לבצע שינויים בעותק המשוכפל. כל השינויים שקשורים למשתמשים צריכים להתבצע במופע הראשי.

מגבלות

  • התכונה הזו חלה רק על הגרסאות הבאות של Cloud SQL ל-SQL Server:

    • ‫SQL Server 2017 Enterprise
    • ‫SQL Server 2019 Enterprise
    • SQL Server 2022 Enterprise
  • ‫Cloud SQL לא תומך ברפליקות של שחזור מתקדם אחרי אסון (DR) באותו אזור. אם רוצים ליצור העתק לקריאה באותו אזור כמו המקור, אפשר להפוך את העותק לקריאה למופע ראשי חדש.

  • שכפול מדורג זמין רק במהדורת Cloud SQL Enterprise Plus.

  • אי אפשר ליצור עותק משוכפל מדורג במסוף Google Cloud .

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

  • צריך לעקוב אחרי העותק באמצעות T-SQL או SQL Server Management Studio.

  • לפני שמוחקים מסד נתונים, צריך לסגור את החיבורים למסד הנתונים.

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

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

    • אסור להכיל מסדי נתונים במצב משתמש יחיד.
    • אסור להכיל מסדי נתונים במצב OFFLINE.
    • אסור לכלול מסדי נתונים במצב קריאה-בלבד.
    • הם לא יכולים להכיל מסדי נתונים שהאפשרות 'סגירה אוטומטית' מופעלת בהם.
    • אסור להשתמש בו כמסד נתונים להפצה.
    • אסור להפעיל שכפול טרנזקציות מסוג push.
    • אסור שיהיה תמונת מצב של מסד נתונים.

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

    Instance is not eligible for replica creation...
    
  • אי אפשר להגדיר שכפול במופע שהוגדר עם שכפול חיצוני.

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