Trang này giải thích các giao diện có sẵn để truy cập vào dữ liệu trong cơ sở dữ liệu ở chế độ Native.
Giao diện hoạt động
Chế độ gốc hỗ trợ 2 giao diện để truy cập vào dữ liệu:
Hoạt động của quy trình
Giao diện truy vấn mới hơn cho Cloud Firestore. Các thao tác trong quy trình hỗ trợ cú pháp có khả năng kết hợp dựa trên giai đoạn. Bạn tạo một thao tác bằng cách xác định một loạt các giai đoạn tuần tự được thực thi theo thứ tự. Điều này cho phép thực hiện các thao tác phức tạp, chẳng hạn như lọc theo kết quả của một phép tổng hợp mà trước đây không thể thực hiện trong giao diện ban đầu (Thao tác cốt lõi).
Các thao tác trên quy trình chỉ có trong phiên bản Firestore Enterprise và đang ở giai đoạn ra mắt Xem trước.
Các thao tác cốt lõi
Các thao tác cốt lõi là giao diện ban đầu cho Cloud Firestore.
Các thao tác cốt lõi sử dụng cú pháp chuỗi phương thức (.where(), .orderBy(), .get()) trên các tài liệu tham chiếu hoặc bộ sưu tập để truy xuất tài liệu.
Thứ tự của các giai đoạn truy vấn được ngầm hiểu và khả năng hỗ trợ tổng hợp bị hạn chế.
Các thao tác cốt lõi có trong cả phiên bản Enterprise và Standard, nhưng chỉ mục mặc định rất khác nhau giữa các phiên bản. Hãy xem phần tiếp theo để biết thông tin chi tiết.
Sự khác biệt về giao diện giữa các phiên bản
Với việc ra mắt chế độ hỗ trợ Chế độ gốc trong phiên bản Enterprise, cả Firestore Core và các thao tác Pipeline đều có sẵn. Khi sử dụng các hoạt động Core trong phiên bản Enterprise, hành vi lập chỉ mục và mô hình định giá mới sẽ loại bỏ nhiều hạn chế của phiên bản Standard.
| Tính năng | Phiên bản tiêu chuẩn | Phiên bản Enterprise |
| Các thao tác được hỗ trợ | Chỉ giới hạn ở các thao tác Firestore Core. | Hỗ trợ các thao tác Firestore Core và Pipeline, cũng như các thao tác tương thích với Firestore MongoDB. |
| Yêu cầu về việc lập chỉ mục | Tất cả các truy vấn đều cần có chỉ mục. | Không bắt buộc phải có chỉ mục cho các truy vấn. |
| Tạo chỉ mục | Chỉ mục tự động được tạo cho các trường đơn lẻ. Bạn có thể tạo chỉ mục kết hợp theo cách thủ công. | Không có chỉ mục tự động nào được tạo. Bạn cần quản lý chỉ mục theo cách thủ công. |
| Trường được lập chỉ mục | Một trường __name__ bổ sung sẽ tự động được thêm vào các trường được lập chỉ mục nếu chưa có. | __name__ không tự động được thêm vào các trường được lập chỉ mục. Bạn cần chỉ định rõ __name__ trong các trường được lập chỉ mục nếu điều này quan trọng đối với ứng dụng của bạn. |
| Chuẩn hoá thứ tự sắp xếp | Mệnh đề order by của truy vấn được chuẩn hoá bằng cách thêm các trường bất đẳng thức và trường __name__ vào cuối (nếu chưa có). Điều này đảm bảo kết quả được sắp xếp theo một thứ tự duy nhất và có thể xác định được, bất kể các trường khác trong mệnh đề sắp xếp theo là gì. | Không chuẩn hoá thứ tự sắp xếp. Thứ tự sắp xếp như sort a ASC chỉ đảm bảo rằng kết quả được sắp xếp theo trường a. Cloud Firestore sẽ dùng các chỉ mục hiện có để trả về kết quả theo thứ tự hiệu quả nhất có thể. Do đó, nếu a không phải là giá trị duy nhất trong tập hợp kết quả, thì thứ tự của các kết quả có thể thay đổi tuỳ theo truy vấn, tuỳ thuộc vào cấu hình chỉ mục, chiến lược thực thi, v.v. Để đảm bảo thứ tự duy nhất và xác định của các kết quả, bạn cần thêm một trường duy nhất như __name__ vào thứ tự sắp xếp. |
| Hiệu suất và chi phí của truy vấn | Các truy vấn thường hiệu quả do các yêu cầu về chỉ mục. | Tối ưu hoá hiệu suất và chi phí truy vấn bằng cách tạo chỉ mục. Bạn có thể xác định các chỉ mục bị thiếu bằng cách sử dụng Query Explain và Query Insights.
Các truy vấn không có chỉ mục có thể gặp rủi ro không hiệu quả và tốn kém khi tập dữ liệu tăng lên, đòi hỏi phải giám sát và điều chỉnh. |
| Chi phí lập chỉ mục | Không tính phí cho các thao tác ghi chỉ mục vì chỉ mục là tự động. | Việc ghi các mục trong chỉ mục sẽ tiêu tốn các đơn vị ghi khi một tài liệu được liên kết được ghi (1 đơn vị ghi cho mỗi 1 KiB kích thước mục trong chỉ mục). Bạn tiết kiệm chi phí lưu trữ bằng cách không tạo mục nhập chỉ mục cho mọi trường. |
| Mô hình thanh toán (Đọc/Ghi/Xoá) | Tính phí cho mỗi lần đọc, ghi và xoá tài liệu. | Tính phí theo mỗi lần đọc và ghi (phân đoạn). Các thao tác đọc được tính phí theo Đơn vị đọc (các phần 4 KiB). Các thao tác ghi và xoá được hợp nhất thành Đơn vị ghi (các phần 1 KiB). |
| Giá cơ sở (mỗi triệu)
Giá hiển thị là giá cho khu vực us-central1 |
Đọc: 0,03 USD cho mỗi 100.000 tài liệu (hoặc 0,30 USD cho mỗi triệu tài liệu).
Ghi: 0,09 USD cho 100.000 tài liệu (hoặc 0,9 USD cho 1 triệu tài liệu). Xoá: 0,01 USD cho 100.000 tài liệu (hoặc 0,1 USD cho 1 triệu tài liệu) |
Đơn vị đọc: 0,05 USD cho mỗi 1 triệu đơn vị đọc.
Đơn vị ghi: 0,26 USD cho mỗi 1 triệu đơn vị ghi. Giá thường thấp hơn nếu tài liệu có kích thước dưới 4KiB so với chi phí Đọc tiêu chuẩn. |
| Thông tin cập nhật theo thời gian thực
Giá hiển thị là giá cho khu vực us-central1 |
Các bản cập nhật theo thời gian thực được tính phí là lượt Đọc với mức phí 0,03 USD cho 100.000 tài liệu. | Thông tin cập nhật theo thời gian thực có SKU riêng biệt mới (Đơn vị cập nhật theo thời gian thực), được tính phí theo từng phần 4 KiB. Chi phí cho thông tin cập nhật theo thời gian thực là 0,3 USD cho mỗi triệu đơn vị đọc. |