מידע על Codelab זה
1. סקירה כללית
תאריך עדכון אחרון: 23 ביולי 2020
מהו Cloud Spanner?
Google Cloud Spanner היא מסד נתונים שמופץ ברחבי העולם ותומך ב-ACID. הוא מטפל באופן אוטומטי בעותק מראה, בחלוקה לפלחים ובעיבוד טרנזקציות, כך שתוכלו להתאים את הקיבולת במהירות לכל דפוס שימוש ולהבטיח את ההצלחה של המוצרים שלכם.
תכונות עיקריות
- מסד נתונים יחסיים, שנועד להתאמה לעומס: כל מה שציפיתם לקבל ממסד נתונים יחסיים – סכימות, שאילתות SQL ועסקאות ACID – נבדק בתנאי לחימה ומוכן להתאמה לעומס גלובלי.
- זמינות של 99.999%: Cloud Spanner מספק זמינות של 99.999% – נתון מוביל בתחום – למכונות במספר אזורים. זמן ההשבתה של Cloud Spanner נמוך פי 10 מזמן ההשבתה של מסדי נתונים עם זמינות של 99.99%, והוא מספק רפליקציה שקוופה וסינכרנית בהגדרות אזוריות ובהגדרות של כמה אזורים.
- חלוקה אוטומטית לפלחים: Cloud Spanner מבצע אופטימיזציה של הביצועים על ידי חלוקה אוטומטית של הנתונים לפלחים על סמך עומס הבקשות וגודלם של הנתונים. כך תוכלו להשקיע פחות זמן בחשיבה על התאמת מסד הנתונים לעומס, ולהתמקד במקום זאת בהתאמת העסק לעומס.
מה תלמדו
- יצירת מכונות של Cloud Spanner באמצעות מסוף Google Cloud.
- יצירת מסד נתונים חדש במכונה של Cloud Spanner.
- שימוש ב-sampledb כדי לטעון נתונים לדוגמה ולבצע שאילתות עליהם.
- מחיקת המכונה של Cloud Spanner.
2. הגדרה ודרישות
הגדרת סביבה בקצב אישי
אם עדיין אין לכם חשבון Google (Gmail או Google Apps), עליכם ליצור חשבון. נכנסים למסוף Google Cloud Platform ( console.cloud.google.com) ויוצרים פרויקט חדש:
חשוב לזכור את מזהה הפרויקט, שהוא שם ייחודי לכל הפרויקטים ב-Google Cloud (השם שלמעלה כבר נלקח ולא יתאים לכם, סליחה!). בהמשך נתייחס אליו כ-PROJECT_ID.
בשלב הבא, כדי להשתמש במשאבים של Google Cloud, תצטרכו להפעיל את החיוב במסוף Cloud.
השלמת הקודלאב הזה לא אמורה לעלות יותר מכמה דולרים, אבל העלות עשויה להיות גבוהה יותר אם תחליטו להשתמש במשאבים נוספים או אם תמשיכו להפעיל אותם (ראו את הקטע 'ניקוי' בסוף המסמך הזה).
משתמשים חדשים ב-Google Cloud זכאים לתקופת ניסיון בחינם בשווי 300$.
3. פתיחת Spanner במסוף Cloud
במסוף Google Cloud, לוחצים על סמל התפריט בפינה הימנית העליונה של המסך כדי לעבור לחלונית הניווט הימנית.
גוללים למטה ובוחרים באפשרות Spanner:
עכשיו אמור להופיע ממשק המשתמש של Cloud Spanner. אם אתם משתמשים בפרויקט שבו Cloud Spanner API עדיין לא הופעל, תוצג לכם תיבת דו-שיח עם בקשה להפעיל אותו. אם כבר הפעלתם את ה-API, אתם יכולים לדלג על השלב הזה.
לוחצים על 'הפעלה' כדי להמשיך:
4. יצירת מכונה
קודם כול, יוצרים מכונה של Cloud Spanner. בממשק המשתמש, לוחצים על 'Create Instance' (יצירת מכונה) כדי ליצור מכונה חדשה:
לאחר הלחיצה על 'Create Instance', תועברו לדף שבו תוכלו ליצור מכונה. נותנים שם למכונה ובוחרים תצורה.
אפשר לבחור הגדרה אזורית או הגדרה בכמה אזורים. בהגדרות אזוריות, כל הרפליקות יהיו באותו אזור. בהגדרות בכמה אזורים, ייוצרו רפליקות לקריאה בכמה אזורים. אפשר ללחוץ על 'השוואת הגדרות האזורים' כדי להשוות את ההגדרות.
אחרי שתבחרו הגדרה, הסיכום יוצג בחלונית השמאלית:
בעתיד תוכלו להגדיל את מספר הצמתים כדי להקצות יותר משאבים למכונה, או להקטין אותו אם המכונה לא זקוקה למשאבים נוספים.
לוחצים על 'Create' (יצירה) כדי ליצור את המכונה.
מכונה של Cloud Spanner מוכנה עכשיו לשימוש.
5. יצירת מסד נתונים
כדי ליצור מסד נתונים חדש, לוחצים על 'יצירת מסד נתונים':
מזינים שם למסד הנתונים החדש. בשלב הזה אפשר גם לספק סכימה.
בשלב הזה נדלג על הוספת סכימה ולוחצים על 'יצירה' כדי ליצור מסד נתונים ריק.
אחרי הלחיצה על 'Create' (יצירה), תוצג מסך שבו תתבקשו להזין את הפרטים הבאים:
6. טעינת נתונים לדוגמה והרצת שאילתות עליהם
בקודלאב הזה נטען נתונים לדוגמה ונבצע שאילתות עליהם באמצעות 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 כדי למחוק את המכונה:
מחיקת מכונה היא פעולה בלתי הפיכה. לא ניתן לשחזר את הנתונים מהמכונה הזו. כדי למנוע מחיקה בטעות של המכונה הלא נכונה, צריך לאשר את המחיקה על ידי הזנת שם המכונה בתיבת דו-שיח לאישור:
מזינים את שם המכונה ומקישים על 'Delete'.
8. מעולה!
יצרתם מכונה חדשה של Cloud Spanner, יצרתם מסד נתונים ריק, טעינת נתונים לדוגמה ומחקתם את המכונה של Cloud Spanner (אופציונלי).
מה עסקנו בו
- יצירת מכונות של Cloud Spanner דרך מסוף Google Cloud.
- יצירת מסד נתונים חדש במכונה של Cloud Spanner.
- שימוש ב-sampledb כדי לטעון נתונים לדוגמה ולבצע שאילתות עליהם.
- מחיקת המכונה של Cloud Spanner.