ดัชนี MongoDB
ดัชนีมักจะเป็นไปได้ที่จะช่วยปรับปรุงประสิทธิภาพของแบบสอบถามหากมีดัชนีไม่มี MongoDB เมื่ออ่านข้อมูลต้องสแกนไฟล์ในการเก็บรวบรวมและเลือกแต่ละระเบียนเหล่านั้นที่ตรงกับเกณฑ์การค้นหา
สแกนประสิทธิภาพแบบสอบถามคอลเลกชันทั้งหมดนี้อยู่ในระดับต่ำมากโดยเฉพาะอย่างยิ่งเมื่อต้องรับมือกับข้อมูลจำนวนมากแบบสอบถามอาจใช้เวลาหลายสิบวินาทีหรือแม้กระทั่งนาทีประสิทธิภาพการทำงานของเว็บไซต์นี้เป็นมฤตยูมาก
ดัชนีเป็นโครงสร้างข้อมูลพิเศษดัชนีจะถูกเก็บไว้ในชุดข้อมูลที่ง่ายต่อการอ่านสำรวจเส้นทาง, ค่าดัชนีเป็นโครงสร้างของตารางฐานข้อมูลหรือคอลัมน์เพื่อจัดเรียง
ensureIndex () วิธีการ
MongoDB ใช้ ensureIndex () วิธีการสร้างดัชนี
ไวยากรณ์
ensureIndex () วิธีไวยากรณ์พื้นฐานจะเป็นดังนี้:
>db.COLLECTION_NAME.ensureIndex({KEY:1})
ไวยากรณ์ค่าของฟิลด์ดัชนีสำคัญที่คุณต้องการที่จะสร้างดัชนีที่ระบุสร้างจากน้อยไปมาก ๆ ลงถ้าคุณต้องการสร้างดัชนี -1 สามารถระบุได้
ตัวอย่าง
>db.col.ensureIndex({"title":1}) >
ensureIndex () วิธีนี้คุณยังสามารถตั้งค่าการใช้หลายเขตข้อมูลในการสร้างดัชนี (ฐานข้อมูลเชิงสัมพันธ์ที่เรียกว่าดัชนีคอมโพสิต)
>db.col.ensureIndex({"title":1,"description":-1}) >
ensureIndex () ได้รับเลือกพารามิเตอร์, พารามิเตอร์ที่ไม่จำเป็นอยู่ด้านล่าง:
พารามิเตอร์ | ชนิด | ลักษณะ |
---|---|---|
พื้นหลัง | บูลีน | กระบวนการสร้างดัชนีจะปิดกั้นการดำเนินงานฐานข้อมูลอื่น ๆ สร้างพื้นหลังดัชนีสามารถระบุได้ในภายหลังระบบขั้นตอนการเพิ่มขึ้นของ "พื้นหลัง" พารามิเตอร์ที่ไม่จำเป็น "พื้นหลัง"ค่าเริ่มต้นเป็นเท็จ |
เป็นเอกลักษณ์ | บูลีน | ดัชนีที่ไม่ซ้ำกัน ระบุเพื่อสร้างดัชนีที่ไม่ซ้ำกันจริงค่าเริ่มต้นเป็นเท็จ |
ชื่อ | เชือก | ชื่อของดัชนี ถ้าไม่ได้ระบุ MongoDB โดยการเชื่อมต่อชื่อเขตข้อมูลดัชนีและจัดเรียงเพื่อที่จะสร้างชื่อดัชนี |
dropDups | บูลีน | ลบระเบียนที่ซ้ำกันเมื่อคุณสร้างดัชนีที่ไม่ซ้ำระบุที่แท้จริงในการสร้างดัชนีที่ไม่ซ้ำกันค่าเริ่มต้นเป็นเท็จ |
เบาบาง | บูลีน | สำหรับข้อมูลภาคสนามที่ไม่ได้อยู่ในเอกสารไม่ได้เปิดใช้ดัชนี; พารามิเตอร์นี้ต้องให้ความสนใจเป็นพิเศษถ้าตั้งค่าเป็นจริงแล้วข้อมูลดัชนีไม่ได้สอบถามเอกสารไม่ได้มีข้อมูลที่สอดคล้องกัน ..ค่าเริ่มต้นเป็นเท็จ |
expireAfterSeconds | จำนวนเต็ม | ระบุค่าในไม่กี่วินาทีสำหรับหน่วยเพื่อความสมบูรณ์ของการตั้งค่า TTL, การตั้งเวลาการอยู่รอดของคอลเลกชัน |
V | รุ่นดัชนี | หมายเลขรุ่นดัชนี รุ่นเริ่มต้นของดัชนีจะขึ้นอยู่กับการทำงานเมื่อ mongod สร้างรุ่นดัชนี |
น้ำหนัก | เอกสาร | น้ำหนักดัชนีค่าระหว่าง 1 ถึง 99,999 หมายถึงสิทธิที่จะทำคะแนนฟิลด์ดัชนีอื่นที่เกี่ยวกับน้ำหนักของดัชนี |
DEFAULT_LANGUAGE | เชือก | สำหรับดัชนีข้อความพารามิเตอร์นี้กำหนดคำหยุดและกั้นหลักเกณฑ์และรายชื่อคำ เริ่มต้นเป็นภาษาอังกฤษ |
language_override | เชือก | สำหรับดัชนีข้อความซึ่งระบุชื่อเขตข้อมูลที่มีอยู่ในเอกสารภาษาแทนที่ภาษาเริ่มต้นค่าเริ่มต้นภาษา |
ตัวอย่าง
สร้างดัชนีในพื้นหลัง:
db.values.ensureIndex({open: 1, close: 1}, {background: true})
โดยการเพิ่มพื้นหลังเมื่อมีการสร้างดัชนี: ตัวเลือกที่แท้จริงที่ช่วยให้การสร้างงานในพื้นหลัง