ฉันกำลังทำงานในโครงการที่มีฐานข้อมูล Oracle ค่อนข้างใหญ่ (แม้ว่าคำถามของฉันจะใช้ได้ดีกับฐานข้อมูลอื่น ๆ ) เรามีเว็บอินเทอร์เฟซที่ช่วยให้ผู้ใช้สามารถค้นหาในฟิลด์ต่างๆที่เป็นไปได้เกือบทั้งหมด
เพื่อให้การค้นหาเหล่านี้ดำเนินไปอย่างรวดเร็วเราได้เพิ่มดัชนีลงในฟิลด์และชุดค่าผสมของฟิลด์ที่เราเชื่อว่าผู้ใช้มักจะค้นหา อย่างไรก็ตามเนื่องจากเราไม่รู้จริงๆว่าลูกค้าของเราจะใช้ซอฟต์แวร์นี้อย่างไรจึงยากที่จะบอกได้ว่าจะสร้างดัชนีใด
พื้นที่ไม่ใช่เรื่องน่ากังวล เรามีไดรฟ์ RAID 4 เทราไบต์ซึ่งเราใช้เพียงเศษเสี้ยวเล็ก ๆ อย่างไรก็ตามฉันกังวลเกี่ยวกับบทลงโทษด้านประสิทธิภาพที่อาจเกิดขึ้นจากการมีดัชนีมากเกินไป เนื่องจากดัชนีเหล่านั้นจำเป็นต้องได้รับการอัปเดตทุกครั้งที่มีการเพิ่มลบหรือแก้ไขแถวฉันจึงคิดว่าเป็นความคิดที่ไม่ดีที่จะมีดัชนีหลายสิบรายการในตารางเดียว
จำนวนดัชนีที่ถือว่ามากเกินไป? 10? 25? 50? หรือฉันควรจะครอบคลุมกรณีที่พบได้บ่อยและชัดเจนจริงๆและเพิกเฉยต่อสิ่งอื่น ๆ ?