שימוש ב-Cloud Firestore במצב Datastore

‫Firestore הוא מסד נתונים מסוג NoSQL לאחסון מסמכים שמיועד להתאמה לעומס (automatic scaling), לביצועים גבוהים ולפיתוח אפליקציות בקלות. זו הגרסה החדשה ביותר של Datastore, והיא כוללת כמה שיפורים בהשוואה ל-Datastore.

מכיוון ש-Firestore במצב Datastore (Datastore) מותאם לתרחישי שימוש בשרתים ול-App Engine, מומלץ להשתמש במצב Datastore למסדי נתונים שישמשו בעיקר אפליקציות של App Engine. ‫Firestore במצב Native הכי שימושי בתרחישים לדוגמה של ניידים והתראות בזמן אמת. מידע נוסף על מצבי Firestore זמין במאמר בחירה בין מצב מקורי למצב Datastore.

שימוש במצב Datastore עם App Engine

כדי להשתמש במצב Datastore עם App Engine:

  1. אם עדיין לא עשיתם זאת, צרו מסד נתונים ובחרו ב-Firestore במצב Datastore.

    אפשר להשתמש במסדי נתונים קיימים של Datastore עם אפליקציות App Engine. מסדי הנתונים הקיימים האלה ישודרגו אוטומטית ל-Firestore במצב Datastore.

    1. באפליקציה, צריך להצהיר על Datastore כתלות על ידי הוספת הספרייה לקובץ התלויות של האפליקציה.

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

    הגדרת אינדקסים

    במצב Datastore נעשה שימוש באינדקסים לכל שאילתה שהאפליקציה שולחת. האינדקסים מתעדכנים בכל פעם שישות משתנה, כך שהתוצאות יכולות לחזור במהירות כשהאפליקציה מבצעת שאילתה.

    במצב Datastore, המערכת יוצרת באופן אוטומטי אינדקסים של מאפיין יחיד לשימוש עם סוגים פשוטים של שאילתות. לשאילתות מורכבות שכוללות מספר נכסים, צריך להגדיר אינדקסים מורכבים בקובץ index.yaml של האפליקציה.

    שרת הפיתוח של App Engine יעודכן בקובץ index.yaml עם האינדקסים המורכבים שנדרשים להרצת הבדיקות. באופן דומה, האמולטור של Datastore במצב Datastore יכול ליצור אינדקסים כשמריצים בדיקות.

    אפשר גם להוסיף את האינדקסים לקובץ index.yaml של האפליקציה באופן ידני אם לא מריצים בדיקות מקומיות או אם הבדיקות לא כוללות שאילתות מורכבות.

    הגדרת הרשאות למסד נתונים

    כברירת מחדל, לאפליקציה יש את כל ההרשאות שנדרשות לקריאה ולכתיבה במסד נתונים במצב Datastore ובמסדי נתונים של Firestore בפרויקטGoogle Cloud .

    כדי לנהל את ההרשאות האלה, כל אפליקציית App Engine משתמשת בחשבון שירות שמוגדר כברירת מחדל, שמעניק גישת קריאה וכתיבה מלאה למסדי נתונים במצב Datastore ולמסדי נתונים של Firestore באותו פרויקט שבו נמצאת האפליקציה. אפשר לשנות את ההרשאות של חשבון השירות שמוגדר כברירת מחדל, אבל יכול להיות שהאפליקציה תאבד את הגישה אלא אם תקצו תפקיד IAM עם ההרשאות הנדרשות.

    במאמר גישה למסד הנתונים מוסבר איך מאפשרים למשתמשים, לאפליקציות או לפרויקטים אחרים לגשת למסד נתונים.

    שימוש באמולטור במצב Datastore לבדיקות מקומיות

    ‫Google Cloud CLI ל-Java כולל שרת פיתוח מקומי לבדיקת האפליקציה במחשב. שרת הפיתוח המקומי מדמה את סביבת זמן הריצה של Java ב-App Engine ואת כל השירותים שלה, כולל מצב Datastore.

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

    תמחור, מכסות ומגבלות

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