MongoDB เป็นฐานข้อมูลแบบเอกสารทั่วไปที่กระจายไปยังฐานข้อมูลหลายอัน ซึ่งเป็นผลิตภัณฑ์ที่ตั้งอยู่ระหว่างฐานข้อมูลสัมพัทธ์และฐานข้อมูลที่ไม่ใช่สัมพัทธ์ (NoSQL) มันเป็นฐานข้อมูลที่มีคุณสมบัติที่สุดและคล้ายกับฐานข้อมูลที่เป็นสัมพัทธ์มากที่สุดในฐานข้อมูลที่ไม่ใช่สัมพัทธ์

ตัวอย่างของเอกสาร MongoDB

{
  "_id": "5cf0029caff5056591b0ce7d",
  "ชื่อ": "เจน",
  "นามสกุล": "อู",
  "ที่อยู่": {
    "ถนน": "ถนนวงเวียน 1",
    "เมือง": "ลอสแองเจลิส",
    "รัฐ": "CA",
    "รหัสไปรษณีย์": "90404"
  },
  "งานอดิเรก": ["serfing", "การเขียนโปรแกรม"]
}

ไม่มีอะไรพิเศษ เป็นข้อมูล JSON ที่ไม่มีความแตกต่างจากข้อมูล JSON นี้ที่เก็บไว้ใน MongoDB เนื่องจากการเก็บข้อมูลในรูปแบบ JSON ทำให้รูปแบบข้อมูลที่เก็บไว้ใน MongoDB มีความยืดหยุ่นมากมาย ต่างจาก MySQL ที่ต้องมีโครงสร้างตารางที่คงที่ นี่หมายความว่าคุณสามารถเพิ่มหรือลบฟิลด์ได้ตลอดเวลาและความเร็วก็จะสูงอีกด้วย

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

ลักษณะของ MongoDB

ประสิทธิภาพสูง

MongoDB มีการบันทึกข้อมูลที่ดีและมีประสิทธิภาพสูง

  • การใช้แบบจำลองข้อมูลที่ฝังอยู่สามารถลดการดำเนินการ I/O ของระบบฐานข้อมูลได้
  • รองรับการสร้างดัชนีเพื่อให้ความมีประสิทธิภาพสูง และฟิลด์ที่มีดัชนีสามารถเป็นฟิลด์ของเอกสารที่ฝังอยู่หรือคีย์ของอาร์เรย์

ภาษาคิวรี่ที่มีความหลากหลาย

MongoDB รองรับชุดคิวรี่ที่หลากหลายเพื่อตอบสนองต่อธุรกิจที่แตกต่างกัน

รองรับการคิวรี่ทางพิกัล

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

ความพร้อมใช้ที่สูง

เซตของการคัดลอกของ MongoDB มี

  • การตัดการต่ออัตโนมัติ
  • ความซ้ำซ้อนข้อมูล

เซ็ตของการคัดลอกคือกลุ่มของตัวอินสแตนซ์มองกอดที่รักษาชุดข้อมูลเดียวกัน ซึ่งมุ่งเน้นการความซ้ำซ้อนข้อมูลและการสนับสนุนความพร้อมใช้ที่สูง

การขยายรายกระจาย

MongoDB รองรับการขยายรายข้าง โดยใช้การแยกชิ้นข้อมูล ข้อมูลถูกกระจายไปยังกลุ่มเครื่องจักร