» مقالات تجارت الکترونیک » مقالات وب سایت » موتور جستجو چگونه کار می کند؟

موتور جستجو چگونه کار می کند؟

موتور جستجو چگونه کار می کند؟

3123  تعداد بازدید  |  چهارشنبه 20 مرداد ماه 1389

بخشی از مطالب این مقاله از مقاله 10 اشتباه برتر طراحی وب نوشته دکتر جاکوب نیسلون گرفته شده است.

 

طراحی وب سایت

نوشته دکتر جاکوب نیسلون گرفته شده است.

 

وقتی جستجویی در یک موتور جستجوگر انجام و نتایج جستجو ارایه می شود، کاربران در واقع نتیجه کار بخش های متفاوت موتور جستجوگر را می بینند. موتور جستجوگرقبلا" پایگاه داده اش را آماده کرده است و این گونه نیست که درست درهمان لحظه جستجو، تمام وب را بگردد. بسیاری از خود می پرسند کهچگونه ممکن است گوگل در کمتر از یک ثانیه تمام سایت های وب را بگردد ومیلیون ها صفحه را در نتایج جستجوی خود  ارایه کند؟

گوگل و هیچ موتور جستجوگر دیگری توانایی انجام اینکار را ندارند. همه آنها در زمان پاسخ گویی به جستجوهای کاربران، تنها درپایگاه داده ای که در اختیار دارند به جستجو می پردازند و نه در وب! موتور جستجوگربه کمک بخش های متفاوت خود، اطلاعات مورد نیاز را قبلا" جمع آوری، تجزیهو تحلیل می کند، آنرا در پایگاه داده اش ذخیره می نماید و به هنگامجستجوی کاربر تنها در همین پایگاه داده  می گردد. بخش های مجزای یک موتور جستجوگر عبارتند از:

  • Spider یا عنکبوت
  • Crawler یا خزنده
  • Indexer یا بایگانی کننده
  • Database یا پایگاه داده
  • Ranker یا سیستم رتبه بندی

بخشی از مطالب این مقاله از مقاله 10 اشتباه برتر طراحی وب سایت  نوشته دکتر جاکوب نیسلون گرفته شده است.

الف Spider- (عنکبوت)
اسپایدر یا روبوت (Robot)، نرم افزاری است که کار جمع آوری اطلاعات مورد نیاز یک موتور جستجوگررا بر عهده دارد. اسپایدر به صفحات مختلف سر می زند، محتوای آنها را میخواند، لینکها را دنبال می کند، اطلاعات مورد نیاز را جمع آوری می کند وآنرا در اختیار سایر بخش های موتور جستجوگر قرار   می دهد. کار یکاسپایدر، بسیار شبیه کار کاربران وب است. همانطور که کاربران، صفحاتمختلف را بازدید می کنند، اسپایدر هم درست این کار را انجام می دهد بااین تفاوت که اسپایدر کدهای HTML صفحات را می بیند اما کاربران نتیجه حاصلاز کنار هم قرار گرفتن این کدها را. index.html صفحه ای است که کاربرانآنرا به صورت شکل (1) می بینند

 

شکل 1- نمونه ای از صفحات وب که توسط مرورگرها نشان داده می شود.

اما یک اسپایدر آنرا چگونه می بیند؟
برای این که شما هم بتوانید دنیای وب را از دیدگاه یکاسپایدر ببینید، کافی است که کدهای HTML صفحات را مشاهده کنید. برای اینکار در مرورگر مورد استفاده خود، مسیر نشان داده شده در شکل (2) دنبالکنید

شکل 2- روش مشاهده کدهای HTML یک صفحه وب

با انجام این کار فایل متنی شکل (3)  به شما نشان داده می شود

شکل 3- کدهای HTML سازنده یک صفحه وب

آیا این دنیای متنی برای شما جذاب است؟ 

اسپایدر، به هنگام مشاهده صفحات، بر روی سرورها رد پا برجایمی گذارد. شما اگر اجازه دسترسی به آمار دید و بازدیدهای صورت گرفته ازیک سایت و اتفاقات انجام شده در آن را داشته باشید، می توانید مشخص کنیدکه اسپایدر کدام یک از موتورهای جستجوگر صفحات سایت را مورد بازدید قرارداده است. یکی از فعالیتهای اصلی که در SEM انجام می شود تحلیل آمار همیندید و بازدیدها است. 

اسپایدرها کاربردهای دیگری نیز دارند، به عنوان مثال عده ایاز آنها به سایت های مختلف مراجعه می کنند و فقط به بررسی فعال بودنلینک های آنها می پردازند و یا به دنبال آدرس ایمیل (Email) می گردند.

ب- Crawler (خزنده)
کراولر، نرم افزاری است که به عنوان یک فرمانده برایاسپایدر عمل می کند. آن مشخص می کند که اسپایدر کدام صفحات را موردبازدید قرار دهد. در واقع کراولر تصمیم  می گیرد که کدام یک از لینک هایصفحه ای که اسپایدر در حال حاضر در آن قرار دارد، دنبال شود. ممکن استهمه آنها را دنبال کند، بعضی ها را دنبال کند و یا هیچ کدام را دنبالنکند.

کراولر، ممکن است قبلا" برنامه ریزی شده باشد که آدرس هایخاصی را طبق برنامه، در اختیار اسپایدر قرار دهد تا از آنها دیدن کند.دنبال کردن لینک های یک صفحه به این بستگی دارد که موتور جستجوگرچه حجمی از اطلاعات یک سایت را می تواند (می خواهد) در پایگاه داده اشذخیره کند. همچنین ممکن است اجازه دسترسی به بعضی از صفحات به موتورهایجستجوگر داده نشده باشد.

شما به عنوان دارنده سایت، همان طور که دوست دارید موتورهایجستجوگر اطلاعات سایت شما را با خود ببرند، می توانید آنها را از بعضیصفحات سایت تان دور کنید و اجازه دسترسی به محتوای آن صفحات را به آنهاندهید. موتور جستجو اگر مودب باشد قبل از ورود به هر سایتی ابتداقوانین دسترسی به محتوای سایت را (در صورت وجود) در فایلی خاص بررسی میکند و از حقوق دسترسی خود اطلاع می یابد. تنظیم میزان دسترسی موتورهایجستجوگر به محتوای یک سایت توسط پروتکل Robots انجام می شود. به عملکراولر ، خزش (Crawling) می گویند.

ج- Indexer (بایگانی کننده)
تمام اطلاعات جمع آوری شده توسط اسپایدر در اختیار ایندکسرقرار می گیرد. در این بخش اطلاعات ارسالی مورد تجزیه و تحلیل قرار میگیرند و به بخش های متفاوتی تقسیم می شوند. تجزیه و تحلیل بدین معنی استکه مشخص می شود اطلاعات از کدام صفحه ارسال شده است، چه حجمی دارد، کلماتموجود در آن کدامند، کلمات چندبار تکرار شده اند، کلمات در کجای صفحه قراردارند و ... .

در حقیقت ایندکسر، صفحه را به پارامترهای آن خرد می کند وتمام این پارامترها را به یک مقیاس عددی تبدیل می کند تا سیستم رتبه بندیبتواند پارامترهای صفحات مختلف را با هم مقایسه کند. در زمان تجزیه وتحلیل اطلاعات، ایندکسر برای کاهش حجم داده ها از بعضی کلمات که بسیاررایج هستند صرفنظر می کند. کلماتی نظیر a ، an ، the  ، www ، is و ... .از این گونه کلمات هستند.

د - DataBase (پایگاه داده)
تمام داده های تجزیه و تحلیل شده در ایندکسر، بهپایگاه داده ارسال می گردد. در این بخش داده ها گروه بندی، کدگذاری وذخیره می شود. همچنین داده ها قبل از آنکه ذخیره شوند، طبق تکنیکهای خاصیفشرده می شوند تا حجم کمی از پایگاه داده را اشغال کنند. یک موتور جستجوگرباید پایگاده داده عظیمی داشته باشد و به طور مداوم حجم محتوای آنراگسترش دهد و البته اطلاعات قدیمی را هم به روز رسانی نماید. بزرگی و بهروز بودن پایگاه داده یک موتور جستجوگر برای آن امتیاز محسوب میگردد. یکی از تفاوتهای اصلی موتورهای جستجوگر در حجم پایگاه داده آنها وهمچنین روش ذخیره سازی داده ها در پایگاه داده است.

و- Ranker (سیستم رتبه بندی)
بعد از آنکه تمام مراحل قبل انجام شد، موتور جستجوگرآماده پاسخ گویی به سوالات کاربران است. کاربران چند کلمه را در جعبهجستجوی (Search Box) آن وارد می کنند و سپس با فشردن Enter منتظر پــاسخمی مانند. برای پاسخگویی به درخواست کاربر، ابتدا تمام صفحات موجود درپایگاه داده که به موضوع جستجو شده، مرتبط هستند، مشخص می شوند. پس از آنسیستم رتبه بندی وارد عمل شده، آنها را از بیشترین ارتباط تا کمترینارتباط مرتب می کند و به عنوان نتایج جستجو به کاربر نمایش می دهد.

حتی اگر موتور جستجوگر بهترین و کامل ترین پایگاه داده را داشته باشد اما نتواند پاسخ های مرتبطی را ارایه کند، یک موتور جستجوگر ضعیف خواهد بود. در حقیقت سیستم رتبه بندی قلب تپنده یک موتور جستجوگراست و تفاوت اصلی موتورهای جستجوگر در این بخش قرار دارد. سیستم رتبهبندی برای پاسخ گویی به سوالات کاربران، پارامترهای بسیاری را در نظر میگیرد تا بتواند بهترین پاسخ ها را در اختیار آنها قرار دارد.

حرفه ای های دنیای SEM به طور خلاصه از آن به Algo ( الگوریتم) یاد می کنند. الگوریتم، مجموعه ای از دستورالعمل ها است که موتور جستجوگربا اعمال آنها بر پارامترهای صفحات موجود در پایگاه داده اش، تصمیم میگیرد که صفحات مرتبط را چگونه در نتایج جستجو مرتب کند. در حال حاضرقدرتمندترین سیستم رتبه بندی را گوگل در اختیار دارد.

می توان با ادغام کردن اسپایدر با کراولر و همچنین ایندکسر با پایگاه داده، موتور جستجوگر را شامل سه بخش زیر دانست که این گونه تقسیم بندی هم درست می باشد:

  • کراولر
  • بایگانی
  • سیستم رتبه بندی

تذکر- برای سهولت در بیان مطالب بعدی هر گاه صحبت ازبایگانی کردن (شدن) به میان می آید، مقصود این است که صفحه تجزیه و تحلیلشده و به پایگاه داده موتور جستجوگر وارد می شود.

برای آنکه تصور درستی از نحوه کار یک موتور جستجوگر داشته باشید داستان نامتعارف زیر را با هم بررسی می کنیم. داستان ما یک شکارچی دارد. او تصمیم به شکار می گیرد:

-  کار کراولر:
او  قصد دارد برای شکار به منطقه حفاظت شده ابیورد، واقع در شهرستان درگز (شمالی ترین شهر خراسان بزرگ) برود.

-  پروتکل Robots :
ابتدا تمام محدودیت های موجود برای شکار در این منطقه را بررسی می کند:

  •  آیا در این منطقه می توان به شکار پرداخت؟
  • کدام حیوانات را می توان شکار کرد؟
  • حداکثر تعداد شکار چه میزانی است؟ 
  • و ... .

فرض می کنیم او مجوز شکار یک اوریال (نوعی آهو) را از شکاربانی منطقه دریافت می کند.

-  کار اسپایدر
او اوریالی رعنا را شکار می کند و سپس آنرا با خود به منزل می برد.

- کار ایندکسر
شکار را تکه تکه کرده، گوشت، استخوان، دل و قلوه، کله پاچهو ... آنرا بسته بندی می کند و بخش های زاید شکار را دور می ریزد.

-  کار پایگاه داده
بسته های حاصل را درون فریزر قرار داده، ذخیره می کند. 

- کار سیستم رتبه بندی
مهمانان سراغ او می آیند و همسرش بسته به ذائقه مهمانانبرای آنها  غذا طبخ می کند. ممکن است عده ای کله پاچه، عده ای آبگوشت،عده ای ... دوست داشته باشند. پخت غذا طبق سلیقه مهمانان کار سختی است.ممکن است همه آنها آبگوشت بخواهند اما آنها مسلما" بامزه ترین آبگوشت را میخواهند!

نکته ها:

  • شکارچی می توانست برای شکار کبک یا اوریال و یا هر دو به آن منطقه برود همانطور که موتور جستجوگر می تواند از سرور سایت شما انواع فایل (عکس، فایل متنی، فایل اجرایی و ...) درخواست کند.
  • شکارچی می تواند شب به شکار برود یا روز. موتور جستجوگر هم ممکن است شب به سایت شما مراجعه کند یا روز. بنابراین همواره مطمئن باشید که سایت شما آپ است و موتور جستجوگر می تواند در آن به شکار فایلها بپردازد.
  • غذای خوشمزه را می توانید با نتایج جستجوی دقیق و مرتبط مقایسه کنید. اگر شکارچی بهترین شکار را با خود به منزل ببرد اما غذایی خوشمزه و مطابق سلیقه مهمانان طبخ نگردد، تمام زحمات هدر رفته است.
  • به عنوان آخرین نکته این بخش یاد آوری می کنم که به شکار اوریالی رعنا آن هم در منطقه حفاظت شده ابیورد (پارک ملی تندوره) اصلا فکر نکنید. اما توصیه می شود که حتما از طبیعت بکر آن دیدن فرمایید (بدون اسلحه!).

منبع:ایران سئو