Catch up on highlights from Firebase at Google I/O 2023. Learn more

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

Xem xét lợi thế 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 phác thảo 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 đồ vào trong tài liệu.

  • Ưu điểm: Nếu bạn có danh sách dữ liệu đơn giản, cố định mà bạn muốn giữ trong tài liệu của mình, điều này rất dễ thiết lập và hợp lý hóa cấu trúc dữ liệu của bạn.
  • Hạn chế: Đây không phải là khả năng 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 các danh sách lớn hơn hoặc đang phát triển, 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ể 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 người dùng dưới dạng danh sách lồng nhau trong hồ sơ của họ.
  • học
    • tên :
      đầu tiên: "Ada"
      cuối cùng: "Lovelace"
      sinh : 1815
      phòng :
      0 : "Phần mềm trò chuyện"
      1 : "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 các 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 gốc không thay đổi. Bạn cũng có đầy đủ 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.
  • Trường hợp sử dụng có thể 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: "phần mềm trò chuyện"
      • người dùng
        • học
          đầu tiên: "Ada"
          cuối cùng: "Lovelace"
        • trượt
          đầu tiên: "Sally"
          cuối cùng: "Đi xe"`


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

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

Tạo các bộ sưu tập ở cấp cơ sở dữ liệu của bạn để tổ chức các bộ dữ liệu khác nhau.

  • Ưu điểm: Bộ sưu tập mức 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 theo 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.
  • Trường hợp sử dụng có thể 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
    • học
      đầu tiên: "Ada"
      cuối cùng: "Lovelace"
      sinh : 1815
    • trượt
      đầu tiên: "Sally"
      cuối cùng: "Đi xe"
      sinh : 1951
  • bộ phòng
    • phần mềm
      • tin nhắn
        • tin nhắn
          từ : "alovelace"
          nội dung : "..."
        • tin nhắn
          từ : "trượt"
          nội dung : "..."