חישוב של גודל האחסון

בדף הזה מתוארים נפחי האחסון של מסמכים, שמות מסמכים, שדות ורשומות של אינדקס ב-Cloud Firestore.

במחירון של Cloud Firestore מפורט מידע על העלויות של נפח האחסון הזה.

גודל המחרוזת

גודל המחרוזות מחושב לפי מספר הבייטים המקודדים ב-UTF-8 + 1.

הנתונים הבאים נשמרים כמחרוזות:

  • מזהי קולקציות
  • מזהי מסמכים של מחרוזות
  • שמות מסמכים
  • שמות שדות
  • ערכים של שדות מחרוזת

לדוגמה:

  • מזהה האוסף tasks משתמש ב-5 בייטים + 1 בייט, סה"כ 6 בייטים.
  • שם השדה description משתמש ב-11 בייטים + בייט אחד, סה"כ 12 בייטים.

הגודל של מזהה המסמך

הגודל של מזהה מסמך הוא גודל המחרוזת למזהה מחרוזת, או 8 בייטים למזהה שלם.

הגודל של שם המסמך

גודל השם של המסמך הוא הסכום של:

  • הגודל של כל מזהה אוסף ומזהה מסמך בנתיב למסמך
  • 16 בייטים נוספים

למסמך באוסף המשנה users/jeff/tasks עם מזהה מסמך של מחרוזת my_task_id, גודל השם של המסמך הוא 6 + 5 + 6 + 11 + 16 = 44 בייטים:

  • 6 בייטים למזהה האוסף users
  • 5 בייטים למזהה המסמך jeff
  • 6 בייטים למזהה האוסף tasks
  • 11 בייטים למזהה המסמך my_task_id
  • 16 בייטים נוספים

גודל ערך השדה

בטבלה הבאה מוצג הגודל של ערכי השדות לפי סוג.

סוג גודל
מערך סכום הגדלים של הערכים שלו
בוליאני בייט אחד
בייטים אורך הבייט
תאריך ושעה 8 בייטים
מספר נקודה צפה (floating-point) 8 בייטים
נקודה גיאוגרפית 16 בייטים
מספר שלם 8 בייטים
מפה הגודל של המפה, שמחושב באותו אופן כמו גודל המסמך
ריק בייט אחד
חומרי עזר הגודל של שם המסמך
מחרוזת טקסט מספר הבייטים בקידוד UTF-8 + 1

לדוגמה, שדה בוליאני בשם done ישתמש ב-6 בייטים:

  • 5 בייטים לשם השדה done
  • 1 ביייט לערך הבוליאני

גודל המסמך

גודל המסמך הוא הסכום של:

הדוגמה הזו היא למסמך באוסף המשנה users/jeff/tasks עם מזהה מחרוזת של המסמך my_task_id:

 - "type": "Personal"
 - "done": false
 - "priority": 1
 - "description": "Learn Cloud Firestore"

הגודל הכולל של השדות הוא 71 בייטים:

השם והערך של השדה גודל השדה בבייטים
"type": "Personal" 14
5 עבור שם השדה + 9 עבור ערך המחרוזת של השדה
"done": false 6
5 עבור שם השדה + 1 עבור הערך הבוליאני של השדה
"priority": 1 17
9 עבור שם השדה + 8 עבור ערך המספר השלם של השדה
"description": "Learn Cloud Firestore" 34
12 עבור שם השדה + 22 עבור ערך המחרוזת של השדה

לכן, גודל המסמך הוא 44 + 71 + 32 = 147 בייטים:

  • 44 בייטים לשם המסמך
  • 71 בייטים לשדות
  • 32 בייטים נוספים

גודל הרשומה באינדקס

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

גודל של רשומה באינדקס עם שדה יחיד

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

היקף האוסף

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

נניח שיש מסמך באוסף המשנה users/jeff/tasks עם מזהה מסמך של מחרוזת my_task_id:

 - "type": "Personal"
 - "done": false
 - "priority": 1
 - "description": "Learn Cloud Firestore"

באינדקס של שדה יחיד ברמת האוסף שמוסיף לאינדקס את השדה done, הגודל הכולל של הרשומה באותו אינדקס הוא 109 בייטים:

  • 44 בייטים לשם המסמך users/jeff/tasks/my_task_id
  • 27 בייטים לשם המסמך של מסמך ההורה users/jeff
  • 5 בייטים לשם השדה done
  • 1 ביייט לערך השדה הבוליאני
  • 32 בייטים נוספים

היקף קבוצת האוספים

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

נניח שיש מסמך באוסף המשנה users/jeff/tasks עם מזהה מסמך של מחרוזת my_task_id:

 - "type": "Personal"
 - "done": false
 - "priority": 1
 - "description": "Learn Cloud Firestore"

באינדקס של שדה יחיד ברמת קבוצת האוספים שמוסיף לאינדקס את השדה done, הגודל הכולל של הרשומה באנדקס הזה הוא 98 בייטים:

  • 44 בייטים לשם המסמך users/jeff/tasks/my_task_id
  • 5 בייטים לשם השדה done
  • 1 ביייט לערך השדה הבוליאני
  • 48 בייטים נוספים

גודל הרשומה של אינדקס מורכב

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

היקף האוסף

הגודל של רשומת אינדקס באינדקס מורכב ברמת האוסף הוא הסכום של:

נניח שיש מסמך באוסף המשנה users/jeff/tasks עם מזהה מסמך של מחרוזת my_task_id:

 - "type": "Personal"
 - "done": false
 - "priority": 1
 - "description": "Learn Cloud Firestore"

באינדקס מורכב ברמת האוסף שנוספו אליו השדות done ו-priority (שניהם עולים), הגודל הכולל של הרשומה באינדקס הזה הוא 112 בייטים:

  • 44 בייטים לשם המסמך users/jeff/tasks/my_task_id
  • 27 בייטים לשם המסמך של מסמך ההורה users/jeff
  • 1 ביייט לערך השדה הבוליאני
  • 8 בייטים לערך השדה של המספר השלם
  • 32 בייטים נוספים

היקף קבוצת האוספים

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

נניח שיש מסמך באוסף המשנה users/jeff/tasks עם מזהה מסמך של מחרוזת my_task_id:

 - "type": "Personal"
 - "done": false
 - "priority": 1
 - "description": "Learn Cloud Firestore"

באינדקס מורכב ברמת קבוצת האוספים שמוסיף לאינדקס את השדות done ו-priority (שניהם עולים), הגודל הכולל של רשומת האינדקס הוא 85 בייטים:

  • 44 בייטים לשם המסמך users/jeff/tasks/my_task_id
  • 1 ביייט לערך השדה הבוליאני
  • 8 בייטים לערך השדה של המספר השלם
  • 32 בייטים נוספים

המאמרים הבאים

מידע נוסף על תמחור Cloud Firestore