Firestore הוא מסד נתונים מסוג NoSQL לאחסון מסמכים שמיועד להתאמה לעומס (automatic scaling), לביצועים גבוהים ולפיתוח אפליקציות בקלות. Firestore הוא מסד הנתונים המומלץ לכל האפליקציות החדשות, והוא מחליף את Datastore. ל-Firestore יש כמה ממשקים, כולל API שתואם ל-Datastore, כדי לתמוך בקוד מדור קודם שנבנה על Datastore.
במאמר הזה מוסבר איך להשתמש בספריות לקוח בענן כדי לאחסן ולאחזר נתונים במסד נתונים במצב Datastore.
אפשר להשתמש באפליקציה לדוגמה שבמדריך הזה לכל גרסה נתמכת של Python. לשם כך, צריך לציין את גרסת זמן הריצה ואת מערכת ההפעלה בקובץ app.yaml.
דרישות מוקדמות והגדרה
- מגדירים את הסביבה והפרויקט כדי להבין איך האפליקציות בנויות ב-App Engine. חשוב לרשום ולשמור את מזהה הפרויקט, כי תצטרכו אותו כדי להריץ את אפליקציית הדוגמה שמתוארת במסמך הזה.
שכפול המאגר
מורידים (משכפלים) את הדוגמה:
git clone https://github.com/GoogleCloudPlatform/python-docs-samples
cd python-docs-samples/appengine/flexible/datastore
עריכת הגדרת הפרויקט והגדרת יחסי תלות
כוללים את ספריית google-cloud-datastore בקובץ requirements.txt. זו ספריית הלקוח למצב Datastore.
קוד אפליקציה
האפליקציה לדוגמה מתעדת את כתובות ה-IP של המבקרים, מאחזרת אותן ומציגה אותן. אפשר לראות שרשומה ביומן היא מחלקה עם שני שדות שמוקצית לה הסוג visit, והיא נשמרת במצב Datastore באמצעות הפקודה put. לאחר מכן, עשר הכניסות האחרונות מאוחזרות בסדר יורד באמצעות הפקודה query().
שימוש בקבצים ב-index.yaml
אפליקציית הדוגמה מבצעת שאילתות. שאילתות מורכבות יותר במצב Datastore דורשות אינדקס אחד או יותר, שצריך לציין בקובץ index.yaml שמעלים יחד עם האפליקציה. אפשר ליצור את הקובץ הזה באופן ידני או ליצור אותו באופן אוטומטי במהלך בדיקת האפליקציה באופן מקומי.
בדיקה מקומית
אם אתם צריכים לפתח ולבדוק את האפליקציה באופן מקומי, אתם יכולים להשתמש באמולטור של מצב Datastore.
למידע נוסף
מידע מלא על מצב Datastore, כולל אופטימיזציות ומושגים, זמין במאמרי העזרה בנושא Firestore במצב Datastore.