Extendible hashing คืออะไร ?
Extendible hashing หมายถึง เเนวคิดที่ช่วยแบ่งเบาภาระของการ rehashing ในส่วนหนึ่ง แต่เหตุผลหลักของ Extendible hashing คือขนาดของตารางเมื่อนำมาเปรียบเทียบเข้ากับหน่วยความจำที่มี หากขนาดของตารางใหญ่เกินกว่าที่จะบรรจุค่าลงในหน่วยความจำปฐมภูมิ หรือเกิดการชนกันบ่อยมาก ๆ ทำให้ต้อง access ดิกส์หลายครั้งกว่าจะได้ข้อมูลที่ต้องการ ซึ่งต้องให้เวลามาก
แนวคิดของ Extendible hashing จะอาศัยหลักการสร้าง directory ที่ชี้ไปยังกลุ่มของข้อมูลชนิดเดียวกัน เพื่อลดปริมาณ Disk Access ให้น้อยลง โดยข้อมูลในกลุ่มมีว่วนที่คล้ายกันคือ สองบิทแรกเหมือนกัน ดังนั้นในการสื่อค้น้อมูล จะเริ่มโดยพิจารณาสองบิทเเรกก่อน เพื่อทำการดึงเฉพาะตารางที่เกี่ยวข้องมาค้นหาเท่านั้น ไม่จำเป็นต้อง Probe ทั้งหมด
โครงสร้างของ Extendible hashing จะใช้ B-Tree ที่มี Root Node ทำหน้าที่เป็นดัชนีที่มีขนาด (Order) 2D โดยที่ D เป็นจำนวนบิทของดัชนีที่ใช้ในการจำแนก
ข้อเด่นของ Extendible hashing คือ
- การขยายตาราง สามารถทำในเฉพาะกลุ่มข้อมูลที่ต้องการเท่านั้น
- สามารถเเยกข้อมูลเฉพาะกลุ่ม หรือ leaf ที่สามจากซ้ายสุดเท่านั้น
จากบทความสามารถสรุปได้ดังนี้ Extendible hashing หมายถึงวิธีการแบ่งเบาภาระการทำงานของ rehashing ในส่วนหนึ่ง ซึ่งเหตุผลหลัก ๆ ของ Extendible hashing ก็คือขนาดของตารางเมื่อเทียบกับหน่วยความจำที่มี ถ้าขนาดของตารางใหญ่เกินกว่าที่จะบบรรจุลงในหน่วยความจำปฐมภูมิ หรือ เกิดจากการชนกันบ่อยมาก
ช่องทางการศึกษาเพิ่มเติมข่าวสารที่น่าสนใจเกี่ยวกับ : ความหมายคำ คืออะไร