אחרי האופטימיזציה של הסכימה ב-Spanner והעברת האפליקציה, אתם יכולים להעביר את הנתונים למסד נתונים ריק ב-Spanner בגודל של סביבת ייצור, ואז להעביר את האפליקציה לשימוש במסד הנתונים ב-Spanner.
בהתאם לתרחיש לדוגמה, יכול להיות שתוכלו לבצע העברת נתונים בזמן אמת עם זמן השבתה מינימלי, או שתצטרכו זמן השבתה ממושך כדי לבצע את העברת הנתונים.
אם האפליקציה שלכם לא יכולה להיות מושבתת לזמן רב, כדאי לבצע העברת נתונים בזמן אמת. אם האפליקציה שלכם יכולה להתמודד עם זמן השבתה, אתם יכולים לשקול לבצע העברה עם זמן השבתה.
בהעברת נתונים בזמן אמת, צריך להגדיר את תשתית הרשת שנדרשת כדי שהנתונים יועברו בין מסד הנתונים של המקור, מסד הנתונים של היעד ב-Spanner והכלים שבהם אתם משתמשים כדי לבצע את העברת הנתונים. אתם צריכים להחליט אם להשתמש בקישוריות לרשת פרטית או לרשת ציבורית, בהתאם לדרישות התאימות של הארגון. יכול להיות שתצטרכו לבקש ממנהל הרשת של הארגון להגדיר את התשתית.
העברת נתונים בזמן אמת
העברת נתונים בזמן אמת מורכבת משני רכיבים:
- העברת הנתונים בתמונת מצב עקבית של מסד הנתונים של המקור.
- העברת זרם השינויים (הוספות, עדכונים ומחיקות) מאז תמונת המצב, שנקראת "סימון נתונים שהשתנו" (CDC).
העברת נתונים בזמן אמת עוזרת להגן על הנתונים, אבל התהליך כרוך באתגרים, כולל:
- אחסון נתוני CDC בזמן העברת קובץ ה-snapshot.
- כתיבת נתוני ה-CDC ב-Spanner תוך כדי תיעוד הזרם הנכנס של ה-CDC.
- לוודא שהעברת נתוני ה-CDC ל-Spanner מהירה יותר מזרם ה-CDC הנכנס.
העברה עם השבתה
אם אפשר לייצא את מסד הנתונים של המקור ל-CSV או ל-Avro, אפשר להעביר אותו ל-Spanner עם השבתה. מידע נוסף זמין במאמר סקירה כללית על ייבוא וייצוא של Spanner.
אפשר להשתמש בהעברות עם זמן השבתה בסביבות בדיקה או באפליקציות שיכולות להתמודד עם כמה שעות של זמן השבתה. במסד נתונים פעיל, העברה עם זמן השבתה עלולה לגרום לאובדן נתונים.
כדי לבצע העברה בזמן השבתה, כדאי לשקול את הגישה הכללית הבאה:
- מפסיקים את האפליקציה ויוצרים קובץ dump של הנתונים ממסד הנתונים של המקור.
- מעלים את קובץ ה-dump ל-Cloud Storage בפורמט dump של MySQL, PostgreSQL, Avro או CSV.
- טוענים את קובץ ה-dump ל-Spanner באמצעות Dataflow או הכלי להעברה של Spanner.
יצירת כמה קובצי dump קטנים מאפשרת כתיבה מהירה יותר ב-Spanner, כי Spanner יכול לקרוא כמה קובצי dump במקביל.
כשיוצרים קובץ dump ממסד הנתונים של המקור, חשוב לזכור את הדברים הבאים כדי ליצור תמונת מצב עקבית של הנתונים:
- לפני שמבצעים את ה-dump, צריך להחיל נעילת קריאה על מסד הנתונים של המקור כדי למנוע שינוי של הנתונים במהלך יצירת קובץ ה-dump.
- לחלופין, אפשר ליצור את קובץ ה-dump באמצעות עותק לקריאה בלבד ממסד הנתונים של המקור, כשהשכפול מושבת.
מדריכים ספציפיים למקורות
- MySQL: העברת נתונים מ-MySQL