เจาะลึก google หลักการทำงานของ search engine
Search engine คือ เว็บไซต์พิเศษที่ออกแบบมา เพื่อช่วยในการค้นหา หรือเข้าถึงข้อมูล ซึ่งถูกเก็บอยู่ในไซต์ต่างๆ วิธีการทำงานของ Search Engine ก็จะแตกต่างกันออกไป ขึ้นอยู่กับระบบของ Search Engine แต่ละตัว ที่มา : http://computer.howstuffworks.com/search-engine.htm
Search engine เปรียบเสมือนเครื่องจักรชนิดหนึ่ง ที่สามารถให้รายละเอียดหรือข้อมูลเกี่ยวกับสิ่งที่ผู้ใช้งานต้องการค้นหา ที่มา : นวรัตน์ ธนะรุ่งรักษ์ และพิรพร หมุนสนิท. กูเกิล (Google). กรุงเทพฯ: เคทีพี คอมพ์ แอนด์ คอนซัลท์, 2549.
การทำงานของ Search engine Crawler ค้นหา และสำรวจเว็บ Indexer รวบรวม และจัดเก็บข้อมูลเกี่ยวกับเว็บ Query Processor ติดต่อเพื่อเรียกดูผลลัพธ์ จากการค้นหา การทำงานของ Search engine
การทำงานของ Crawler หรือ Spider หรือ Robots สำรวจและอ่านหน้าเว็บจากโดเมนต่างๆ และหากพบ links ก็จะทำการติดตาม links ภายใน site จนครบ ซึ่งจากการทำงานในลักษณะโยงใยนี้ จึงเป็นที่มาของคำว่า spider หรือ crawler จากนั้น spider จะนำข้อมูลเว็บดังกล่าวไปเก็บไว้ในฐานข้อมูลของ Search Engine และ spider จะกลับไปตรวจสอบข้อมูลในเว็บนั้นๆ อย่างสม่ำเสมอ เช่น ทุก 1 หรือ 2 เดือน เพื่อสำรวจความเปลี่ยนแปลง
การทำงานของ Indexer
ข้อมูลที่โปรแกรม spider พบจะถูกทำสำเนาและส่งมาจัดเก็บที่รายการดรรชนี (index หรือ catalog) ตามบัญชีดรรชนีที่ (มนุษย์) กำหนดไว้ หากข้อมูลที่เว็บต้นฉบับมีการเปลี่ยนแปลงข้อมูลในสมุดดรรชนีจะเปลี่ยนแปลงด้วย
การทำงานของ Query Processor จะเป็นโปรแกรมส่วนที่ผู้ใช้อินเทอร์เน็ตติดต่อเข้าใช้บริการ จะทำหน้าที่ในการค้นคืนข้อมูลจากฐานข้อมูลของ search engine จะเริ่มต้นการทำงานเมื่อผู้ใช้ป้อนคำค้น โปรแกรมจะนำคำค้นของผู้ใช้ไปจับคู่กับดรรชนีในฐานข้อมูล แล้วทำการดึงข้อมูล (เอกสารเว็บ) ที่ตรงกับคำค้นออกมา จัดลำดับผลการค้นตามระดับความเกี่ยวข้องที่โปรแกรมประเมินได้ Search engine แต่ละตัวจะใช้ตรรกะที่แตกต่างกันไป
การ Rank result ของ Google ขึ้นกับปัจจัยหลายอย่างเช่น จำนวน links ไปเว็บเพจนั้นๆ จำนวนของ terms(ถ้อยคำ) ที่ปรากฏบนเว็บเพจ
การวิเคราะห์ Keyword Density Keyword Density คือการคำนวณหาความหนาแน่นของ keyword ที่ปรากฏในเว็บเพจหนี่งๆ เพื่อใช้ในการ Rank search result ของ search engine สูตรการคำนวณคือ จำนวนครั้งที่ keyword นั้นปรากฏ / จำนวนคำทั้งหมด ตัวอย่าง keyword = “Thailand” content = “Thailand is the best land” keyword density = 1/4 = 25% (Keyword Density Index: KDI)
การสร้างเว็บเพจเพื่อให้สืบค้นได้อย่างมีประสิทธิภาพ สิ่งที่มนุษย์เห็นจากเว็บเพจ
<title>Information Technology</title>
การสร้างเว็บเพจเพื่อให้สืบค้นได้อย่างมีประสิทธิภาพ (ต่อ) การใส่ HTML tag : Meta tag Meta tags จะใช้เพื่ออธิบายเว็บไซต์ หรือเว็บเพจแต่ละหน้าว่ามีเนื้อหาเกี่ยวข้องกับเรื่องอะไร Meta tag จะปรากฏอยู่ส่วนของ header ในเอกสาร html Meta tag มีอยู่หลายชนิด แต่ที่สำคัญมีอยู่ 3 ชนิดคือ keywords, description และ title
การสร้างเว็บเพจเพื่อให้สืบค้นได้อย่างมีประสิทธิภาพ (ต่อ) ตัวอย่าง <HEAD> <TITLE>My site</TITLE> <META name="description" content="Everything you wanted to know about the universe."> <META name="keywords" content="planets, stars, moons, solar system, comets"> </HEAD>
ตัวอย่างการสร้างเกณฑ์ในการกำหนดค่าน้ำหนักให้กับคำดรรชนีของ Search engine อาจจัดลำดับ ดังนี้ (Bradley, 2002) 1. จะให้ค่าน้ำหนักความเกี่ยวข้องกับคำค้นมากที่สุด (ตามที่มนุษย์ได้ตั้งค่าโปรแกรมไว้) 2. คำ หรือวลี ที่ปรากฏใน Meta tag elements (เป็นส่วนหนึ่งของการเขียนเอกสาร html) 3. คำ หรือวลี ที่ปรากฏใน Title tag (ปรากฏที่บรรทัดแรกของ Title bar) 4. คำ หรือวลี ที่ปรากฏใน Main heading และ Sub heading (ข้อความที่เป็นขนาดใหญ่ ขนาดรอง ในแต่ละ Web page) 5. จำนวนครั้งที่ คำ หรือวลี ปรากฏในส่วนเนื้อหาของเอกสาร 6. ความถี่ที่เว็บอื่นๆ เชื่อมโยงเข้ามา (มีการตรวจสอบโดยใช้โปรแกรม)
ปัจจัยที่ช่วยเพิ่มประสิทธิภาพ ในการค้นหาด้วย Google 1. การเลือกใช้คำในการค้นหา ไม่คำนึงถึงรูปแบบของตัวอักษร โดยถือว่าทุกตัวอักษรเป็นตัวพิมพ์เล็ก เช่น FedEx หรือ fedex หรือ FeDex ให้ผลลัพธ์เหมือนกัน
ไม่ควรใช้คำที่ค้นหาเกิน 32 คำ การใช้เครื่องหมายคำพูด “…” เพื่อรวมคำ เช่น ชื่อ นามสกุล “ปริศนา มัชฌิมา” มิฉะนั้น google จะมองว่าเป็นคำที่แยกกัน ไม่ควรใช้คำ Stop Words
คำ Stop Words คือ คำที่มีความหมายกว้าง คำเชื่อม คำกริยาวิเศษณ์ คำนำหน้า เครื่องหมายต่างๆ หรือเป็นส่วนหนึ่งของคำพูด
การเลือกใช้ข้อมูลชนิดบูลีน (Boolean) เพื่อค้นหาข้อมูล ข้อมูลชนิดบูลีน (Boolean) เป็นข้อมูลพื้นฐานทางคณิตศาสตร์ที่เกี่ยวข้องกับตรรกศาสตร์ และพีชคณิต ประกอบด้วย AND, OR และ NOT
ตัวดำเนินการอื่นๆ ที่ใช้ใน Google นอกจาก AND และ OR + คือ การรวมทั้งหมด - คือ การยกเว้นหรือไม่ต้องการ (NOT) * คือ การแทนที่คำ คือ การหาคำที่คล้ายกัน (Similarity sign)
การค้นหาด้วยตัวดำเนินการ (+) แตกต่างจาก การค้นหาด้วยตัวดำเนินการ (“ ”) โดยผลลัพธ์ที่ได้จากตัวดำเนินการ (+) สามารถปรากฏคำที่ค้นหาลสับกันได้ แต่ผลลัพธ์ที่ได้จากตัวดำเนินการ (“ ”) จะต้องเป็นประโยคเรียงตามลำดับคำที่ได้กำหนดไว้
เช่น Thailand -tourism ตัวดำเนินการ (-) ใช้เมื่อไม่ต้องการให้หน้าเว็บที่มีคำนี้ปรากฏอยู่ในผลการค้นหา เช่น Thailand -tourism แก้ไข slide หน้านี้ด้วย
เช่น ถ้าค้นด้วยคำว่า thailand คำเดียว จะมีข้อมูลที่เกี่ยวกับ Tourism ปรากฏขึ้นมาด้วย
ตัวดำเนินการ (*) ใช้แทนกลุ่มคำหรือประโยคที่ผู้ใช้งาน ไม่แน่ใจเรื่องการใช้คำ หรือไม่แน่ใจว่า สะกดคำนั้นอย่างไร โดยเขียนให้อยู่ในเครื่องหมาย “ ” เช่น ค้นหาคำว่า “กระทรวง*” หมายเหตุ: สามารถใช้ * แทนที่คำในการค้นหาที่มีความซับซ้อน และอ่านยาก เช่น “นักแสดง อาร์โนลด์*” จะได้ผลลัพธ์เป็นนามสกุล “ชวาร์เซเน็กเกอร์”
ตัวดำเนินการ () ใช้แทนคำที่ใกล้เคียงกับคำที่ต้องการค้นหา ตัวดำเนินการ () ใช้แทนคำที่ใกล้เคียงกับคำที่ต้องการค้นหา (แทนคำที่เขียนต่างกัน แต่มีความหมายเหมือนหรือใกล้เคียงกัน) เช่น meat beef pork lamb เป็นต้น (ไม่นิยมใช้)
AND “ ” OR NOT หรือ -
ตัวดำเนินการ ที่ใช้ในการค้นหาข้อมูลขั้นสูง cache: แสดงเพจล่าสุดที่ Google จัดเก็บ (ใช้เมื่อเพจนั้นไม่สามารถดูข้อมูลได้) related: แสดงเพจที่คล้ายกับ URL ที่กำหนด link: แสดงทุกเพจที่เชื่อมโยงไปยัง URL ที่กำหนด (มีใครอ้างเว็บนี้บ้าง)
info: แสดงข้อมูลของ URL ที่กำหนด ผลลัพธ์จะประกอบด้วย แสดงหน้าเว็บที่ Google เก็บไว้ (cache:) ค้นหาหน้าเว็บที่คล้ายคลึงกัน (related:) ค้นหาหน้าเว็บที่ link ไป (link:) หาเว็บเพจจากไซต์ ค้นหาหน้าเว็บที่มีคำค้น
filetype: จำกัดผลลัพธ์ของเพจที่มีชนิดของไฟล์ที่กำหนด ext: จำกัดผลลัพธ์ของเพจที่มีชนิดของไฟล์ที่กำหนด (เหมือน filetype:) ทำหน้าที่เหมือนกับตัวกรอง “ชนิดของไฟล์” ในเพจ “การค้นหาโดยมีตัวเลือก” เพื่อจำกัดผลลัพธ์ของเพจที่มีชนิดของไฟล์ที่กำหนด
Search engine filetype:pdf ตัวอย่าง: Search engine filetype:pdf
allintext: แสดงเพจที่มีคำค้นหาทั้งหมดที่ปรากฏอยู่ในเนื้อหาของเพจ allintext: หุ่นยนต์ เอไอ
allintitle: แสดงเพจที่มีคำค้นหาทั้งหมดที่ปรากฏอยู่ในชื่อเรื่อง (Title) ต่างกันที่ intitle: ค้นหาหนึ่งคำจากกลุ่มคำที่กำหนดทั้งหมด แต่ allintitle: ค้นหากลุ่มคำที่กำหนดทั้งหมด
allinurl: แสดงเพจที่มีคำค้นหาที่ปรากฏอยู่ใน URL allinurl:crazy eights