ความแตกต่างระหว่างดัชนีคลัสเตอร์และดัชนีที่ไม่ใช่คลัสเตอร์

ความแตกต่างระหว่างดัชนีคลัสเตอร์และดัชนีที่ไม่ใช่คลัสเตอร์
ความแตกต่างระหว่างดัชนีคลัสเตอร์และดัชนีที่ไม่ใช่คลัสเตอร์

วีดีโอ: ความแตกต่างระหว่างดัชนีคลัสเตอร์และดัชนีที่ไม่ใช่คลัสเตอร์

วีดีโอ: ความแตกต่างระหว่างดัชนีคลัสเตอร์และดัชนีที่ไม่ใช่คลัสเตอร์
วีดีโอ: อธิบายหน่วยพื้นฐานไฟฟ้า โวลต์ แอมป์และวัตต์คืออะไร (Basic electricity: Volts,Amps and Watts) 2024, พฤศจิกายน
Anonim

ดัชนีคลัสเตอร์เทียบกับที่ไม่ใช่คลัสเตอร์

ดัชนีมีความสำคัญมากในฐานข้อมูลใดๆ ใช้เพื่อปรับปรุงประสิทธิภาพการดึงข้อมูลจากตาราง มีความเป็นอิสระทางตรรกะและทางกายภาพจากข้อมูลในตารางที่เกี่ยวข้อง ดังนั้น ดัชนีสามารถวาง สร้างใหม่ และสร้างใหม่ได้โดยไม่กระทบต่อข้อมูลของตารางฐาน เซิร์ฟเวอร์ Oracle สามารถรักษาดัชนีโดยอัตโนมัติโดยไม่ต้องมี DBA เมื่อมีการแทรก อัปเดต และลบตารางที่เกี่ยวข้อง ดัชนีมีหลายประเภท นี่คือบางส่วนของพวกเขา

1. ดัชนีบีทรี

2. ดัชนีบิตแมป

3. ดัชนีตามฟังก์ชัน

4. ดัชนีคีย์ย้อนกลับ

5. ดัชนีคลัสเตอร์ B-tree

ดัชนีที่ไม่ใช่คลัสเตอร์คืออะไร

จากประเภทดัชนีข้างต้น ต่อไปนี้เป็นดัชนีที่ไม่ใช่แบบกลุ่ม

• ดัชนีบีทรี

• ดัชนีบิตแมป

• ดัชนีตามฟังก์ชัน

• ดัชนีคีย์ย้อนกลับ

ดัชนี B-tree เป็นฐานข้อมูลประเภทดัชนีที่ใช้กันอย่างแพร่หลายมากที่สุด หากใช้คำสั่ง CREATE INDEX บนฐานข้อมูล โดยไม่ระบุประเภท เซิร์ฟเวอร์ Oracle จะสร้างดัชนี b-tree เมื่อสร้างดัชนี b-tree บนคอลัมน์เฉพาะ เซิร์ฟเวอร์ oracle จะเก็บค่าของคอลัมน์และเก็บการอ้างอิงไปยังแถวจริงของตาราง

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

ดัชนีการทำงานมาจาก Oracle 8i ในที่นี้ ฟังก์ชันถูกใช้ในคอลัมน์ที่จัดทำดัชนี ดังนั้น ในดัชนีการทำงาน ข้อมูลคอลัมน์จะไม่ถูกจัดเรียงในลักษณะปกติ โดยจะจัดเรียงค่าของคอลัมน์หลังจากใช้ฟังก์ชัน สิ่งเหล่านี้มีประโยชน์มากเมื่อใช้ฟังก์ชัน WHERE close ของคิวรีแบบใช้เลือกข้อมูล

ดัชนีคีย์ย้อนกลับเป็นประเภทดัชนีที่น่าสนใจมาก ให้เราถือว่าคอลัมน์มีข้อมูลสตริงที่ไม่ซ้ำกันมากมาย เช่น 'cityA', 'cityB', 'cityC'… ฯลฯ ค่าทั้งหมดมีรูปแบบ อักขระสี่ตัวแรกเหมือนกันและส่วนถัดไปจะเปลี่ยนไป ดังนั้นเมื่อสร้างดัชนีคีย์ REVERSE ในคอลัมน์นี้ Oracle จะย้อนกลับสตริงและกู้คืนในดัชนี b-tree

ประเภทดัชนีที่กล่าวถึงข้างต้นเป็นดัชนีแบบไม่มีคลัสเตอร์ นั่นหมายถึง ข้อมูลที่จัดทำดัชนีจะถูกเก็บไว้นอกตาราง และการอ้างอิงที่เรียงลำดับไปยังตารางจะถูกเก็บไว้

ดัชนีคลัสเตอร์คืออะไร

ดัชนีคลัสเตอร์เป็นดัชนีชนิดพิเศษ มันเก็บข้อมูลตามวิธีการจัดเก็บข้อมูลตารางทางกายภาพ ดังนั้นจึงไม่มีดัชนีคลัสเตอร์จำนวนมากสำหรับตารางเดียว ตารางหนึ่งสามารถมีดัชนีคลัสเตอร์ได้เพียงรายการเดียว

ดัชนี Clustered และ Non-Clustered แตกต่างกันอย่างไร

1. ตารางสามารถมีดัชนีคลัสเตอร์ได้เพียง 1 รายการ แต่มีดัชนีที่ไม่ใช่คลัสเตอร์ได้สูงสุด 249 รายการในตารางเดียว

2. ดัชนีแบบคลัสเตอร์จะถูกสร้างขึ้นโดยอัตโนมัติเมื่อมีการสร้างคีย์หลัก แต่ดัชนีที่ไม่ใช่แบบคลัสเตอร์จะถูกสร้างขึ้นเมื่อมีการสร้างคีย์เฉพาะ

3. ลำดับตรรกะของดัชนีคลัสเตอร์ตรงกับลำดับทางกายภาพของข้อมูลตาราง แต่ในดัชนีที่ไม่ใช่คลัสเตอร์ จะไม่ตรงกัน