בדף הזה מתוארים הסוגים השונים של הגדרות מופעים שזמינים ב-Spanner, וההבדלים והפשרות ביניהם.
הגדרות של מכונות
הגדרת מופע של Spanner מגדירה את המיקום הגיאוגרפי של מסדי הנתונים במופע הזה ואת השכפול שלהם. כשיוצרים מופע, צריך להגדיר אותו כאזורי, כדו-אזורי או כרב-אזורי. כדי לבחור את ההגדרה הזו, צריך לבחור הגדרת מופע, שקובעת איפה הנתונים מאוחסנים במופע הזה:
- הגדרות לפי אזור: כל המשאבים נמצאים באותו אזור ב- Google Cloud
- הגדרות של אזור כפול: כל המשאבים משתרעים על שני אזורים ונמצאים במדינה אחת (זמין במהדורת Enterprise Plus)
- הגדרות של כמה אזורים: המשאבים משתרעים על יותר משני אזורים (זמין במהדורת Enterprise Plus)
מידע נוסף על שיקולים ספציפיים לאזור זמין במאמר מיקום גיאוגרפי ואזורים.
הגדרות המכונה עם אזורים מוגדרים מראש וטופולוגיות שכפול נקראות הגדרות בסיסיות של מכונה. אתם יכולים ליצור הגדרות מותאמות אישית של מכונות ולהוסיף רפליקות אופציונליות נוספות לקריאה בלבד להגדרת מכונה בסיסית מוגדרת מראש (זמין במהדורת Enterprise ובמהדורת Enterprise Plus). הרפליקה לקריאה בלבד שמוסיפים צריכה להיות באזור שלא נכלל בהגדרת המופע הקיים. רשימת האזורים האופציונליים לקריאה בלבד שאפשר להוסיף מופיעה בעמודה Optional Region בקטע Regional available configurations ו-Multi-region available configurations. אי אפשר לשנות את טופולוגיית השכפול של הגדרות מופע בסיסיות. מידע נוסף מופיע במאמר בנושא עותקים לקריאה בלבד.
אפשר להעביר את המכונה מכל הגדרת מכונה לכל הגדרת מכונה אזורית, בשני אזורים או רב-אזורית אחרת (לדוגמה, מ-regional-us-central1 ל-nam3). אפשר גם ליצור הגדרת מכונה מותאמת אישית חדשה עם רפליקות נוספות, ואז להעביר את המכונה להגדרת המכונה המותאמת אישית החדשה. לדוגמה, אם המכונה שלכם נמצאת ב-regional-us-central1 ואתם רוצים להוסיף רפליקה לקריאה בלבד us-west1, אתם צריכים ליצור הגדרת מכונה מותאמת אישית חדשה עם regional-us-central1 כהגדרת הבסיס, ולהוסיף את us-west1 כרפליקה לקריאה בלבד. לאחר מכן, מעבירים את המופע להגדרה החדשה של המופע המותאם אישית.
הגדרות אזוריות
שירותיGoogle Cloud זמינים במיקומים שונים בצפון אמריקה, בדרום אמריקה, באירופה, באסיה ובאוסטרליה. אם המשתמשים והשירותים שלכם ממוקמים באזור אחד, כדאי לבחור הגדרת מכונה אזורית כדי לקבל את זמן האחזור הנמוך ביותר לקריאה ולכתיבה.
לכל הגדרה אזורית בסיסית, Spanner שומר שלוש רפליקות לקריאה ולכתיבה, כל אחת באזור אחר באותו אזור. כל רפליקה לקריאה ולכתיבה מכילה עותק מלא של מסד הנתונים התפעולי, שיכול לטפל בבקשות לקריאה ולכתיבה ובבקשות לקריאה בלבד. Spanner משתמש ברפליקות באזורים שונים כדי שמסד הנתונים יישאר זמין אם מתרחשת תקלה באזור יחיד. Google Cloud
הגדרות זמינות
Spanner מציע את ההגדרות הבסיסיות הבאות של מופעים אזוריים. כדי לבקש אזור אופציונלי של העתק לקריאה בלבד שלא מופיע בטבלה הבאה, ממלאים את טופס הבקשה הזה. חשוב לזכור שאנחנו משתמשים בבקשות האלה כדי לאמוד את הביקוש באזורים עתידיים, ויכול להיות שלא נגיב ישירות לבקשה ששלחת.
| שם ההגדרה הבסיסית | תיאור האזור | אזור אופציונלי |
|---|---|---|
| אמריקה | ||
regional-northamerica-northeast1 |
מונטריאול
|
|
regional-northamerica-northeast2 |
טורונטו
|
|
regional-northamerica-south1 |
Querétaro <0 | |
regional-southamerica-east1 |
סאו פאולו
|
|
regional-southamerica-west1 |
סנטיאגו
|
|
regional-us-central1 |
איווה
|
קריאה בלבד: asia-northeast1 1-OR asia-south1 1-OR europe-west1 2-OR europe-west2 1-OR europe-west9 1-OR us-west3 1-OR |
regional-us-east1 |
דרום קרוליינה | קריאה בלבד: us-central1 1-OR us-west1 1-OR europe-west1 1-OR europe-west3 1-OR |
regional-us-east4 |
צפון וירג'יניה | |
regional-us-east5 |
קולומבוס | |
regional-us-south1 |
דאלאס
|
|
regional-us-west1 |
אורגון
|
|
regional-us-west2 |
לוס אנג'לס | |
regional-us-west3 |
סולט לייק סיטי | |
regional-us-west4 |
לאס וגאס | |
| אירופה | ||
regional-europe-central2 |
ורשה | |
regional-europe-north1 |
פינלנד
|
|
regional-europe-north2 |
שטוקהולם
|
|
regional-europe-southwest1 |
מדריד
|
|
regional-europe-west1 |
בלגיה
|
קריאה בלבד: us-central1 1-OR us-west1 1-OR |
regional-europe-west2 |
לונדון
|
|
regional-europe-west3 |
פרנקפורט | |
regional-europe-west4 |
הולנד
|
|
regional-europe-west6 |
ציריך
|
|
regional-europe-west8 |
מילאנו | |
regional-europe-west9 |
פריז
|
|
regional-europe-west10 |
ברלין | |
regional-europe-west12 |
טורינו | |
| אסיה ואזור האוקיינוס השקט | ||
regional-asia-east1 |
טייוואן | |
regional-asia-east2 |
הונג קונג | |
regional-asia-northeast1 |
טוקיו | |
regional-asia-northeast2 |
אוסקה | |
regional-asia-northeast3 |
סיאול | |
regional-asia-south1 |
מומבאי | |
regional-asia-south2 |
דלהי | |
regional-asia-southeast1 |
סינגפור | |
regional-asia-southeast2 |
ג'קארטה | |
regional-asia-southeast3 |
בנגקוק | |
regional-australia-southeast1 |
סידני | |
regional-australia-southeast2 |
מלבורן | |
| המזרח התיכון | ||
regional-me-central1 |
דוחה | |
regional-me-central2 |
דמאם | |
regional-me-west1 |
תל אביב | |
| אפריקה | ||
regional-africa-south1 |
יוהנסבורג | |
שכפול
ההגדרות האזוריות הבסיסיות מכילות שלוש רפליקות לקריאה ולכתיבה. כל שינוי ב-Spanner דורש קוורום כתיבה שמורכב מרוב העותקים המשוכפלים שמצביעים. במערכות אזוריות, קבוצות קוורום נוצרות משני עותקים מתוך שלושת העותקים. מידע נוסף על אזורים מובילים ועל עותקים משוכפלים להצבעה זמין במאמר שכפול.
אתם יכולים ליצור הגדרה מותאמת אישית של מופע אזורי ולהוסיף רפליקות אופציונליות לקריאה בלבד. רפליקות לקריאה בלבד יכולות לעזור להרחיב את הקריאות ולתמוך בקריאות לא עדכניות עם זמן טעינה קצר. העותקים האלה לקריאה בלבד לא משתתפים בקוורומים של כתיבה. הרפליקות לא משפיעות על הסכם רמת השירות (SLA) של Spanner >= 99.99% עבור מופעים אזוריים. אפשר להוסיף מיקומים שמופיעים בעמודה Optional Region(אזור אופציונלי) כעותקים אופציונליים לקריאה בלבד. אם לא מופיע המיקום שבחרתם לשכפול לקריאה בלבד, אתם יכולים לבקש אזור חדש אופציונלי לשכפול לקריאה בלבד. מידע נוסף מופיע במאמר Read-only replicas (רפליקות לקריאה בלבד).
שיטות מומלצות לשיפור הביצועים של הגדרות אזוריות
כדי להשיג ביצועים אופטימליים, כדאי לפעול לפי השיטות המומלצות הבאות:
- תכנון סכימה שמונעת נקודות חמות ובעיות אחרות בביצועים.
- כדאי למקם משאבי מחשוב קריטיים באותו אזור שבו נמצא מופע Spanner.
- כדאי להקצות מספיק קיבולת מחשוב כדי ששיעור ניצול המעבד הכולל בעדיפות גבוהה יהיה מתחת ל-65%.
- מידע על נפח התפוקה לכל צומת Spanner זמין במאמר ביצועים בהגדרות אזוריות.
הגדרות של שני אזורים
הגדרות של שני אזורים מאפשרות ליצור רפליקות של נתוני מסד הנתונים בכמה אזורים בשני אזורים במדינה אחת, כפי שמוגדר בהגדרות המופע.
הגדרות של שני אזורים מבצעות את הפעולות הבאות:
- הצגת קריאות משני אזורים במדינה אחת.
- עמידה בדרישות בנוגע למיקום של נתונים.
- מספק זמינות גבוהה יותר והסכמי רמת שירות (SLA) טובים יותר מאשר הגדרות אזוריות.
Spanner מציע הגדרות של שני אזורים באוסטרליה, בגרמניה, בהודו וביפן.
מידע על נפח התפוקה לכל צומת Spanner זמין במאמר ביצועים בהגדרות של שני אזורים.
הגדרות זמינות
Spanner מציע את ההגדרות הבסיסיות הבאות של מכונות בשני אזורים:
| שם ההגדרה הבסיסית | מיקום המשאב | אזורים |
|---|---|---|
dual-region-australia1 |
au (אוסטרליה) | סידני: australia-southeast1L, 2RW+1W מלבורן: australia-southeast2 2RW+1W |
dual-region-canada1 |
ca (קנדה) | טורונטו: northamerica-northeast2 L, 2RW+1W מונטריאול: northamerica-northeast1 2RW+1W |
dual-region-germany1 |
גרמנית (גרמניה) | ברלין: europe-west10 L, 2RW+1W פרנקפורט: europe-west3 2RW+1W |
dual-region-india1 |
בהודו | מומבאי: asia-south1 L, 2RW+1W דלהי: asia-south2 2RW+1W |
dual-region-japan1 |
jp (יפן) | טוקיו: asia-northeast1 L, 2RW+1W אוסקה: asia-northeast2 2RW+1W |
יתרונות
היתרונות העיקריים של מכונות וירטואליות בשני אזורים:
זמינות של 99.999%: בשני אזורים באותה מדינה, שזה יותר מהזמינות של 99.99% שמספקות תצורות אזוריות של Spanner.
הפצת נתונים: שכפול אוטומטי של הנתונים בין שני האזורים עם הבטחות חזקות למודל עקביות חזק.
דרישות בנוגע למיקום הנתונים: עומד בדרישות בנוגע למיקום הנתונים במדינות שמפורטות בקטע תצורות זמינות של אזור גאוגרפי כפול.
שכפול
בשני אזורים יש שש רפליקות, שלוש בכל אזור. אחד מהאזורים מוגדר כאזור המוביל שמוגדר כברירת מחדל (מופיע בטבלה הקודמת). אפשר לשנות את האזור הראשי של מסד נתונים. בכל אזור יש שתי רפליקות לקריאה ולכתיבה ורפליקת עדות אחת. כששני האזורים תקינים ופועלים בהגדרה של שני אזורים, הקוורום נקבע בכל ששת העותקים. כדי ליצור קוורום ולבצע טרנזקציה, צריך לפחות שני עותקים בכל אזור.
מעבר לגיבוי (Failover) וחזרה מגיבוי (Failback)
אחרי שיוצרים הגדרה של שני אזורים, אפשר לראות את המדד ציר הזמן של תקינות הקוורום בשני אזורים בלוח הבקרה תובנות לגבי המערכת. המדד הזה זמין רק להגדרות של שני אזורים. הוא מציג את תקינותן של שלוש קבוצות קוורום:
- הקבוצה שנדרשת להשגת רוב בשני אזורים:
Global - הקוורום של אזור יחיד בכל אזור (לדוגמה,
Sydneyו-Melbourne)
בציר הזמן מוצג פס כתום כשמתרחשים שיבושים בשירות. אפשר להעביר את העכבר מעל הפס כדי לראות את שעת ההתחלה ושעת הסיום של השיבוש.
כדי לקצר את זמן ההתאוששות (RTO), מומלץ לעקוב אחרי מדד ציר הזמן של תקינות הקוורום באזורים הכפולים או להגדיר התראה לגביו. המדד הזה עוזר לכם לקבל החלטות לגבי מעבר לגיבוי (failover) במקרה של כשלים אזוריים, ולנהל את המעבר בעצמכם. אחרי שמפעילים מעבר לגיבוי של מופע, המעבר בדרך כלל מסתיים תוך דקה אחת.
Spanner תומך גם במעבר אוטומטי לגיבוי (failover) שמנוהל על ידי Google, שיכול להימשך עד 45 דקות מהרגע שבו הכשל מזוהה לראשונה. ה-RTO הארוך יותר נובע מהמעקב של Google בכל השירותים. אנחנו צריכים לאסוף אותות נוספים כדי לוודא שיש שיבוש בכל האזור, ולוודא שיש השפעה ברמת האזור. בנוסף, כך אפשר לוודא שמעבר לגיבוי יביא לשיפור השירות הכולל למשתמשים בהגדרה.
כדי לבצע מעבר לגיבוי פעיל וחזרה מגיבוי פעיל באופן ידני, אפשר לעיין במאמר בנושא שינוי קוורום של אזור כפול.
כשמחליטים לבצע מעבר ידני לגיבוי ומעבר חזרה לגיבוי, כדאי להביא בחשבון את הנקודות הבאות:
אם כל שלושת הקוורומים תקינים, לא צריך לעשות כלום.
אם באחד מהאזורים מוצגת הפרעה, כנראה שיש הפרעה אזורית בשירות. יכול להיות שההפרעה הזו תגרום לירידה בזמינות של מסדי הנתונים שפועלים בקבוצת הרוב שלכם בשני אזורים. יכול להיות גם שפעולות כתיבה ייכשלו כי לא ניתן להקים קבוצת רוב, והעסקאות יסתיימו בסופו של דבר בטיימ-אאוט. באמצעות לוח הבקרה 'תובנות לגבי המערכת', תוכלו לעקוב אחרי שיעורי השגיאות והחביון במסד הנתונים. אם יש עלייה בשיעורי השגיאות או בחביון, מומלץ לבצע מעבר לגיבוי בענן, כלומר לשנות את קבוצת הרוב בשני אזורים מאזור יחיד לאזור שעדיין תקין. אחרי שהאזור עם ההפרעה יחזור לפעולה תקינה, תצטרכו לבצע חזרה לגיבוי בענן, כלומר לשנות את קבוצת הרוב בשני אזורים מאזור יחיד לשני אזורים. Google מבצעת מעבר לגיבוי בענן וחזרה לגיבוי בענן באופן אוטומטי כשהיא מזהה הפסקת חשמל אזורית. אתם יכולים גם לבצע מעבר לגיבוי בענן באופן ידני אם אתם מזהים הפרעה. עם זאת, אם ביצעתם מעבר לגיבוי בענן באופן ידני, אתם צריכים לזכור לבצע חזרה לגיבוי בענן באופן ידני.
אם קוורום שני האזורים מראה שיבוש למרות ששני האזורים הבודדים תקינים, יש בעיה בחלוקת הרשת. שני האזורים כבר לא יכולים לתקשר אחד עם השני, ולכן כל אחד מהם מראה תקינות למרות שהמערכת הכוללת לא תקינה. בתרחיש הזה, מומלץ לבצע יתירות כשל לאזור הראשי שמוגדר כברירת מחדל. אחרי שהבעיה בחלוקת הרשת תיפתר והקוורום של שני האזורים יחזור למצב תקין, תצטרכו לבצע מעבר חזרה לגיבוי באופן ידני.
שני אזורים מספקים יעד נקודת התאוששות (RPO) של אפס, כי אין אובדן נתונים במהלך הפסקת חשמל אזורית או כשמתעוררת בעיה של חלוקת רשת.
כדי לבדוק את המצב (יחיד או כפול) של הקוורום של שני האזורים, אפשר לעיין במאמר בנושא בדיקת קוורום של שני אזורים.
שיטות מומלצות למעבר לגיבוי ולחזרה מגיבוי
שיטות מומלצות ליתירות כשל ולחזרה מיתירות כשל:
- לא לבצע מעבר לגיבוי במקרה של כשל באזור יחיד אם לא מתרחשים כשלים או שיבושים באזור. מעבר לגיבוי באזור יחיד מגדיל את הסיכוי שהמערכת כולה לא תהיה זמינה אם תהיה תקלה באזור היחיד הזה.
- חשוב להפעיל שיקול דעת כשבוחרים את האזור למעבר לגיבוי. בחירה באזור שגוי למעבר לגיבוי (failover) גורמת לכך שהמסד נתונים לא יהיה זמין, ולא ניתן יהיה לשחזר אותו עד שהאזור יחזור להיות אונליין. כדי לוודא זאת, אפשר להשתמש בסקריפט bash כדי לבדוק את התקינות של האזור היחיד לפני שמבצעים את המעבר לגיבוי.
- אם האזור הלא תקין הוא אזור ברירת המחדל של הלידים, צריך לשנות את אזור ברירת המחדל של הלידים לאזור המעבר לגיבוי לאחר ביצוע המעבר לגיבוי. אחרי שמוודאים ששני האזורים תקינים שוב, מבצעים מעבר חזרה (failback) ואז משנים את האזור הראשי בחזרה לאזור הראשי המקורי.
- אם ביצעתם מעבר ידני לגיבוי, אל תשכחו לבצע מעבר חזרה ידני.
מגבלות
אי אפשר ליצור הגדרת מופע מותאמת אישית של שני אזורים. אי אפשר להוסיף רפליקות לקריאה בלבד להגדרת מופע של שני אזורים.
הגדרות במספר אזורים
במסגרת הגדרות אזוריות של Spanner, הנתונים משוכפלים בין כמה אזורים בתוך אזור יחיד. אבל יכול להיות שהגדרה אזורית לא תהיה אופטימלית אם:
- לרוב, האפליקציה צריכה לקרוא נתונים מכמה מיקומים גיאוגרפיים (לדוגמה, כדי להציג נתונים למשתמשים בצפון אמריקה ובאסיה).
- פעולות הכתיבה מתבצעות ממיקום שונה מזה של פעולות הקריאה (לדוגמה, אם יש לכם עומסי עבודה גדולים של כתיבה בצפון אמריקה ועומסי עבודה גדולים של קריאה באירופה).
הגדרות של מיקום מסוג 'מספר אזורים' יכולות:
- הצגת פעולות כתיבה מכמה אזורים.
- שמירה על זמינות במקרה של כשלים אזוריים.
- מספקות זמינות גבוהה יותר והסכמי רמת שירות (SLA) טובים יותר מאשר הגדרות אזוריות.
הגדרות של מספר אזורים מאפשרות לכם ליצור רפליקות של מסדי הנתונים בכמה אזורים, כפי שמוגדר בהגדרות המופע. כל הגדרה של מספר אזורים מכילה שני אזורים עם הרשאות קריאה וכתיבה. אזור עם הרשאות קריאה וכתיבה מכיל שתי רפליקות עם הרשאות קריאה וכתיבה שממוקמות באזורים נפרדים. הרפליקות האלה מאפשרות לכם לקרוא נתונים עם זמן טעינה קצר ממספר מיקומים שקרובים לאזורים בהגדרה או נמצאים בתוכם.
עם זאת, יש לכך מחיר, כי בהגדרה של כמה אזורים, הרפליקות של הקוורום (קריאה-כתיבה) מפוזרות ביותר מאזור אחד. יכול להיות שתבחינו בזמן אחזור נוסף ברשת כשהרפליקות האלה מתקשרות ביניהן כדי ליצור קוורום כתיבה. קריאות לא דורשות קוורום. התוצאה היא שהאפליקציה שלכם מבצעת קריאות מהירות יותר ביותר מקומות, אבל זמן האחזור של הכתיבה מתארך קצת. מידע נוסף זמין במאמר התפקיד של רפליקות בכתיבה ובקריאה.
הגדרות זמינות
Spanner מציע את ההגדרות הבסיסיות הבאות של מופעים עם מספר אזורים. כדי לבקש אזור אופציונלי של העתק לקריאה בלבד שלא מופיע בטבלה הבאה, ממלאים את טופס הבקשה הזה. חשוב לזכור שאנחנו משתמשים בבקשות האלה כדי לאמוד את הביקוש באזורים עתידיים, ויכול להיות שלא נגיב ישירות לבקשה ששלחת.
יבשת אחת
| שם ההגדרה הבסיסית | מיקום המשאב | אזורים עם הרשאת קריאה וכתיבה | אזורים לקריאה בלבד | אזור העדים | אזור אופציונלי |
|---|---|---|---|---|---|
asia1 |
גלובלי | טוקיו: asia-northeast1 L,2R אוסקה: asia-northeast2 2R |
ללא | סיאול: asia-northeast3 |
קריאה בלבד: us-west1 1-OR us-east5 1-OR |
asia2 A |
גלובלי | מומבאי: asia-south1 L,2R דלהי: asia-south2 2R סינגפור: asia-southeast1 1R |
ללא | ללא | |
eur3 |
eu (האיחוד האירופי) | בלגיה: europe-west1 L,2R הולנד: europe-west4 2R |
ללא | פינלנד: europe-north1 |
קריאה בלבד: us-central1 1-OR us-east4 1-OR |
eur5 |
גלובלי | לונדון: europe-west2 L,2R בלגיה: europe-west1 2R |
ללא | הולנד: europe-west4 |
קריאה בלבד: us-central1 1-OR us-east1 1-OR |
eur6 |
גלובלי | הולנד: europe-west4 L,2R פרנקפורט: europe-west3 2R |
ללא | ציריך: europe-west6 |
קריאה בלבד: us-east1 2-OR |
eur7 |
eu (האיחוד האירופי) | מילאנו: europe-west8 L,2R פרנקפורט: europe-west3 2R |
ללא | טורינו: europe-west12 |
|
nam3 |
us (ארצות הברית) | צפון וירג'יניה: us-east4 L,2R קרוליינה הדרומית: us-east1 2R |
ללא | איווה: us-central1 |
קריאה בלבד: asia-south1 1-OR asia-southeast1 1-OR asia-southeast2 1-OR europe-west1 1-OR europe-west2 1-OR europe-west4 1-OR europe-west9 1-OR us-east5 1-OR us-west1 1-OR us-west2 1-OR us-west4 1-OR us-west8 1-OR |
nam6 |
us (ארצות הברית) | איווה: us-central1 L,2R דרום קרוליינה: us-east1 2R |
אורגון: us-west1 1R לוס אנג'לס: us-west2 1R |
אוקלהומה: us-central2 |
|
nam7 |
us (ארצות הברית) | איווה: us-central1 L,2R צפון וירג'יניה: us-east4 2R |
ללא | אוקלהומה: us-central2 |
קריאה בלבד: us-east1 2-OR us-south1 1-OR us-west1 1-OR europe-west1 2-OR |
nam8 |
us (ארצות הברית) | לוס אנג'לס: us-west2 L,2R אורגון: us-west1 2R |
ללא | סולט לייק סיטי: us-west3 |
קריאה בלבד: asia-northeast1 2-OR asia-southeast1 2-OR europe-west2 2-OR europe-west3 2-OR us-east5 1-OR |
nam9 |
us (ארצות הברית) | צפון וירג'יניה: us-east4 L,2R איווה: us-central1 2R |
אורגון: us-west1 2R |
קרוליינה הדרומית: us-east1 |
|
nam10 |
us (ארצות הברית) | איווה: us-central1 L,2R סולט לייק סיטי: us-west3 2R |
ללא | אוקלהומה: us-central2 |
קריאה בלבד: us-east4 1-OR |
nam11 |
us (ארצות הברית) | איווה: us-central1 L,2R דרום קרוליינה: us-east1 2R |
ללא | אוקלהומה: us-central2 |
קריאה בלבד: us-west1 1-OR |
nam12 |
us (ארצות הברית) | איווה: us-central1 L,2R צפון וירג'יניה: us-east4 2R |
אורגון: us-west1 2R |
אוקלהומה: us-central2 |
|
nam13 |
us (ארצות הברית) | אוקלהומה: us-central2 L,2R איווה: us-central1 2R |
ללא | סולט לייק סיטי: us-west3 |
|
nam14 |
גלובלי | צפון וירג'יניה: us-east4 L,2R מונטריאול: northamerica-northeast1 2R |
ללא | קרוליינה הדרומית: us-east1 |
|
nam15 |
us (ארצות הברית) | דאלאס: us-south1 L,2R צפון וירג'יניה: us-east4 2R |
ללא | איווה: us-central1 |
קריאה בלבד: us-west3 1-OR |
nam16 |
us (ארצות הברית) | איווה: us-central1 L,2R צפון וירג'יניה: us-east4 2R |
ללא | קולומבוס: us-east5 |
קריאה בלבד: us-west2 2-OR |
nam22 |
us (ארצות הברית) |
קולומבוס: us-east5 (L, 2R) קרוליינה הדרומית: us-east1 (2R) |
ללא | צפון וירג'יניה: us-east4 |
קריאה בלבד: us-west1 1-OR |
nam23 |
us (ארצות הברית) | איווה: us-central1 L,2R לאס וגאס: us-west4 2R |
ללא | דאלאס: us-south1 |
קריאה בלבד: europe-west1 2-OR europe-west3 2-OR asia-northeast2-OR australia-southeast2 |
שלוש יבשות
| שם ההגדרה הבסיסית | מיקום המשאב | אזורים עם הרשאת קריאה וכתיבה | אזורים לקריאה בלבד | אזור העדים | אזור אופציונלי |
|---|---|---|---|---|---|
nam-eur-asia1 |
גלובלי | איווה: us-central1 L,2R אוקלהומה: us-central2 2R |
בלגיה: europe-west1 2R טייוואן: asia-east1 2R |
קרוליינה הדרומית: us-east1 |
קריאה בלבד: us-west2 1-OR |
nam-eur-asia3 |
גלובלי | איווה: us-central1 L,2R דרום קרוליינה: us-east1 2R |
בלגיה: europe-west1 1R הולנד: europe-west4 1R טייוואן: asia-east1 2R |
אוקלהומה: us-central2 |
L: אזור ראשי שמוגדר כברירת מחדל. מידע נוסף מופיע במאמר שינוי האזור הראשי של מסד נתונים.
1R: עותק אחד באזור.
2R: שני עותקים באזור.
2RW+1W: שתי רפליקות לקריאה ולכתיבה ורפליקת עדים אחת באזור.
1-OR: עותק משוכפל אופציונלי אחד. אפשר ליצור הגדרה מותאמת אישית של מופע אזורי ולהוסיף העתק אופציונלי לקריאה בלבד. מידע נוסף זמין במאמר בנושא יצירת הגדרת מופע בהתאמה אישית.
2-OR: עד שני עותקים אופציונליים. אפשר ליצור הגדרה מותאמת אישית של מופע אזורי ולהוסיף העתק אחד או שניים אופציונליים לקריאה בלבד. מומלץ להוסיף שני עותקים (אם אפשר) כדי לשמור על זמן אחזור נמוך של קריאה. מידע נוסף זמין במאמר בנושא יצירת הגדרת מופע בהתאמה אישית.
תשובה: הגדרת המופע הזה מוגבלת באמצעות רשימת היתרים. כדי לקבל גישה, צריך לפנות למנהל החשבון הטכני.
מיקום המשאב להגדרת מופע עם מספר אזורים קובע את האזור שמוגדר להבטחת תוכנית התאוששות מאסון (DR). הוא מגדיר את המקום שבו הנתונים מאוחסנים במנוחה.
יתרונות
למופעים במספר אזורים יש את היתרונות העיקריים הבאים:
זמינות של 99.999%, שהיא גבוהה יותר מהזמינות של 99.99% שמספקות הגדרות אזוריות של Spanner.
הפצת נתונים: Spanner משכפל באופן אוטומטי את הנתונים בין אזורים עם מודל עקביות חזק. כך הנתונים נשמרים במקום שבו הם נמצאים בשימוש, מה שיכול להפחית את זמן האחזור ולשפר את חוויית המשתמש.
עקביות חיצונית: למרות ש-Spanner משכפל נתונים במיקומים מרוחקים גיאוגרפית, אפשר להשתמש ב-Spanner כאילו היה מסד נתונים שפועל במכונה אחת. העסקאות מובטחות להיות ניתנות לסדרות, והסדר של העסקאות במסד הנתונים זהה לסדר שבו הלקוחות רואים שהעסקאות בוצעו. עקביות חיצונית היא הבטחה חזקה יותר מאשר 'מודל עקביות חזק', שמוצע על ידי מוצרים אחרים. מידע נוסף על המאפיין הזה זמין במאמר בנושא TrueTime ועקביות חיצונית.
שכפול
כל תצורת בסיס של מספר אזורים מכילה שני אזורים שמוגדרים כאזורים עם הרשאות קריאה וכתיבה, וכל אחד מהם מכיל שני עותקים משוכפלים עם הרשאות קריאה וכתיבה. אחד מהאזורים האלה עם הרשאות קריאה וכתיבה מוגדר כאזור ברירת המחדל של הלידר, כלומר הוא מכיל את העותקים המשוכפלים של הלידר במסד הנתונים. בנוסף, Spanner ממקם רפליקה של עֵד באזור שלישי שנקרא אזור עֵד.
בכל פעם שלקוח מבצע שינוי במסד הנתונים, נוצרת קבוצת קוורום לכתיבה, שמורכבת מאחת מהרפליקות מאזור הלידר שמוגדר כברירת מחדל ומכל שתיים מתוך ארבע הרפליקות הנוספות להצבעה. (הקוורום יכול להיווצר מרפליקות משניים או משלושה מהאזורים שמרכיבים את ההגדרה, בהתאם לרפליקות הנוספות שמשתתפות בהצבעה). בנוסף לחמש הרפליקות האלה להצבעה, חלק מההגדרות הבסיסיות של כמה אזורים מכילות רפליקות לקריאה בלבד, שנועדו לשרת קריאות עם זמן אחזור נמוך. האזורים שמכילים רפליקות לקריאה בלבד נקראים אזורים לקריאה בלבד.
באופן כללי, האזורים שבהם מתבצעת ההצבעה בהגדרה של כמה אזורים ממוקמים קרוב זה לזה מבחינה גיאוגרפית – במרחק של פחות מ-1,600 ק"מ זה מזה – כדי ליצור קוורום עם זמן אחזור נמוך שמאפשר כתיבה מהירה (מידע נוסף). עם זאת, המרחק בין האזורים עדיין גדול מספיק – בדרך כלל, לפחות כמה מאות קילומטרים – כדי למנוע כשלים מתואמים. בנוסף, אם אפליקציית הלקוח נמצאת באזור שאינו אזור ראשי, Spanner משתמש בניתוב שמודע לאזור הראשי כדי לנתב באופן דינמי עסקאות של קריאה וכתיבה, וכך להקטין את זמן האחזור במסד הנתונים. מידע נוסף מופיע במאמר בנושא ניתוב שמודע למובילים.
אתם יכולים ליצור הגדרת מכונה מותאמת אישית עם כמה אזורים עם רפליקות לקריאה בלבד (אופציונלי). אי אפשר לכלול במכסת הכתיבה עותקים משוכפלים מותאמים אישית לקריאה בלבד שאתם יוצרים. אפשר להוסיף מיקומים שמופיעים בעמודה Optional Region(אזור אופציונלי) כרפליקות אופציונליות לקריאה בלבד. אם לא מופיע המיקום שבחרתם לשכפול לקריאה בלבד, אתם יכולים לבקש אזור חדש אופציונלי לשכפול לקריאה בלבד. מידע נוסף מופיע במאמר Read-only replicas (רפליקות לקריאה בלבד).
שיטות מומלצות לשיפור הביצועים בהגדרות של כמה אזורים
כדי להשיג ביצועים אופטימליים, כדאי לפעול לפי השיטות המומלצות הבאות:
- תכנון סכימה שמונעת נקודות חמות ובעיות אחרות בביצועים.
- כדי לקבל זמן אחזור אופטימלי לכתיבה, כדאי למקם משאבי מחשוב לעומסי עבודה עם כתיבה רבה באזור ברירת המחדל של הלידר או קרוב אליו.
- כדי לקבל ביצועי קריאה אופטימליים מחוץ לאזור הראשי שמוגדר כברירת מחדל, צריך להשתמש בערך של לפחות 15 שניות לפרק הזמן שעבר מאז העדכון האחרון.
- כדי להימנע מתלות באזור יחיד עבור עומסי העבודה, כדאי למקם משאבי מחשוב קריטיים לפחות בשני אזורים. אפשרות טובה היא למקם אותם לצד שני אזורים שונים של קריאה וכתיבה, כך שכל הפסקת חשמל באזור מסוים לא תשפיע על כל האפליקציה.
- הקצאת קיבולת מחשוב מספקת כדי לשמור על ניצול כולל של המעבד בעדיפות גבוהה מתחת ל-45% בכל אזור.
- מידע על נפח התפוקה לכל צומת של Spanner זמין במאמר ביצועים של הגדרות מרובות אזורים.
העברת מכונה
אפשר להעביר את מופע Spanner מכל תצורת מופע לכל תצורת מופע אחרת, כולל בין תצורות אזוריות לתצורות מרובות אזורים. העברת המכונה לא גורמת להשבתה, ומערכת Spanner ממשיכה לספק את הערבויות הרגילות לעסקאות, כולל עקביות חזקה, במהלך ההעברה.
מידע נוסף על העברת מכונת Spanner זמין במאמר העברת מכונה.
הגדרת אזור ברירת המחדל של השרת הראשי
כדי לשנות את המיקום של אזור ראשי ברירת המחדל של מסד הנתונים כך שיהיה קרוב יותר ללקוחות המתחברים, כדי לצמצם את זמן האחזור של האפליקציה, אפשר לשנות את האזור הראשי בכל מופע Spanner שמשתמש בהגדרה של שני אזורים או של מספר אזורים. הוראות לשינוי המיקום של אזור הלידר מפורטות במאמר שינוי אזור הלידר של מסד נתונים. האזורים היחידים שעומדים בדרישות להפוך לאזור הראשי שמוגדר כברירת מחדל למסד הנתונים הם אזורים עם הרשאות קריאה וכתיבה בהגדרה של שני אזורים או הגדרה של מספר אזורים.
האזור הראשי אחראי לכל פעולות הכתיבה במסד הנתונים, ולכן אם רוב התנועה מגיעה מאזור גיאוגרפי אחד, אפשר להעביר אותו לאזור הזה כדי לצמצם את זמן האחזור. העדכון של האזור הראשי שמוגדר כברירת מחדל הוא זול ולא כולל העברת נתונים. הערך החדש נכנס לתוקף תוך כמה דקות.
שינוי אזור המנהיג שמוגדר כברירת מחדל הוא שינוי סכימה, שמתבצע באמצעות פעולה ממושכת. במקרה הצורך, אפשר לקבל את הסטטוס של הפעולה הממושכת.
ההבדלים בין הגדרות אזוריות, הגדרות בשני אזורים והגדרות במספר אזורים
| הגדרות אישיות | זמינות | זמן אחזור | עלות | מיקום הנתונים |
|---|---|---|---|---|
| אזורי | 99.99% | זמני השהיה של פעולות הכתיבה באזור קצרים יותר. | עלות נמוכה יותר. מידע על תמחור | הפעלת משילות מידע גיאוגרפי. |
| שני אזורים | 99.999% | זמני אחזור קצרים יותר לקריאה משני אזורים גיאוגרפיים, ועלייה קלה בזמן האחזור לכתיבה. | עלות גבוהה יותר. מידע על תמחור | מפיץ נתונים בשני אזורים במדינה אחת. |
| במספר אזורים | 99.999% | זמני טעינה קצרים יותר לקריאה ממספר אזורים גיאוגרפיים, ועלייה קלה בזמן הטעינה לכתיבה. | עלות גבוהה יותר. מידע על תמחור | מפיץ את הנתונים בין כמה אזורים בהגדרה. |