Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม

เทคนิคการสร้างดัชนีข้อความมีอะไรบ้าง?


มีเทคนิคการดึงข้อมูลข้อความยอดนิยมหลายแบบ เช่น ดัชนีกลับหัวและไฟล์ลายเซ็น

ดัชนีกลับหัว − ดัชนีฤvertedษีเป็นโครงสร้างดัชนีที่รักษาตารางที่จัดทำดัชนีแฮชสองตารางหรือตารางที่จัดทำดัชนี B+-tree:document_table และ term_table โดยที่ document_table ประกอบด้วยชุดของเรกคอร์ดเอกสาร แต่ละฟิลด์ประกอบด้วยสองฟิลด์:doc_id และโพสต์_list โดยที่โพสต์_list คือรายการของเมธอด (หรือคำแนะนำวิธีการ) ที่ปรากฏในเอกสาร จัดเรียงตามมาตรการที่เกี่ยวข้อง

term_table ประกอบด้วยชุดของเรกคอร์ดคำศัพท์ โดยแต่ละฟิลด์ประกอบด้วยสองฟิลด์:term_id และโพสต์_list โดยที่โพสต์_list ระบุรายการของตัวระบุเรคคอร์ดที่คำศัพท์นั้นเกิดขึ้น

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

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

ไฟล์ลายเซ็นคือไฟล์ที่บันทึกข้อมูลลายเซ็นสำหรับแต่ละเร็กคอร์ดในฐานข้อมูล แต่ละลายเซ็นมีขนาดคงที่ของ b บิตที่กำหนดเงื่อนไข การออกแบบการเข้ารหัสอย่างง่ายมีดังนี้ ลายเซ็นบันทึกแต่ละบิตเริ่มต้นที่ 0

บิตถูกตั้งค่าเป็น 1 หากคำที่กำหนดปรากฏในบันทึก ลายเซ็น S1 ตรงกับลายเซ็นอื่น S2 ถ้าแต่ละบิตถูกตั้งค่าในลายเซ็น S2 ถูกตั้งค่าเป็น S1 . ด้วย . เนื่องจากโดยทั่วไปมีคำศัพท์มากกว่าบิตที่มีอยู่ คำศัพท์หลายคำจึงสามารถจับคู่เป็นบิตที่คล้ายกันได้

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