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

Web Search Engine คืออะไร?


เสิร์ชเอ็นจิ้นเว็บเป็นเซิร์ฟเวอร์คอมพิวเตอร์เฉพาะที่ค้นหาข้อมูลบนเว็บ ผลการค้นหาของข้อความค้นหาของผู้ใช้จะได้รับการกู้คืนเป็นรายการ (เรียกว่า Hit) Hit อาจรวมถึงหน้าเว็บ รูปภาพ และไฟล์ประเภทต่างๆ

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

เสิร์ชเอ็นจิ้นเว็บเป็นแอปพลิเคชั่นขุดข้อมูลขนาดใหญ่ มีการใช้เทคนิคการขุดข้อมูลหลายอย่างในองค์ประกอบทั้งหมดของเครื่องมือค้นหา ตั้งแต่การรวบรวมข้อมูล (เช่น การตัดสินใจว่าจะรวบรวมข้อมูลหน้าใดและความถี่ในการรวบรวมข้อมูล) การจัดทำดัชนี (เช่น การเลือกหน้าที่จะจัดทำดัชนี และการพิจารณาว่าดัชนีต้องอยู่ในระดับใด ถูกสร้าง) และการค้นหา (เช่น การกำหนดวิธีการจัดลำดับหน้า โฆษณาใดที่ต้องเพิ่ม และวิธีปรับแต่งผลการค้นหาหรือสร้าง “การรับรู้ตามบริบท”)

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

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

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

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