Hãy tham khảo hướng dẫn này để nắm được các hạn mức của Cloud Firestore, và xem Giá của Cloud Firestore để biết thông tin giải thích đầy đủ và chi tiết về chi phí của Cloud Firestore, bao gồm cả những điều cần lưu ý.
Theo dõi mức sử dụng
Để theo dõi mức sử dụng Cloud Firestore của bạn trong bảng điều khiển của Firebase, hãy chuyển đến thẻ Cơ sở dữ liệu và bộ nhớ > Firestore > Mức sử dụng. Hãy sử dụng trang tổng quan này để đánh giá mức sử dụng của bạn trong các khoảng thời gian khác nhau.
Mức sử dụng chi tiết trong bảng điều khiển Google Cloud
Khi tạo một dự án Firebase, bạn cũng đang tạo một dự án Google Cloud. Các trang Cloud FirestoreAPI Quotas (Hạn mức API) và App EngineQuotas (Hạn mức) trong bảng điều khiển Google Cloud theo dõi thông tin về hạn mức và mức sử dụng Cloud Firestore.
Hạn mức miễn phí
Cloud Firestore cung cấp hạn mức miễn phí để bạn có thể bắt đầu mà không tốn phí. Nếu cần thêm hạn mức, bạn phải bật tính năng thanh toán cho dự án Google Cloud của mình.
Hạn mức được áp dụng hằng ngày và đặt lại vào khoảng nửa đêm theo giờ Thái Bình Dương.
Bảng sau đây tóm tắt hạn mức miễn phí:
| Bậc miễn phí | Hạn ngạch dung lượng |
|---|---|
| Dữ liệu được lưu trữ | 1 GiB |
| Tài liệu đọc | 50.000/ngày |
| Số lượt ghi tài liệu | 20.000 bản/ngày |
| Xoá tài liệu | 20.000 bản/ngày |
| Chuyển dữ liệu ra ngoài | 10 GiB mỗi tháng |
Các thao tác và tính năng sau đây không có hạn mức sử dụng miễn phí. Bạn phải bật thông tin thanh toán để sử dụng các tính năng này:
- Xoá TTL
- Dữ liệu PITR
- Dữ liệu sao lưu
- Thao tác khôi phục
- Thao tác sao chép
Để biết thêm thông tin về cách tính phí cho các tính năng này, hãy xem phần Giá bộ nhớ.
Hạn mức tiêu chuẩn
Các bảng sau đây cho biết các giới hạn áp dụng cho Cloud Firestore. Đây là các giới hạn cố định, trừ phi có quy định khác.
Cơ sở dữ liệu
| Giới hạn | Thông tin chi tiết |
|---|---|
| Số lượng cơ sở dữ liệu tối đa cho mỗi dự án |
100 Bạn có thể liên hệ với nhóm hỗ trợ để yêu cầu tăng hạn mức này. |
| Số lượng tối đa cơ sở dữ liệu khoá mã hoá do khách hàng quản lý (CMEK) cho mỗi dự án |
0 Theo mặc định, hạn mức là 0 vì tính năng này nằm trong danh sách cho phép. Bạn có thể yêu cầu tăng hạn mức bằng cách điền vào biểu mẫu yêu cầu quyền truy cập vào CMEK. |
Bộ sưu tập, tài liệu và trường
| Giới hạn | Thông tin chi tiết |
|---|---|
| Các quy tắc ràng buộc đối với mã tập hợp |
|
| Độ sâu tối đa của tập hợp con | 100 |
| Các quy tắc ràng buộc đối với mã tài liệu |
|
| Kích thước tối đa cho tên tài liệu | 6 KiB |
| Kích thước tối đa của một tài liệu | 1 MiB (1.048.576 byte) |
| Các quy tắc ràng buộc về tên trường |
|
| Kích thước tối đa của tên trường | 1.500 byte |
| Các quy tắc ràng buộc đối với đường dẫn trường |
`). Ví dụ: foo.`x&y` đề cập đến trường x&y được lồng trong trường foo. Để tạo tên trường có ký tự dấu phẩy ngược, hãy thoát ký tự dấu phẩy ngược bằng ký tự dấu gạch chéo ngược (\). Để thuận tiện, bạn có thể tránh tên trường được trích dẫn bằng cách truyền đường dẫn trường dưới dạng đối tượng FieldPath (ví dụ: xem FieldPath JavaScript).
|
| Kích thước tối đa của đường dẫn trường | 1.500 byte |
| Kích thước tối đa của một giá trị trường | 1 MiB – 89 byte (1.048.487 byte) |
| Độ sâu tối đa của các trường trong một bản đồ hoặc mảng | 20 Trường bản đồ và mảng thêm một cấp vào độ sâu tổng thể của một đối tượng. Ví dụ: đối tượng sau đây có tổng độ sâu là 3 cấp: |
Hoạt động ghi và giao dịch
Ngoài các giới hạn này, bạn cũng nên xem các phương pháp hay nhất để thiết kế theo quy mô.
| Giới hạn | Thông tin chi tiết |
|---|---|
| Kích thước yêu cầu API tối đa | 10 MiB |
| Giới hạn thời gian cho một giao dịch | 270 giây, với thời gian hết hạn khi không hoạt động là 60 giây |
Số lượng phép biến đổi trường tối đa có thể thực hiện trên một tài liệu trong một thao tác Commit hoặc trong một giao dịch |
500 |
Chỉ số
Các giới hạn sau áp dụng cho chỉ mục trường đơn và chỉ mục kết hợp:
| Giới hạn | Thông tin chi tiết |
|---|---|
| Số lượng chỉ mục kết hợp tối đa cho một cơ sở dữ liệu |
|
| Số lượng cấu hình trường đơn tối đa cho một cơ sở dữ liệu |
Một cấu hình cấp trường có thể chứa nhiều cấu hình cho cùng một trường. Ví dụ: một trường hợp miễn lập chỉ mục cho một trường và một chính sách TTL trên cùng một trường được tính là một cấu hình trường trong hạn mức. |
|
Số mục nhập chỉ mục tối đa cho mỗi tài liệu |
40.000 Số lượng mục nhập chỉ mục là tổng của các mục sau đây cho một tài liệu:
Để xem cách Cloud Firestore biến một tài liệu và một tập hợp chỉ mục thành các mục chỉ mục, hãy xem ví dụ về số lượng mục chỉ mục này. |
| Số trường tối đa trong một chỉ mục kết hợp | 100 |
| Kích thước tối đa của một mục nhập chỉ mục |
7,5 KiB Để xem cách Cloud Firestore tính toán kích thước mục nhập chỉ mục, hãy xem phần kích thước mục nhập chỉ mục. |
| Tổng kích thước tối đa của các mục nhập chỉ mục của một tài liệu |
8 MiB Tổng kích thước là tổng của các giá trị sau đây cho một tài liệu: |
| Kích thước tối đa của giá trị trường được lập chỉ mục |
1500 byte Giá trị trường vượt quá 1.500 byte sẽ bị cắt bớt. Các truy vấn liên quan đến giá trị trường bị cắt bớt có thể trả về kết quả không nhất quán. |
Thời gian tồn tại (TTL)
| Giới hạn | Thông tin chi tiết |
|---|---|
| Số lượng cấu hình trường đơn tối đa cho một cơ sở dữ liệu |
Một cấu hình cấp trường có thể chứa nhiều cấu hình cho cùng một trường. Ví dụ: một trường hợp miễn lập chỉ mục cho một trường và một chính sách TTL trên cùng một trường được tính là một cấu hình trường trong hạn mức. |
Xuất/nhập
Các giới hạn sau đây áp dụng cho hoạt động nhập và xuất được quản lý:
| Giới hạn | Thông tin chi tiết |
|---|---|
| Tổng số yêu cầu xuất và nhập tối đa cho một dự án được phép mỗi phút | 20 |
| Số lượng lệnh xuất và nhập đồng thời tối đa | 50 |
| Số lượng bộ lọc mã nhận dạng tập hợp tối đa cho các yêu cầu xuất và nhập | 100 |
Quy tắc bảo mật
| Giới hạn | Thông tin chi tiết |
|---|---|
Số lượng lệnh gọi exists(), get() và getAfter() tối đa cho mỗi yêu cầu |
Nếu vượt quá một trong hai giới hạn này, bạn sẽ gặp lỗi từ chối cấp quyền. Một số lệnh gọi truy cập tài liệu có thể được lưu vào bộ nhớ đệm và các lệnh gọi được lưu vào bộ nhớ đệm không được tính vào giới hạn. |
Độ sâu tối đa của câu lệnh match lồng nhau |
10 |
Độ dài đường dẫn tối đa (tính theo phân đoạn đường dẫn) được phép trong một tập hợp các câu lệnh match lồng nhau |
100 |
Số lượng biến thu thập đường dẫn tối đa được phép trong một tập hợp các câu lệnh match lồng nhau |
20 |
| Độ sâu tối đa của lệnh gọi hàm | 20 |
| Số lượng đối số hàm tối đa | 7 |
Số lượng liên kết biến let tối đa cho mỗi hàm |
10 |
| Số lệnh gọi hàm đệ quy hoặc tuần hoàn tối đa | 0 (không được phép) |
| Số lượng biểu thức tối đa được đánh giá cho mỗi yêu cầu | 1.000 |
| Kích thước tối đa của một bộ quy tắc | Bộ quy tắc phải tuân thủ hai giới hạn về kích thước:
|
Quản lý chi tiêu
Để tránh các khoản phí không mong muốn trên hoá đơn, hãy đặt ngân sách hằng tháng và cảnh báo.
Đặt ngân sách hằng tháng
Để theo dõi chi phí Cloud Firestore, hãy tạo ngân sách hằng tháng trong bảng điều khiển Google Cloud. Ngân sách sẽ không giới hạn mức sử dụng của bạn, nhưng bạn có thể đặt cảnh báo để thông báo cho bạn khi bạn sắp đạt hoặc vượt quá chi phí dự kiến trong tháng.
Để đặt ngân sách, hãy chuyển đến mục Thanh toán trong bảng điều khiển Google Cloud rồi tạo ngân sách cho tài khoản Cloud Billing của bạn. Bạn có thể sử dụng chế độ cài đặt cảnh báo mặc định hoặc sửa đổi cảnh báo để gửi thông báo theo các tỷ lệ phần trăm khác nhau của ngân sách hằng tháng.
Tìm hiểu thêm về cách thiết lập ngân sách và cảnh báo ngân sách.