1. סקירה כללית
העדכון האחרון: 23 ביולי 2020
מה זה Cloud Spanner?
Google Cloud Spanner הוא מסד נתונים מבוזר ברחבי העולם, שתואם ל-ACID ומטפל אוטומטית בשכפולים, בחלוקה ובטיפול בעסקאות. כך תוכלו להרחיב במהירות את הקיבולת כדי לעמוד בכל דפוס שימוש ולהבטיח את הצלחת המוצרים שלכם.
תכונות עיקריות
- מסד נתונים רלציוני, שנועד להתרחבות: כל מה שמצפים ממסד נתונים רלציוני – סכימות, שאילתות SQL ועסקאות ACID – נבדק היטב ומוכן להתרחבות גלובלית.
- זמינות של 99.999%: Cloud Spanner מספק זמינות מובילה בתעשייה של 99.999% עבור מופעים רב-אזוריים – זמן השבתה נמוך פי 10 מזה של ארבע תשיעיות – ומספק שכפול שקוף וסינכרוני בהגדרות אזוריות ורב-אזוריות.
- חלוקה אוטומטית למקטעים (sharding): Cloud Spanner מבצע אופטימיזציה של הביצועים על ידי חלוקה אוטומטית של הנתונים למקטעים על סמך עומס הבקשות וגודל הנתונים. כך תוכלו להקדיש פחות זמן לדאגה לגבי הרחבת מסד הנתונים, ובמקום זאת להתמקד בהרחבת העסק.
מה תלמדו
- יצירת מופעי Cloud Spanner באמצעות מסוף Google Cloud.
- יצירת מסד נתונים חדש במכונת Cloud Spanner.
- שימוש ב- sampledb כדי לטעון נתונים לדוגמה ולהריץ עליהם שאילתות.
- מחיקת המכונה של Cloud Spanner.
2. הגדרה ודרישות
הגדרת סביבה בקצב אישי
אם עדיין אין לכם חשבון Google (Gmail או Google Apps), אתם צריכים ליצור חשבון. נכנסים ל-Google Cloud Platform Console ( console.cloud.google.com) ויוצרים פרויקט חדש:


חשוב לזכור את מזהה הפרויקט, שהוא שם ייחודי בכל הפרויקטים ב-Google Cloud (השם שלמעלה כבר תפוס ולא יתאים לכם, מצטערים!). בהמשך ה-codelab הזה נתייחס אליו בתור PROJECT_ID.
בשלב הבא, תצטרכו להפעיל את החיוב ב-Cloud Console כדי להשתמש במשאבים של Google Cloud.
העלות של ה-Codelab הזה לא אמורה להיות גבוהה מכמה דולרים, אבל היא יכולה להיות גבוהה יותר אם תחליטו להשתמש ביותר משאבים או אם תשאירו אותם פועלים (ראו את הקטע 'ניקוי נתונים' בסוף המסמך הזה).
משתמשים חדשים ב-Google Cloud זכאים לתקופת ניסיון בחינם בשווי 300$.
3. פתיחת Spanner ב-Cloud Console
במסוף Google Cloud, לוחצים על סמל התפריט בפינה השמאלית העליונה של המסך כדי לפתוח את חלונית הניווט הימנית.
גוללים למטה ובוחרים באפשרות 'מפתח ברגים':

עכשיו אמור להופיע ממשק המשתמש של Cloud Spanner. אם אתם משתמשים בפרויקט שעדיין לא הופעל בו Cloud Spanner API, יופיע דו-שיח עם בקשה להפעיל אותו. אם כבר הפעלתם את ה-API, אתם יכולים לדלג על השלב הזה.
כדי להמשיך, לוחצים על 'הפעלה':

4. יצירת מכונה
קודם יוצרים מכונת Cloud Spanner. בממשק המשתמש, לוחצים על 'יצירת מכונה' כדי ליצור מכונה חדשה:

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

אחרי שתבחרו הגדרה, הסיכום יוצג בחלונית השמאלית:

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

המופע של Cloud Spanner מוכן לשימוש.

5. יצירת מסד נתונים
כדי ליצור מסד נתונים חדש, לוחצים על 'יצירת מסד נתונים':

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

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

אחרי שלוחצים על 'יצירה', נוצר מסד נתונים חדש:

6. טעינה של נתונים לדוגמה והרצת שאילתות
בשיעור ה-Codelab הזה נטען נתוני דוגמה ונריץ עליהם שאילתות באמצעות sampledb. ב-Sampledb יש מערכי נתונים שונים, ואפשר לייבא נתונים למסדי הנתונים הקיימים.
נריץ את התוכנית ב-Google Cloud Shell. אם זו הפעם הראשונה שאתם משתמשים ב-Google Cloud Shell בפרויקט הזה, לוגו Google Cloud Shell יופיע בסרגל הניווט העליון. לוחצים על הסמל כדי להפעיל את Cloud Shell.

אחרי ההפעלה, תראו מסוף בתחתית:

במסוף, משכפלים את מאגר sampledb ופועלים לפי ההוראות כדי להתקין את יחסי התלות:
$ git clone https://github.com/cloudspannerecosystem/sampledb.git
אחרי שיבוט המאגר בהצלחה, עוברים לספרייה החדשה, יוצרים סביבה וירטואלית ומתקינים את הדרישות הנדרשות:
$ cd sampledb $ virtualenv env $ source env/bin/activate $ pip install -r requirements.txt
אחרי שמתקינים את התלויות, אפשר להריץ את sampledb כדי ליצור מסד נתונים חדש עם נתונים לדוגמה:
$ python batch_import.py my-first-instance my-sample-db
אם הפעולה תצליח, תוכלו לראות את מסד הנתונים my-sample-db עם שתי טבלאות חדשות (comments ו-stories):

קבוצת הנתונים לדוגמה מכילה סיפורים ותגובות מ-Hacker News. כדי להתחיל להריץ שאילתות ולעיין בנתונים, אפשר ללחוץ על 'שאילתה':

7. הסרת המשאבים
השלב הזה הוא אופציונלי. אם רוצים להמשיך להתנסות במופע Cloud Spanner, אין צורך לנקות אותו בשלב הזה. עם זאת, הפרויקט שבו אתם משתמשים ימשיך להיות מחויב על המופע. אם אין לכם יותר צורך במכונה הזו, כדאי למחוק אותה עכשיו כדי להימנע מהחיובים האלה.
כדי לחזור לדף של המופע, לוחצים על my-first-instance בפינה הימנית העליונה:

לוחצים על הלחצן Delete (מחיקה) כדי למחוק את המופע:

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

מזינים את שם המופע ולוחצים על 'מחיקה'.
8. מעולה!
יצרתם מכונה חדשה של Cloud Spanner, יצרתם מסד נתונים ריק, טענתם נתונים לדוגמה ו (אופציונלית) מחקתם את המכונה של Cloud Spanner.
מה נכלל
- יצירת מופעים של Cloud Spanner דרך מסוף Google Cloud.
- יצירת מסד נתונים חדש במכונת Cloud Spanner.
- שימוש ב- sampledb כדי לטעון נתונים לדוגמה ולהריץ עליהם שאילתות.
- מחיקת המכונה של Cloud Spanner.