حسابات حجم مساحة التخزين

تصف هذه الصفحة حجم التخزين للمستندات وأسماء المستندات والحقول و إدخالات الفهرس في Cloud Firestore.

يمكنك التعرّف على تكاليف هذا التخزين في Cloud Firestore صفحة الأسعار.

حجم السلسلة

يتم احتساب أحجام السلاسل على أنّها عدد وحدات البايت المرمَّزة بتنسيق UTF-8 + 1.

يتم تخزين ما يلي كسلاسل:

  • أرقام تعريف المجموعات
  • أرقام تعريف المستندات التي تتضمّن سلاسل
  • أسماء المستندات
  • أسماء الحقول
  • قيم الحقول التي تتضمّن سلاسل

على سبيل المثال:

  • يستخدم رقم تعريف المجموعة tasks ‏5 بايت + 1 بايت، ما يجعله 6 بايت إجمالاً.
  • يستخدم اسم الحقل description ‏11 بايت + 1 بايت، ما يجعله 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 بايت إضافية

حجم قيمة الحقل

يعرض الجدول التالي حجم قيم الحقول حسب النوع.

النوع الحجم
مصفوفة مجموع أحجام القيم
قيمة منطقية 1 بايت
وحدات البايت طول البايت
التاريخ والوقت 8 بايت
عدد النقطة العائمة 8 بايت
نقطة جغرافية 16 بايت
عدد صحيح 8 بايت
خريطة حجم الخريطة، ويتم احتسابه بالطريقة نفسها التي يتم بها احتساب حجم المستند
خالية 1 بايت
مراجع حجم اسم المستند
سلسلة نصية عدد وحدات البايت المرمَّزة بتنسيق UTF-8 + 1
المتجه 8 بايت لكل بُعد

على سبيل المثال، سيستخدم حقل منطقي باسم 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 بايت إضافية

حجم إدخال الفهرس المركّب

يعتمد حجم إدخال في فهرس مركّب على ما إذا كان الفهرس محدد النطاق بمجموعة أو مجموعة مجموعات.

نطاق المجموعة

حجم إدخال فهرس في فهرس مركّب ومحدد النطاق بمجموعة هو مجموع ما يلي:

  • حجم اسم المستند للمستند المفهرَس
  • حجم اسم المستند الرئيسي للمستند المفهرَس
  • مجموع قيم الحقول المفهرَسة
  • 32 بايت إضافية

لنفترض أنّ هناك مستندًا في المجموعة الفرعية 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 بايت إضافية

نطاق مجموعة المجموعات

حجم إدخال فهرس في فهرس مركّب ومحدد النطاق بمجموعة مجموعات هو مجموع ما يلي:

  • حجم اسم المستند للمستند المفهرَس
  • مجموع قيم الحقول المفهرَسة
  • 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 بايت إضافية

حجم إدخال فهرس البحث عن النص

حجم إدخال فهرس البحث عن النص في الفهرس هو مجموع ما يلي:

  • حجم السلسلة لاسم المجموعة
  • حجم قيمة رقم تعريف المستند
  • مجموع وحدات البايت من قيم الحقول المفهرَسة (x2)
  • 48 بايت إضافية للبيانات الوصفية العامة

لنفترض مثالاً لحدث إدراج لمستند برقم تعريف مستند my_task_id في المجموعة tasks:

يبلغ الحجم الإجمالي لإدخال فهرس البحث عن النص في description ‏105 بايت استنادًا إلى ما يلي:

  • 6 بايت لاسم المجموعة tasks
  • 11 بايت لقيمة رقم تعريف المستند
  • 44 بايت، استنادًا إلى 22 بايت للحقل description ‏x2
  • 48 بايت إضافية للبيانات الوصفية العامة

حجم إدخال الفهرس الجغرافي

حجم إدخال الفهرس الجغرافي في الفهرس هو مجموع ما يلي:

  • حجم السلسلة لاسم المجموعة
  • حجم قيمة رقم تعريف المستند
  • 128 بايت لكل نقطة جغرافية مفهرَسة
  • 48 بايت إضافية للبيانات الوصفية العامة

لنفترض مثالاً لحدث إدراج لمستند برقم تعريف مستند my_place في المجموعة places:

{
     "type": "Restaurant",
     "visited": false,
     "priority": 1,
     "location": GeoPoint(longitude, latitude)
}

يبلغ الحجم الإجمالي لإدخال الفهرس الجغرافي في location ‏192 بايت استنادًا إلى ما يلي:

  • 7 بايت لاسم المجموعة places
  • 9 بايت لرقم تعريف المستند
  • 128 بايت للحقل location
  • 48 بايت إضافية للبيانات الوصفية العامة

الخطوات التالية

التعرّف على أسعار Cloud Firestore