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 dung lượng lưu trữ này tại Cloud Firestore Pricing .

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.

Sau đây được lưu trữ dưới dạng chuỗi:

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

Ví dụ:

  • Tá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 một tên tài liệu là tổng của:

  • Kích thước của từng 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 bộ sưu tậ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 hiển thị kích thước của các giá trị trường theo loại.

Loại 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 độ 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 giống như kích thước tài liệu
Vô giá trị 1 byte
Thẩm quyền giải quyết 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 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 với 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 theo 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ậ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 đối với 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 một trường

Kích thước của một mục nhập chỉ mục một trường tùy thuộc vào việc liệu một chỉ mục có nằm trong phạm vi của một bộ sưu tập hay một nhóm bộ sưu tập hay không.

Phạm vi thu thập

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

Hãy xem xét một tài liệu trong bộ sưu tập phụ users/jeff/tasks với 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 một trường có phạm vi tập hợp lập chỉ mục cho 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 tên tài liệu của tài liệu gốc users/jeff
  • 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 bộ sưu tập

Kích thước của một mục trong chỉ mục một trường với phạm vi nhóm bộ sưu tập là tổng của:

Hãy xem xét một tài liệu trong bộ sưu tập phụ users/jeff/tasks với 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 một trường có phạm vi nhóm bộ sưu tậ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 một chỉ mục tổng hợp phụ thuộc vào việc chỉ mục đó nằm trong phạm vi của một bộ sưu tập hay một nhóm bộ sưu tập.

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 bộ sưu tập phụ users/jeff/tasks với 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 tập hợp lập chỉ mục cho trường done và trường priority (cả trường 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 tên tài liệu của tài liệu gốc users/jeff
  • 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 bộ sưu tập

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

Hãy xem xét một tài liệu trong bộ sưu tập phụ users/jeff/tasks với 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 bộ sưu tập lập chỉ mục cho trường done và trường priority (cả trường 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á của Cloud Firestore .