ขนาดของพื้นที่เก็บข้อมูล

เกี่ยวข้องกับ Cloud Firestore Enterprise Edition เท่านั้น

หน้านี้อธิบายขนาดพื้นที่เก็บข้อมูลของเอกสาร ฟิลด์ และรายการดัชนีใน Cloud Firestore ที่เข้ากันได้กับ MongoDB

ดูข้อมูลเกี่ยวกับค่าใช้จ่ายของพื้นที่เก็บข้อมูลนี้ได้ในหน้าราคา

ขนาดสตริง

ขนาดสตริงจะคำนวณเป็นจำนวนไบต์ที่เข้ารหัส UTF-8 + 1

ระบบจะจัดเก็บข้อมูลต่อไปนี้เป็นสตริง

  • ชื่อคอลเล็กชัน
  • ชื่อฟิลด์
  • ค่าฟิลด์สตริง (รวมถึง _id)

เช่น

  • ชื่อคอลเล็กชัน tasks ใช้ 5 ไบต์ + 1 ไบต์ รวมเป็น 6 ไบต์
  • ชื่อฟิลด์ description ใช้ 11 ไบต์ + 1 ไบต์ รวมเป็น 12 ไบต์

ขนาดค่าของช่อง

ตารางต่อไปนี้แสดงขนาดของค่าฟิลด์ตามประเภท

ประเภท ขนาด
อาร์เรย์ ผลรวมของขนาดของค่า
บูลีน 1 ไบต์
ข้อมูลไบนารี ความยาวของไบต์ + 1 สำหรับประเภทย่อยที่ไม่ใช่ทั่วไป (ไม่ใช่ 0)
วันที่ 8 ไบต์
เตียงคู่ 8 ไบต์
Double128 16 ไบต์
จำนวนเต็ม 32 บิต 4 ไบต์
จำนวนเต็มแบบ 64 บิต (ยาว) 8 ไบต์
ออบเจ็กต์ ผลรวมของขนาดสตริงของชื่อฟิลด์แต่ละรายการและขนาดของค่าฟิลด์แต่ละรายการในออบเจ็กต์ที่ฝัง
คีย์ต่ำสุด 1 ไบต์
Max Key 1 ไบต์
Null 1 ไบต์
นิพจน์ทั่วไป (ความยาวของรูปแบบ + 1) + (ความยาวของตัวเลือก + 1)
การประทับเวลา 8 ไบต์
สตริง จำนวนไบต์ที่เข้ารหัส UTF-8 + 1

เช่น ฟิลด์บูลีนชื่อ done จะใช้ 6 ไบต์

  • 5 ไบต์สำหรับชื่อฟิลด์ done
  • 1 ไบต์สำหรับค่าบูลีน

ขนาดเอกสาร

ขนาดของเอกสารคือผลรวมของรายการต่อไปนี้

ตัวอย่างนี้ใช้สำหรับเอกสารในคอลเล็กชัน tasks

{
  "_id": "my_task_id",
  "type": "Personal",
  "done": false,
  "priority": 1,
  "description": "Learn Cloud Firestore"
}

ฟิลด์มีขนาดรวม 78 ไบต์ ดังนี้

ชื่อและค่าของฟิลด์ ขนาดของช่องข้อมูลในหน่วยไบต์
"_id": "my_task_id" 11 สำหรับค่าสตริงของฟิลด์
"type": "Personal" 14
5 สำหรับชื่อฟิลด์ + 9 สำหรับค่าสตริงของฟิลด์
"done": false 6
5 สำหรับชื่อฟิลด์ + 1 สำหรับค่าบูลีนของฟิลด์
"priority": 1 17
9 สำหรับชื่อฟิลด์ + 4 สำหรับค่าจำนวนเต็ม 32 บิตของฟิลด์
"description": "Learn Cloud Firestore" 34
12 สำหรับชื่อฟิลด์ + 22 สำหรับค่าสตริงของฟิลด์

ดังนั้นขนาดเอกสารจึงเป็น 6 + 78 + 48 = 132 ไบต์

  • 6 สำหรับชื่อคอลเล็กชัน
  • 78 ไบต์สำหรับฟิลด์
  • อีก 48 ไบต์

ขนาดรายการดัชนี

ขนาดของรายการดัชนีในดัชนีคือผลรวมของรายการต่อไปนี้

พิจารณาเอกสารในคอลเล็กชัน tasks

{
  "_id": "my_task_id",
  "type": "Personal",
  "done": false,
  "priority": 1,
  "description": "Learn Cloud Firestore"
}

สำหรับดัชนีในฟิลด์ done และ priority (ทั้ง 2 ฟิลด์เรียงจากน้อยไปมาก) ขนาดรวมของรายการดัชนีในดัชนีนี้คือ 70 ไบต์

  • 6 ไบต์สำหรับชื่อคอลเล็กชัน tasks
  • 11 ไบต์สำหรับค่าฟิลด์ _id
  • 1 ไบต์สำหรับค่าฟิลด์บูลีน
  • 4 ไบต์สำหรับค่าฟิลด์จำนวนเต็ม 32 บิต
  • อีก 48 ไบต์

สำหรับดัชนีแบบกระจาย หากเอกสารไม่มีฟิลด์ใดๆ ระบบจะไม่สร้างรายการดัชนี หากเอกสารมีฟิลด์ที่จัดทำดัชนีอย่างน้อย 1 รายการ ระบบจะสร้างรายการดัชนีโดยตั้งค่าฟิลด์ที่จัดทำดัชนีที่ไม่มีเป็น NULL

ขั้นตอนถัดไป

ดูข้อมูลเกี่ยวกับราคา