Hãy nhớ rằng khi tạo cấu trúc dữ liệu trong Cloud Firestore, bạn có một số lựa chọn:
- Tài liệu
- Nhiều bộ sưu tập
- Tập hợp con trong tài liệu
Cân nhắc các ưu điểm của từng tuỳ chọn khi chúng liên quan đến trường hợp sử dụng của bạn. Một số cấu trúc mẫu cho dữ liệu phân cấp được nêu trong hướng dẫn này.
Dữ liệu lồng trong tài liệu
Bạn có thể lồng các đối tượng phức tạp như mảng hoặc bản đồ trong tài liệu.
- Lợi thế: Nếu bạn có các danh sách dữ liệu cố định, đơn giản mà bạn muốn lưu giữ trong tài liệu, thì bạn có thể dễ dàng thiết lập và đơn giản hoá cấu trúc dữ liệu.
-
Hạn chế: Phương thức này không mở rộng được như các phương thức khác, đặc biệt là nếu dữ liệu của bạn mở rộng theo thời gian. Với danh sách lớn hơn hoặc ngày càng tăng, tài liệu cũng tăng lên, điều này có thể dẫn đến thời gian truy xuất tài liệu chậm hơn.
- Trường hợp sử dụng có thể có là gì? Ví dụ: trong một ứng dụng trò chuyện, bạn có thể lưu trữ 3 phòng trò chuyện mà người dùng đã truy cập gần đây nhất dưới dạng danh sách lồng nhau trong hồ sơ của họ.
|
- class alovelace
- name :
first : "Ada"
last : "Lovelace"
born : 1815
rooms :
0 : "Software Chat"
1 : "Famous Figures"
2 : "Famous SWEs"
|
Bộ sưu tập con
Bạn có thể tạo các bộ sưu tập trong tài liệu khi có dữ liệu có thể mở rộng theo thời gian.
- Ưu điểm: Khi danh sách của bạn phát triển, kích thước của tài liệu mẹ sẽ không thay đổi. Bạn cũng có đầy đủ chức năng truy vấn trên các bộ sưu tập con và có thể đưa ra
truy vấn nhóm bộ sưu tập trên các bộ sưu tập con.
-
Hạn chế: Bạn không thể dễ dàng xoá các bộ sưu tập phụ.
- Trường hợp sử dụng có thể có là gì? Ví dụ: trong cùng một ứng dụng trò chuyện, bạn có thể tạo các bộ sưu tập người dùng hoặc tin nhắn trong tài liệu phòng trò chuyện.
|
- collections_bookmark science
- phần mềm class
tên : "software chat"
- collections_bookmark
người dùng
- class
alovelace
first : "Ada"
last : "Lovelace"
- class
sride
first : "Sally"
last : "Ride"`
- class thiên văn học
|
Bộ sưu tập cấp gốc
Tạo các tập hợp ở cấp gốc của cơ sở dữ liệu để sắp xếp các tập dữ liệu khác nhau.
- Ưu điểm: Bộ sưu tập cấp gốc phù hợp với mối quan hệ nhiều với nhiều và cung cấp khả năng truy vấn mạnh mẽ trong mỗi bộ sưu tập.
-
Hạn chế: Việc lấy dữ liệu có hệ phân cấp tự nhiên có thể ngày càng phức tạp khi cơ sở dữ liệu của bạn phát triển.
- Trường hợp sử dụng có thể có là gì? Ví dụ: trong cùng một ứng dụng trò chuyện, bạn có thể tạo một bộ sưu tập cho người dùng và một bộ sưu tập khác cho phòng và tin nhắn.
|
- người dùng collections_bookmark
- class alovelace
first : "Ada"
last : "Lovelace"
born : 1815
- class sride
tên : "Sally"
họ : "Ride"
sinh năm : 1951
- collections_bookmark phòng
- Phần mềm class
- collections_bookmark
tin nhắn
- class
message1
from : "alovelace"
content : "..."
- class
message2
from : "sride"
content : "..."
|