Chọn cấu trúc dữ liệu

Hãy nhớ rằng, khi bạn cấu trúc dữ liệu của mình trong Cloud Firestore, bạn có một số tùy chọn khác nhau:

  • Các tài liệu
  • Nhiều bộ sưu tập
  • Bộ sưu tập con trong tài liệu

Hãy xem xét các ưu điểm của từng tùy chọn vì chúng liên quan đến trường hợp sử dụng của bạn. Một vài cấu trúc ví dụ cho dữ liệu phân cấp được nêu trong hướng dẫn này.

Dữ liệu lồng nhau 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.

  • Ưu điểm: Nếu bạn có danh sách dữ liệu cố định, đơn giản mà bạn muốn giữ trong tài liệu của mình, thì điều này rất dễ dàng để thiết lập và sắp xếp hợp lý cấu trúc dữ liệu của bạn.
  • Hạn chế: Tùy chọn này không thể mở rộng như các tùy chọn khác, đặc biệt 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 phát triển, điều này có thể dẫn đến thời gian truy xuất tài liệu chậm hơn.
  • Một trường hợp sử dụng khả thi là gì? Ví dụ: trong ứng dụng trò chuyện, bạn có thể lưu trữ 3 phòng trò chuyện được truy cập gần đây nhất của một người dùng dưới dạng danh sách lồng nhau trong hồ sơ của họ.
  • alovelace
    • Tên :
      đầu tiên: "Ada"
      cuối cùng: "Lovelace"
      sinh: 1815
      phòng :
      0: "Trò chuyện phần mềm"
      1: "Những nhân vật nổi tiếng"
      2: "SWE nổi tiếng"

Bộ sưu tập con

Bạn có thể tạo bộ sưu tập trong tài liệu khi bạn 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ẹ không thay đổi. Bạn cũng có đầy đủ các khả năng truy vấn trên các bộ sưu tập con và bạn có thể đưa ra các 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 xóa các bộ sưu tập con.
  • Một trường hợp sử dụng khả thi là gì? Ví dụ: trong cùng một ứng dụng trò chuyện, bạn có thể tạo bộ sưu tập người dùng hoặc tin nhắn trong tài liệu phòng trò chuyện.
  • khoa học
    • phần mềm
      tên: "trò chuyện phần mềm"
      • người dùng
        • alovelace
          đầu tiên: "Ada"
          cuối cùng: "Lovelace"

        • đầu tiên: "Sally"
          cuối cùng: "Ride" `


    • vật lý thiên văn
      • ...

Bộ sưu tập cấp gốc

Tạo bộ sưu tập ở cấp cơ sở dữ liệu của bạn để 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-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ó thứ bậc tự nhiên có thể ngày càng trở nên phức tạp khi cơ sở dữ liệu của bạn phát triển.
  • Một trường hợp sử dụng khả thi 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
    • alovelace
      đầu tiên: "Ada"
      cuối cùng: "Lovelace"
      sinh: 1815

    • đầu tiên: "Sally"
      cuối cùng: "Ride"
      sinh: 1951
  • phòng
    • phần mềm
      • message
        • tin nhắn
          từ: "alovelace"
          Nội dung : "..."
        • tin nhắn
          from: "sride"
          Nội dung : "..."