Sunday, November 19, 2006

چطور موتور جستجو کار می کند؟
براي كلاس مديريت سايت‌هاي خبري - كارشناسي ارشد ژورناليسم
هادي زجاجي عضو تیم ساپورت كلاس، زحمت تهیه اين متن را براي كلاس كشيده ولي دو عكس اين مطلب را نفرستاده كه بايد لطف كند و شنبه براي ويدبو پروژكشن آماده‌اش كند. از هادي سپاسگزارم. بحث در كلاس.
وقتی جستجویی در یک موتور جستجوگر انجام و نتایج جستجو ارایه می‌شود، كاربران در واقع نتیجه كار بخش های متفاوت موتور جستجوگر را می‌بینند. موتور جستجوگر قبلا" پایگاه داده اش را آماده كرده است و این گونه نیست كه درست در همان لحظه جستجو، تمام وب را بگردد. بسیاری از خود می پرسند كه چگونه ممکن است گوگل در كمتر از یك ثانیه تمام سایت های وب را بگردد و میلیون ها صفحه را در نتایج جستجوی خود ارایه كند؟
گوگل و هیچ موتور جستجوگر دیگری توانایی انجام این كار را ندارند. همه آنهادر زمان پاسخ گویی به جستجوهای كاربران، تنها در پایگاه داده ای كه در اختیار دارند به جستجو می پردازند و نه در وب! موتور جستجوگر به كمك بخش های متفاوت خود، اطلاعات مورد نیاز را قبلا" جمع آوری، تجزیه و تحلیل می كند، آنرا در پایگاه داده اش ذخیره می نماید و به هنگام جستجوی کاربر تنها در همین پایگاه داده می گردد. بخش های مجزای یك موتور جستجوگر عبارتند از:
Spider یا عنکبوت
Crawler یا خزنده
Indexer یا بایگانی کننده
Database یا پایگاه داده
Ranker یا سیستم رتبه بندی
الف: Spider (عنکبوت)
اسپایدر یا روبوت (Robot)، نرم افزاری است كه كار جمع آوری اطلاعات مورد نیاز یك موتور جستجوگر را بر عهده دارد. اسپایدر به صفحات مختلف سر می‌زند، محتوای آنها را می‌خواند، لینک‌ها را دنبال می کند، اطلاعات مورد نیاز را جمع آوری می كند و آنرا در اختیار سایر بخش های موتور جستجوگر قرار می‌دهد. كار یك اسپایدر، بسیار شبیه كار كاربران وب است. همانطور كه كاربران، صفحات مختلف را بازدید می كنند، اسپایدر هم درست این كار را انجام می دهد با این تفاوت كه اسپایدر كدهای HTML صفحات را می بیند اما كاربران نتیجه حاصل از كنار هم قرار گرفتن این كدها را. index.html صفحه ای است كه كاربران آنرا به صورت شكل (1) می بینند:
اما یک اسپایدر آنرا چگونه می بیند؟
برای این كه شما هم بتوانید دنیای وب را از دیدگاه یك اسپایدر ببینید، كافی است كه كدهای HTML صفحات را مشاهده کنید. برای این كار در مرورگر مورد استفاده خود، مسیر نشان داده شده در شكل (2) دنبال کنید.
آیا این دنیای متنی برای شما جذاب است؟
اسپایدر، به هنگام مشاهده صفحات، بر روی سرورها رد پا برجای می گذارد. شما اگر اجازه دسترسی به آمار دید و بازدیدهای صورت گرفته از یک سایت و اتفاقات انجام شده در آن را داشته باشید، می توانید مشخص كنید كه اسپایدر كدام یک از موتورهای جستجوگر صفحات سایت را مورد بازدید قرار داده است. یکی از فعالیتهای اصلی که در SEM انجام می شود تحلیل آمار همین دید و بازدیدها است.
اسپایدرها كاربردهای دیگری نیز دارند، به عنوان مثال عده ای از آنها به سایت های مختلف مراجعه می‌كنند و فقط به بررسی فعال بودن لینك های آنها می پردازند و یا به دنبال آدرس ایمیل (Email) می گردند.
ب: Crawler (خزنده)
كراولر، نرم افزاری است كه به عنوان یك فرمانده برای اسپایدر عمل می كند. كراولر مشخص می كند که اسپایدر كدام صفحات را مورد بازدید قرار دهد. در واقع کراولر تصمیم می گیرد كه كدام یك از لینك های صفحه‌ای كه اسپایدر در حال حاضر در آن قرار دارد، دنبال شود. ممكن است همه آنها را دنبال كند، بعضی ها را دنبال كند و یا هیچ كدام را دنبال نكند.
کراولر، ممكن است قبلا" برنامه ریزی شده باشد که آدرس های خاصی را طبق برنامه در اختیار اسپایدر قرار دهد تا از آنها دیدن کند. دنبال كردن لینك های یک صفحه به این بستگی دارد كه موتور جستجوگر چه حجمی از اطلاعات یک سایت را می تواند (می خواهد) در پایگاه داده اش ذخیره كند. همچنین ممكن است اجازه دسترسی به بعضی از صفحات به موتورهای جستجوگر داده نشده باشد.
شما به عنوان دارنده سایت، همان طور كه دوست دارید موتورهای جستجوگر اطلاعات سایت شما را با خود ببرند، می توانید آنها را از بعضی صفحات سایت تان دور كنید و اجازه دسترسی به محتوای آن صفحات را به آنها ندهید. موتور جستجو اگر مودب باشد قبل از ورود به هر سایتی ابتدا قوانین دسترسی به محتوای سایت را (در صورت وجود) در فایلی خاص بررسی می کند و از حقوق دسترسی خود اطلاع می یابد. تنظیم میزان دسترسی موتورهای جستجوگر به محتوای یک سایت توسط پروتكل Robots انجام می شود. به عمل کراولر، خزش (Crawling) می‌گویند.

Apture