Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

เลือกโครงสร้างข้อมูล

จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ

โปรดจำไว้ว่า เมื่อคุณจัดโครงสร้างข้อมูลของคุณใน Cloud Firestore คุณจะมีตัวเลือกต่างๆ สองสามตัวเลือก:

  • เอกสาร
  • หลายคอลเลกชัน
  • การรวบรวมย่อยภายในเอกสาร

พิจารณาข้อดีของแต่ละตัวเลือกที่เกี่ยวข้องกับกรณีการใช้งานของคุณ โครงสร้างตัวอย่างบางส่วนสำหรับข้อมูลลำดับชั้นมีระบุไว้ในคู่มือนี้

ข้อมูลซ้อนกันในเอกสาร

คุณสามารถซ้อนวัตถุที่ซับซ้อน เช่น อาร์เรย์หรือแผนที่ภายในเอกสารได้

  • ข้อดี: หากคุณมีรายการข้อมูลตายตัวง่ายๆ ที่คุณต้องการเก็บไว้ในเอกสารของคุณ การตั้งค่านี้จะทำได้ง่ายและทำให้โครงสร้างข้อมูลของคุณคล่องตัวขึ้น
  • ข้อจำกัด: ไม่สามารถปรับขนาดได้เหมือนกับตัวเลือกอื่นๆ โดยเฉพาะอย่างยิ่งหากข้อมูลของคุณขยายตัวเมื่อเวลาผ่านไป ด้วยรายการที่ใหญ่ขึ้นหรือเพิ่มขึ้น เอกสารก็เพิ่มขึ้นเช่นกัน ซึ่งอาจทำให้เวลาการเรียกเอกสารช้าลง
  • กรณีการใช้งานที่เป็นไปได้คืออะไร ตัวอย่างเช่น ในแอปแชท คุณอาจจัดเก็บห้องแชท 3 ห้องของผู้ใช้ที่เข้าชมล่าสุดเป็นรายการที่ซ้อนกันในโปรไฟล์ของผู้ใช้
  • รัก
    • ชื่อ :
      อันดับแรก : "เอด้า"
      ครั้งสุดท้าย : "ลูกไม้หล่นไม่ไกลต้น"
      เกิด : พ.ศ. 2358
      ห้องพัก :
      0 : "โปรแกรมแชท"
      1 : "บุคคลที่มีชื่อเสียง"
      2: "หน่วย SWE ที่มีชื่อเสียง"

คอลเลกชันย่อย

คุณสามารถสร้างคอลเลกชันภายในเอกสารได้เมื่อคุณมีข้อมูลที่อาจขยายออกไปเมื่อเวลาผ่านไป

  • ข้อดี: เมื่อรายการของคุณเพิ่มขึ้น ขนาดของเอกสารหลักจะไม่เปลี่ยนแปลง คุณยังได้รับความสามารถในการค้นหาเต็มรูปแบบในคอลเล็กชันย่อย และคุณสามารถออกคิวรี กลุ่มคอลเล็กชัน ในคอลเล็กชันย่อยได้
  • ข้อจำกัด: คุณไม่สามารถลบคอลเลกชันย่อยได้ง่ายๆ
  • กรณีการใช้งานที่เป็นไปได้คืออะไร ตัวอย่างเช่น ในแอปแชทเดียวกัน คุณอาจสร้างคอลเลกชันของผู้ใช้หรือข้อความภายในเอกสารห้องสนทนา
  • วิทยาศาสตร์
    • ซอฟต์แวร์
      ชื่อ: "ซอฟต์แวร์แชท"
      • ผู้ใช้
        • รัก
          อันดับแรก : "เอด้า"
          ครั้งสุดท้าย : "ลูกไม้หล่นไม่ไกลต้น"

        • อันดับแรก: "แซลลี่"
          ล่าสุด : "ขี่"`


    • ฟิสิกส์ดาราศาสตร์
      • ...

คอลเลกชันระดับราก

สร้างคอลเลกชันที่ระดับรากของฐานข้อมูลของคุณเพื่อจัดระเบียบชุดข้อมูลที่แตกต่างกัน

  • ข้อดี: คอลเลกชันระดับรูทนั้นดีสำหรับความสัมพันธ์แบบกลุ่มต่อกลุ่มและให้การสืบค้นที่มีประสิทธิภาพภายในแต่ละคอลเลกชัน
  • ข้อจำกัด: การรับข้อมูลที่มีลำดับชั้นตามธรรมชาติอาจซับซ้อนมากขึ้นเมื่อฐานข้อมูลของคุณเติบโตขึ้น
  • กรณีการใช้งานที่เป็นไปได้คืออะไร ตัวอย่างเช่น ในแอปแชทเดียวกัน คุณอาจสร้างคอลเล็กชันหนึ่งสำหรับผู้ใช้และอีกคอลเลกชั่นหนึ่งสำหรับห้องและข้อความ
  • ผู้ใช้
    • รัก
      อันดับแรก : "เอด้า"
      ครั้งสุดท้าย : "ลูกไม้หล่นไม่ไกลต้น"
      เกิด : พ.ศ. 2358

    • อันดับแรก: "แซลลี่"
      ล่าสุด : "ขี่"
      เกิด : พ.ศ. 2494
  • ห้อง
    • ซอฟต์แวร์
      • ข้อความ
        • ข้อความ
          จาก: "alovelace"
          เนื้อหา : "..."
        • ข้อความ
          จาก : "sride"
          เนื้อหา : "..."