Firebase cung cấp hai cơ sở dữ liệu tài liệu trên đám mây và ứng dụng khách có thể truy cập vào. T4 đề xuất khách hàng mới bắt đầu bằng Cloud Firestore:
Cloud Firestore tương thích với JSON cấp doanh nghiệp nên dùng được hơn 250.000 nhà phát triển tin cậy. Phù hợp với các ứng dụng có mô hình dữ liệu đa dạng thức đòi hỏi khả năng truy vấn, khả năng có thể mở rộng và khả năng sử dụng cao. Giải pháp này cũng cung cấp tính năng đồng bộ hoá ứng dụng có độ trễ thấp và không cần mạng truy cập dữ liệu.
Realtime Database là cơ sở dữ liệu JSON cũ của Firebase. Phù hợp với các ứng dụng có mô hình dữ liệu đơn giản yêu cầu tra cứu đơn giản và độ trễ thấp đồng bộ hoá với khả năng có thể mở rộng hạn chế.
Một số điều quan trọng khác cần lưu ý là gì?
Sau khi cân nhắc những yếu tố chính trước đó, bạn có thể sẵn sàng chọn một cơ sở dữ liệu. Nếu bạn vẫn đang cân nhắc các ưu và nhược điểm, phần này đề cập đến các sự khác biệt giữa Cloud Firestore và Realtime Database.
Mô hình dữ liệu
Cả Realtime Database và Cloud Firestore đều là Cơ sở dữ liệu NoSQL.
Cloud Firestore Ưu tiên | Realtime Database |
---|---|
Lưu trữ dữ liệu dưới dạng tập hợp tài liệu.
Tìm hiểu thêm về chính sách Mô hình dữ liệu Cloud Firestore. |
Lưu trữ dữ liệu dưới dạng một cây JSON lớn.
Tìm hiểu thêm về chính sách Mô hình dữ liệu Realtime Database. |
Hỗ trợ theo thời gian thực và ngoại tuyến
Cả hai đều có SDK ưu tiên thiết bị di động, theo thời gian thực và cả hai đều hỗ trợ lưu trữ dữ liệu cục bộ cho ứng dụng có chế độ ngoại tuyến.
Cloud Firestore Ưu tiên | Realtime Database |
---|---|
Hỗ trợ ngoại tuyến cho các ứng dụng khách của Apple, Android và web. | Hỗ trợ ngoại tuyến cho ứng dụng Apple và Android. |
Trạng thái hiện diện
Bạn có thể biết được thời điểm ứng dụng khách đang trực tuyến hoặc ngoại tuyến. Firebase Realtime Database có thể ghi lại trạng thái kết nối của máy khách và cung cấp thông tin cập nhật mỗi khi trạng thái kết nối của ứng dụng thay đổi.
Cloud Firestore Ưu tiên | Realtime Database |
---|---|
Không được hỗ trợ sẵn. Bạn có thể xây dựng dựa trênRealtime Database hỗ trợ sự hiện diện bằng cách đồng bộ hoá Cloud Firestore và Realtime Database thông qua Cloud Functions Xem phần Bản dựng hiện diện trong Cloud Firestore. | Hỗ trợ tính năng hiện diện. |
Truy vấn
Truy xuất, sắp xếp và lọc dữ liệu từ một trong hai cơ sở dữ liệu thông qua các truy vấn.
Cloud Firestore Ưu tiên | Realtime Database |
---|---|
Truy vấn được lập chỉ mục có kết hợp
sắp xếp và lọc.
|
Truy vấn sâu có các tính năng sắp xếp và lọc bị hạn chế.
|
Hoạt động ghi và giao dịch
Cloud Firestore Ưu tiên | Realtime Database |
---|---|
Các thao tác ghi và giao dịch nâng cao.
|
Các thao tác ghi và giao dịch cơ bản.
|
Độ tin cậy và hiệu suất
Cloud Firestore Ưu tiên | Realtime Database |
---|---|
Cloud Firestore là một giải pháp theo khu vực và nhiều khu vực có khả năng mở rộng
tự động.
|
Realtime Database là một giải pháp theo khu vực.
|
Thời gian hoạt động
Cloud Firestore Ưu tiên | Realtime Database |
---|---|
Hiệu suất thời gian hoạt động cực cao.
|
Hiệu suất thời gian hoạt động cao.
|
Khả năng mở rộng
Cloud Firestore Ưu tiên | Realtime Database |
---|---|
Tự động chuyển tỷ lệ.
|
Việc mở rộng quy mô yêu cầu phân đoạn.
|
Bảo mật
Cloud Firestore Ưu tiên | Realtime Database |
---|---|
Quy tắc không phân tầng kết hợp việc uỷ quyền và xác thực.
|
Ngôn ngữ quy tắc xếp chồng phân tách việc uỷ quyền và xác thực.
|
Giá
Cả hai giải pháp này đều có trên Gói giá Spark và linh hoạt.
Cloud Firestore Ưu tiên | Realtime Database |
---|---|
Tính phí chủ yếu cho các hoạt động được thực hiện trong cơ sở dữ liệu của bạn
(đọc, ghi, xoá) và ở tốc độ, băng thông và bộ nhớ thấp hơn.
Cloud Firestore hỗ trợ hằng ngày hạn mức chi tiêu cho App Engine dự án, để đảm bảo bạn không vượt quá chi phí đang cảm thấy thoải mái. Đọc thêm về Gói giá của Cloud Firestore. |
Chỉ tính phí cho băng thông và bộ nhớ, nhưng ở mức cao hơn
.
Đọc thêm về Realtime Database gói giá. |
Đang dùng Cloud Firestore và Realtime Database
Bạn có thể sử dụng cả hai cơ sở dữ liệu trong cùng một ứng dụng hoặc dự án Firebase. Cả NoSQL cơ sở dữ liệu có thể lưu trữ cùng loại dữ liệu và thư viện ứng dụng hoạt động trong một theo cách tương tự. Hãy lưu ý đến những khác biệt đã nêu trước đó nếu bạn quyết định để dùng cả hai cơ sở dữ liệu trong ứng dụng của mình.
Tìm hiểu thêm về các tính năng có trong cả Realtime Database và Cloud Firestore.
Bạn đã sẵn sàng chọn cơ sở dữ liệu chưa?
Hy vọng thông tin so sánh này đã giúp bạn chọn được giải pháp cơ sở dữ liệu Firebase. Bây giờ, bạn có thể tìm hiểu cách thêm cơ sở dữ liệu vào dự án Firebase của mình.
- Đối với Cloud Firestore, hãy tham khảo bài viết Bắt đầu sử dụng Cloud Firestore.
- Đối với Realtime Database, hãy đọc chủ đề Bắt đầu cho nền tảng của bạn: Apple, Android, C++, Unity, Web hoặc REST.