Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

Tính toán kích thước lưu trữ

Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.

Trang này mô tả kích thước lưu trữ của tài liệu, tên tài liệu, trường và mục nhập chỉ mục trong Cloud Firestore.

Bạn có thể tìm hiểu về chi phí của bộ nhớ này tại Giá của Cloud Firestore .

Kích thước chuỗi

Kích thước chuỗi được tính bằng số byte được mã hóa UTF-8 + 1.

Những thứ sau được lưu trữ dưới dạng chuỗi:

  • ID bộ sưu tập
  • Chuỗi tài liệu ID
  • Tên tài liệu
  • Tên trường
  • Giá trị trường chuỗi

Ví dụ:

  • Các tasks ID bộ sưu tập sử dụng 5 byte + 1 byte, tổng cộng là 6 byte.
  • description tên trường sử dụng 11 byte + 1 byte, tổng cộng là 12 byte.

Kích thước ID tài liệu

Kích thước của ID tài liệu là kích thước chuỗi đối với ID chuỗi hoặc 8 byte đối với ID số nguyên.

Kích thước tên tài liệu

Kích thước của tên tài liệu là tổng của:

  • Kích thước của mỗi ID bộ sưu tập và ID tài liệu trong đường dẫn đến tài liệu
  • 16 byte bổ sung

Đối với tài liệu trong bộ sưu tập con users/jeff/tasks có ID tài liệu chuỗi là my_task_id , kích thước tên tài liệu là 6 + 5 + 6 + 11 + 16 = 44 byte:

  • 6 byte cho ID tập hợp users
  • 5 byte cho ID tài liệu jeff
  • 6 byte cho ID bộ sưu tập tasks
  • 11 byte cho ID tài liệu my_task_id
  • 16 byte bổ sung

Kích thước giá trị trường

Bảng sau đây cho thấy kích thước của các giá trị trường theo loại.

Loại hình Kích thước
Mảng Tổng kích thước của các giá trị của nó
Boolean 1 byte
Byte Chiều dài byte
Ngày và giờ 8 byte
Số điểm nổi 8 byte
Điểm địa lý 16 byte
Số nguyên 8 byte
Bản đồ Kích thước của bản đồ, được tính theo cùng một cách với kích thước tài liệu
Vô giá trị 1 byte
Tài liệu tham khảo Kích thước tên tài liệu
Chuỗi văn bản Số byte được mã hóa UTF-8 + 1

Ví dụ, một trường boolean có tên là done sẽ sử dụng 6 byte:

  • 5 byte cho tên trường done
  • 1 byte cho giá trị boolean

Kích thước tài liệu

Kích thước của một tài liệu là tổng của:

Ví dụ này dành cho một tài liệu trong bộ sưu tập con users/jeff/tasks có ID tài liệu chuỗi là my_task_id :

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

Tổng kích thước của các trường là 71 byte:

Tên trường và giá trị Kích thước trường tính bằng byte
"type": "Personal" 14
5 cho tên trường + 9 cho giá trị chuỗi của trường
"done": false 6
5 cho tên trường + 1 cho giá trị boolean của trường
"priority": 1 17
9 cho tên trường + 8 cho giá trị số nguyên của trường
"description": "Learn Cloud Firestore" 34
12 cho tên trường + 22 cho giá trị chuỗi của trường

Vì vậy, kích thước tài liệu là 44 + 71 + 32 = 147 byte:

  • 44 byte cho tên tài liệu
  • 71 byte cho các trường
  • 32 byte bổ sung

Kích thước mục nhập chỉ mục

Kích thước mục nhập chỉ mục được tính như sau cho các chỉ mục trường đơn và chỉ mục tổng hợp.

Kích thước mục nhập chỉ mục trường đơn

Kích thước của mục nhập chỉ mục trường đơn phụ thuộc vào việc một chỉ mục được xác định phạm vi cho một tập hợp hay một nhóm tập hợp.

Phạm vi thu thập

Kích thước của một mục nhập trong chỉ mục trường đơn có phạm vi thu thập là tổng của:

Hãy xem xét một tài liệu trong tập hợp con users/jeff/tasks có ID tài liệu chuỗi là my_task_id :

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

Đối với chỉ mục trường đơn có phạm vi thu thập lập chỉ mục trường done , tổng kích thước của mục nhập trong chỉ mục này là 109 byte:

  • 44 byte cho tên tài liệu users/jeff/tasks/my_task_id
  • 27 byte cho users/jeff tên tài liệu gốc của tài liệu gốc
  • 5 byte cho tên trường done
  • 1 byte cho giá trị trường boolean
  • 32 byte bổ sung

Phạm vi nhóm thu thập

Kích thước của một mục nhập trong chỉ mục trường đơn với phạm vi nhóm tập hợp là tổng của:

Hãy xem xét một tài liệu trong tập hợp con users/jeff/tasks có ID tài liệu chuỗi là my_task_id :

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

Đối với chỉ mục trường đơn có phạm vi nhóm tập hợp lập chỉ mục trường done , tổng kích thước của mục nhập trong chỉ mục này là 98 byte:

  • 44 byte cho tên tài liệu users/jeff/tasks/my_task_id
  • 5 byte cho tên trường done
  • 1 byte cho giá trị trường boolean
  • 48 byte bổ sung

Kích thước mục nhập chỉ mục tổng hợp

Kích thước của một mục nhập trong chỉ mục tổng hợp phụ thuộc vào việc chỉ mục đó có phạm vi đến một tập hợp hay một nhóm tập hợp hay không.

Phạm vi thu thập

Kích thước của mục nhập chỉ mục trong chỉ mục tổng hợp có phạm vi thu thập là tổng của:

Hãy xem xét một tài liệu trong tập hợp con users/jeff/tasks có ID tài liệu chuỗi là my_task_id :

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

Đối với chỉ mục tổng hợp có phạm vi thu thập lập chỉ mục các trường prioritydone (cả hai đều tăng dần), tổng kích thước của mục nhập trong chỉ mục này là 112 byte:

  • 44 byte cho tên tài liệu users/jeff/tasks/my_task_id
  • 27 byte cho users/jeff tên tài liệu gốc của tài liệu gốc
  • 1 byte cho giá trị trường boolean
  • 8 byte cho giá trị trường số nguyên
  • 32 byte bổ sung

Phạm vi nhóm thu thập

Kích thước của mục nhập chỉ mục trong chỉ mục tổng hợp có phạm vi nhóm tập hợp là tổng của:

Hãy xem xét một tài liệu trong tập hợp con users/jeff/tasks có ID tài liệu chuỗi là my_task_id :

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

Đối với chỉ mục tổng hợp có phạm vi nhóm tập hợp lập chỉ mục các trường prioritydone (cả hai đều tăng dần), tổng kích thước của mục nhập chỉ mục trong chỉ mục này là 85 byte:

  • 44 byte cho tên tài liệu users/jeff/tasks/my_task_id
  • 1 byte cho giá trị trường boolean
  • 8 byte cho giá trị trường số nguyên
  • 32 byte bổ sung

Cái gì tiếp theo

Tìm hiểu về giá Cloud Firestore .