استراتژی های خزش
۳-۱ مقدمه
همگام با رشد چشمگیر کاربران اینترنت و ماهیت پویای وب، دقت در ارائه نتایج جستجو چیزیست که کاربران همواره از موتورهای جستجوگر انتظار دارند. هر چه این نتایج دقیق تر و مرتبط تر باشد، موتور جستجو محبـوب تر خواهـد بود و کاربران بیشتری بدان مراجعه خواهنـد نمود بنابراین همـواره باید مرتبط ترین و بروزترین اطلاعات در اختیار کاربران قرار گیرد[۴۷].
یک موتور جستجوگر در قدم اول و قبل از آنکه بخواهد نتایجی را به کاربر نمایش دهد باید اطلاعات را جمع آوری و طبقه بندی نماید. بنابراین موتورهای جستجو باید تا حد امکان وب سایت ها را مرور و آدرس صفحات را با چکیده ای از محتویات صفحه ذخیره و طبقه بندی کنند. این وظیفه بسیار سنگین است و توسط خزندگان وب انجام می شود. این برنامه ها به صورت خودکار در وب می گردند و محتویات صفحات وب سایت ها را برای تحلیل بعدی ذخیره می کنند[۴۳]. از آن جا که تعداد صفحات و حجم آن ها بسیار بالاست از این رو این کار در مقیاس بسیار بزرگی انجام می شود و به زمان و پهنای باند بالایی نیاز دارد[۴۶].
خزنده وب برنامه ای اسـت که صفحات وب را از وب بازیابی و ذخیـره می نماید. خـزنده وب با قـرار دادن مجمـوعـه ی اولیه ی آدرس ها در صـف نقطه شروع[۹۱] آغاز می شـود و آدرس را از صـف نقطـه ی شـروع بدسـت آورده، صفحـه وب را دانلود، تمـام آدرس های موجـود در صفحه دانلـود شـده را استخـراج نمـوده، آدرس های جدید را در صف نقطه شروع قـرار می دهد و آدرس بعـدی را از این صـف بدسـت می آورد. خـزنده وب فرآینـد خـزش را تا زمانـی که تصمیم توقـف گرفته نشود تکـرار می کنـد.
خزنده وب اغلب باید در دوره زمانی کوتاه هزاران میلیون صفحه را دانلود نموده و به طور مداوم بر صفحات نظارت و آنها را بروز نماید. علاوه بر این، خزنده نباید بار شدیدی بر روی وب سایت های بازدید شده قرار دهد[۴۹].
۳-۲ معماری خزنده های وب
اکثر خزنده های وب دارای پنج بخش عمده ی زیر می باشند[۱ و ۲۱]:
-
- ماژول تصمیم گیر [۹۲]DNS
-
- ماژول واکشی[۹۳]
-
- واحد کنترل[۹۴]
-
- واحد تجزیه[۹۵]
-
- واحد کار[۹۶]
Parsing Unit
Data Base
Workload Unit
Indexing
Link Extracting
Controller
Fetcher
WWW
DNS
شکل ۳-۱ معماری خزنده وب ]۲۱ [
ماژول تصمیـم گیر DNS آدرس های [۹۷]IP را برای نام دامنـه جستجو می کند. در واقـع این ماژول تعیین می کند که سرویس دهنده ی وب صفحه ی مشخص شده توسط آدرس را از کجا واکشی نماید.
گردآورنده تحت نظارت واحد کنترل، به صفحات هسته[۹۸] رفته و اسناد و مدارک را به واحد تجزیه لینکها می فرستد. این ماژول از پروتکل [۹۹]HTTP برای بازیابی صفحات استفاده می کند.
واحد تجزیه لینک، مجموعه ای از لینک ها را از صفحات واکشی شده استخراج می کند. پس از جداسازی، لینک های مناسب به واحد کار ارسال شده و در فهرست دستور کار بعدی واحد واکشی قرار می گیرد. واحد تجزیه در واقع از دو بخش جداسازی لینک ها و نمایه سازی تشکیل شده است. آنچه نهایتًا در پایگاه ذخیره می شود در واقع حاصل فرایند نمایه ساز است]۱ و۲[.
با توجه به معماری خزنده وب می توان یک الگوریتم پایه مطابق شکل ۳-۱ برای خزنده وب در نظر گرفت[۳۹]:
{
Pick up the next URL
Connect the server
Get the URL
When the page arrives, gets its links ( optionally do stuff)
Repeat
}
شکل ۳-۲ الگوریتم پایه خزنده وب
۳-۳ انتخاب صفحه
طراحی یک خزنده خوب چالش های بسیاری را به دلیل اینکه وب مجموعه ای بسیار حجیم است و به طور دائم باید بروز باشد، به همراه دارد. به طور مثال بر طبق مطالعات مختلف بیش از یک میلیون صفحه در دسترس در وب وجود دارد. این یعنی اینکه متوسط سایز یک صفحه وب حدود ۵ تا ۱۰ کیلوبایت است. داده های متنی میزانشان حداقل ۱۰ ترابایت است[۹]. نرخ رشد وب به صورت دراماتیک است و سـایز وب در کمـتر از دو سـال دو برابر شده است. گذشته از این صفحاتی که به تازگی ایجاد شـده اند به طور مداوم در حال بروز رسـانی می باشند. ۴۰ درصـد صفحـات وب تقـریباً یکبار در هر هفتـه بروز رسانی می شوند. ]۱۷[
خزنده باید با حجم عظیمی از داده ها سر و کار داشته مگر در مواردی که منابع محاسباتی و زمان نامحدود باشد و باید با دقت تصمیـم بگیرد که چـه یو آر اِلی دانلـود شود و با چه ترتیبی. خزنده ممکن است ظرفیت ذخیره سازی محدود داشته باشند و قادر به ایندکس گذاری و یا تجزیه و تحلیل تمام صفحات نباشد[۴۶].
اغلب خزنده ها به دو دلیل قادر به ملاقات هر صفحه ممکن نخواهد بود. دلیل اول اینکه خزنده و یا مشتری ممکن است ظرفیت ذخیره سازی محدود داشته باشند و قادر به ایندکس گذاری و یا تجزیه و تحلیل تمام صفحات نباشد[۱۷]. در حال حاضر وب دارای چندین ترابایت داده متنی می یاشد که به سرعت در حال رشد است، به همین دلیل است که اغلب مشتریان انتظار می رود که نمی خواهند و یا قادر نخواهند بود که از عهده تمام داده ها برآیند[۵۰].
دلیل دوم، زمان بر بودن بررسی تغییرات خزش می باشد بنابراین در برخی از نقاط خزنده ممکن است نیاز به بازبینی دوباره صفحاتی قبلاً بازیابی شده داشته باشد که این امری زمان بر است. این به این معنی است که ممکن است هرگز بعضی از صفحات را بدست نیاورد. در حال حاضر تخمین زده شده است که بیش از یک میلیارد صفحه در دسترس در وب وجود دارد و تعدادی از این صفحات با نرخ بسیار سریعی در حال تغییر می باشند[۵۰].
در هر صورت، برای خزنده مهم است که ابتدا صفحات “مهم” را بازدید نماید، به طوری که بخشی از وب که بازدید و به روز نگه داشته شده معنی دار است[۳۶]. در بخش های بعدی، چند تعریف مختلف و مفید از اهمیت ارائه می گردد و اولویت خزیدن توسعه می یابد به طوری که صفحات مهم احتمال بالاتری از ملاقات شدن برای اولین بار را داشته باشند.
۳-۴ اهمیت صفحه
لزوماً همه صفحات بهره مساوی را به مشتری خزنده نمی دهند. به عنوان مثال، اگر مشتری در حال ساخت یک پایگاه داده تخصصی در یک موضوع خاص باشد، پس آن صفحاتی که به آن موضوع اشاره می کنند مهم تر هستند و باید در اسرع وقت ممکن بازدید شوند[۳۹].
به طور مشـابه، یـک موتور جستجو از تعدادی یو آر اِل های وب که به یک صفحه اشاره می کنند استفاده می نماید که در اصطلاح به آن صفحه لینک[۱۰۰] می شود و نتایج جستجوی کاربر را رتبه بندی می کند. اگر خزنده نتواند تمام صفحات را ملاقات کند بنابراین بهتر است که آنها را در یک رتبه بالاتر ملاقات کند بنابراین نتایج رتبه بندی بالاتری را به کاربر نهایی ارائه می دهد.
[یکشنبه 1400-08-16] [ 03:33:00 ق.ظ ]
|