בדף הזה מתוארים הסוגים השונים של הגדרות מופעים שזמינים ב-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 שומר שלוש רפליקות לקריאה ולכתיבה, כל אחת ב Google Cloud תחום אחר באותו אזור. כל עותק רפליקה לקריאה ולכתיבה מכיל עותק מלא של מסד הנתונים התפעולי שלכם, ויכול לשרת בקשות לקריאה ולכתיבה ובקשות לקריאה בלבד. מערכת Spanner משתמשת בעותקים משוכפלים באזורים שונים, כך שאם מתרחש כשל באזור אחד, מסד הנתונים שלכם נשאר זמין.
הגדרות זמינות
Spanner מציע את ההגדרות הבסיסיות הבאות של מופעים אזוריים. כדי לבקש אזור אופציונלי של העתק לקריאה בלבד שלא מופיע בטבלה הבאה, ממלאים את טופס הבקשה הזה. חשוב לזכור שאנחנו משתמשים בבקשות האלה כדי לאמוד את הביקוש באזורים עתידיים, ויכול להיות שלא נגיב ישירות לבקשה שלכם.
| שם הגדרת הבסיס | תיאור האזור | אזור אופציונלי |
|---|---|---|
| אמריקה | ||
regional-northamerica-northeast1 |
מונטריאול
|
|
regional-northamerica-northeast2 |
טורונטו
|
|
regional-northamerica-south1 |
קוורטארו | |
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 |
קולומבוס | קריאה בלבד: us-central1 1-OR |
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 |
גרמניה (de) | ברלין: 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 תומך גם במעבר אוטומטי לגיבוי בניהול Google, שיכול להימשך עד 45 דקות מהרגע שבו הכשל זוהה לראשונה. ה-RTO הארוך יותר נובע מהמעקב של Google בכל השירותים. אנחנו צריכים לאסוף אותות נוספים כדי לוודא שיש שיבוש בכל האזור, ולאמת שיש השפעה ברמת האזור. בנוסף, זה מבטיח שמעבר לגיבוי יביא לשיפור השירות הכולל למשתמשים בהגדרה.
כדי לבצע יתירות כשל וחזרה לגיבוי אוטומטי באופן ידני, אפשר לעיין במאמר בנושא שינוי קוורום של אזורים כפולים.
כשמקבלים החלטות לגבי מעבר ידני לגיבוי וחזרה מגיבוי, כדאי להביא בחשבון את הנקודות הבאות:
אם כל שלושת הקוורומים תקינים, לא צריך לבצע שום פעולה.
אם באחד מהאזורים מופיעה הפרעה, כנראה שיש הפרעה אזורית בשירות. יכול להיות שהדבר יגרום לירידה בזמינות של מסדי הנתונים שפועלים בקוורום שלכם באזור הכפול. יכול להיות שפעולות כתיבה ייכשלו גם בגלל שלא ניתן להקים קוורום, והעסקאות יסתיימו בסופו של דבר בטיימאאוט. בעזרת מרכז הבקרה 'תובנות לגבי המערכת', אפשר לעקוב אחרי שיעורי השגיאות והחביון במסד הנתונים. אם יש עלייה בשיעורי השגיאות או בזמן טעינה, מומלץ לבצע יתירות כשל, כלומר לשנות את הקוורום של שני האזורים משני אזורים לאזור שעדיין תקין. אחרי שהאזור שהייתה בו הפרעה חוזר לפעילות תקינה, צריך לבצע מעבר חזרה, ולשנות את הקוורום של שני האזורים מאזור יחיד לשני אזורים. Google מבצעת באופן אוטומטי מעבר לגיבוי (failover) וחזרה מגיבוי (failback) כשהיא מזהה הפסקת חשמל אזורית. אפשר גם לבצע מעבר לגיבוי ידני אם מזהים שיבוש. עם זאת, אם ביצעתם מעבר לגיבוי ידני, תצטרכו לזכור לבצע מעבר חזרה ידני.
אם הקוורום של שני האזורים מראה שיבוש למרות ששני האזורים הבודדים תקינים, סימן שיש בעיה בחלוקת הרשת. שני האזורים לא יכולים יותר לתקשר ביניהם, ולכן כל אחד מהם מציג תקינות למרות שהמערכת הכוללת לא תקינה. בתרחיש הזה, מומלץ לבצע מעבר לגיבוי ולשיקום (failover) לאזור ברירת המחדל של הלידר. אחרי שפותרים את הבעיה של חלוקת הרשת ומושגת שוב קוורום בריא באזור הכפול, צריך לבצע פיילבק באופן ידני.
שני אזורים מספקים יעד להתאוששות מאסון (RPO) של אפס, כי אין אובדן נתונים במהלך הפסקת חשמל אזורית או כשמתעוררת בעיה של חלוקת רשת.
כדי לבדוק את המצב (יחיד או כפול) של קוורום דו-אזורי, אפשר לעיין במאמר בנושא בדיקת קוורום דו-אזורי.
שיטות מומלצות למעבר לגיבוי ולחזרה מגיבוי
שיטות מומלצות למעבר לגיבוי ולחזרה מגיבוי:
- אל תבצעו מעבר לגיבוי חלופי לאזור יחיד אם לא מתרחשות תקלות או שיבושים באזור. מעבר לגיבוי באזור יחיד מגדיל את הסיכוי שהמערכת כולה לא תהיה זמינה אם האזור היחיד הזה ייכשל.
- חשוב להפעיל שיקול דעת כשבוחרים את האזור שבו תתבצע העברה אוטומטית לשירות גיבוי. בחירה באזור שגוי למעבר לשירות גיבוי תוביל לחוסר זמינות של מסד הנתונים, ולא ניתן יהיה לשחזר אותו עד שהאזור יחזור להיות אונליין. כדי לוודא זאת, אפשר להשתמש בסקריפט 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-east1 1-OR 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 |
קריאה בלבד: asia-northeast1 1-OR australia-southeast2 1-OR europe-west1 1-OR europe-west3 1-OR |
שלוש יבשות
| שם הגדרת הבסיס | מיקום המשאב | אזורים עם הרשאות קריאה וכתיבה | אזורים עם הרשאת קריאה בלבד | אזור העדים | אזור אופציונלי |
|---|---|---|---|---|---|
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% | זמני טעינה קצרים יותר לקריאה ממספר אזורים גיאוגרפיים, ועלייה קלה בזמן הטעינה לכתיבה. | עלות גבוהה יותר. אפשר לעיין בתמחור. | מפיץ את הנתונים בכמה אזורים בהגדרה. |