به طور کلی، یک خزنده با یک مجموعه آغازینی از urlهای s0 شروع می شود. مکان اولیه s0 در یک صف جاییکه همه ی urlهایی که قابل بازیابی هستند نگهداری و اولویت بندی می شوند. خزنده از این صف یک url می گیرد، صفحه را دانلود می کند و هر url را از صفحات دانلود شده استخراج می کند و urlهای جدید را در صف قرار می دهد. این پروسه ادامه می یابـد تا زمانیکه خـزنده تصمیـم به توقـف داشتـه باشـد. هر صفحـه ای که بازیابی می شود به مخزن داده می شود تا صفحات را ذخیره کند. سپس یک شاخص برای صفحات ایجاد و یا مفاهیم صفحات آنالیز می شود[۲۳].
خزنده ها امروزه به طور گسترده ای استفاده می شوند. خزنده ها برای موتورهای جستجوی بزرگ مثل گوگل، آلـتاویستـا، Excite و … برای بازدید از بخش قابل توجهی از صـفحات وب متنـی به منظـور سـاخت شاخص های محتوا تلاش می کنند. خزنده های دیگر همچنین ممکن است صفحات زیادی را مشاهده کنند اما ممکن است تنها نوع خاصی از اطلاعات را جستجو نمایند مانند آدرس ایمیل و … . در انتهای دیگر این طیف، خزنده های شخصی را داریم که صفحات موردعلاقه ی یک کاربر خاص را به منظور ساخت یک حافظه نهان در دسترس سریع پیمایش می کنند. خزنده ها صفحات مختلف را در یک آرایه ی یک بعدی نگه داری می کنند[۲۰]:
Pages = [ P1, P2, . . . , Pn ]
نمایه سازها نیز اطلاعات کلیدواژه ها را در آرایه هایی نگهداری می کنند.:
K1 = [۱, ۲, ۳, . . . ]
K2 = [……………..]
.
.
.
Km = [ ……………]
سپس با بهره گرفتن از آرایه های ایجاد شده، ماتریس هایی به وجود می آید که به وسیله ی آن ها می توان فهمید که هر کلید واژه در چه صفحه ای وجود دارد. این ماتریس سرعت پیدا کردن صفحات مورد نظر را افزایش می دهند. در شکل ۲-۷ این ماتریس نمایش داده شده است:
شکل۲-۷ ماتریس اطلاعات کلیدواژه ها[۴۷]
کنترل خزنده، مجموعه برنامه های خزنده وب را با تحویل URL مورد نظر راه اندازی کرده و به کار خزیدن می گمارد. این ماژول است که تعیین می کند صفحه بعدی که قرار است ملاقات شود کدام است. ماژول خزنـده موظف اسـت تمام آدرس ها یاURL ها را از درون صفحات استخراج و آن ها را برای تصمیـم گیری در اختیار ماژول کنترل خزنده بگذارد. تفاوت موتور های جستجوی مختلف بیشتر در الگوریتم کنترلی خزنده نمود پیدا می کند[۴۷].
مخزن یک سیستم ذخیره سازی دارای مقیاس است که مجـموعـه بـزرگی از صفحـات وب را مدیریـت می کند. مخزن باید دو عمل اساسی را انجام دهد[۱۸ و ۵۵]:
-
- مخزن باید رابطی برای کراولر ایجاد کند تا بتواند صفحات وب را ذخیره کند.
-
- مخزن باید رابطی مؤثر فراهم آورد تا نمایه ساز و واحد آنالیز مجموعه بتوانند از آن برای بازیابی صفحات استفاده کنند.
خزنده در هنگام ذخیره سازی صفحات وب ممکن است با چالش های زیر مواجه شود[۱۸]:
-
- گسترش پذیری تا بی نهایت[۴۹]
-
- پشتیبانی از دسترسی دوگانه[۵۰]
-
- بهنگام سازی عظیم و توده ای[۵۱]
-
- صفحات منسوخ[۵۲]
گشترش پذیری تا بی نهایت از حجم زیاد اسناد ناشی می شود. از آنجا که وب به سرعت تغییر می کند، مخزن به تغییرات و اصلاحات زیادی نیـاز دارد. هنگامی که نسخـه های جدید صفحات وب از خزنده دریافت می شوند، فضای اشغال شده توسط نسخه های قدیمی باید از طریق فشرده سازی فضا و سازماندهی مجدد قابل استرداد باشد. در پشتیبانی از دسترسی دوگانه منظور از دسترسی دوگانه وجود دو نوع دسترسی است: اول، دسترسی مستقیم یا تصادفی که یک صفحه خاص را تحویل کاربر می دهد، دوم، دسترسی ترتیبی به یک زیر مجموعه ای عظیم از داده ها که برای ماژول شاخص دهی نیاز است[۵۵].
بهنگام سازی باید عظیم و توده ای انجام شود. سیستم ذخیره سازی باید اجازه بدهد که هم زمان با دسترسی ماژول های دیگر به انباره صفحات عملیات بهنگام سازی نیز در جریان باشد. صفحات منسوخ و حذف شده در بهنگام سازی باید از انباره صفحات حذف شوند. در اکثر فایل ها یا سیستم های داده ای، داده ها پس از مدتی که دیگر به آنها نیازی نیست از مجموعه خارج می شوند ولی وقتی یک صفحه وب از وب سایتی حذف می شود، مخزن نمی تواند از حذفش آگاه شود. بنابراین مخزن نیاز به مکانیسمی برای کشف و خارج کردن صفحات منسوخ شده دارد[۱۸ و ۵۵].
۲-۵ استراتژی های روزآمد سازی مخزن
از آنجا که مخزن توسط خزنده ها روزآمد می شود، استراتژی روزآمدسازی مخزن بستگی به ویژگی های خزنده دارد. حداقل دو راه برای خزنده ها وجود دارد[۳۸ و ۵۵]:
۲-۵-۱ روش دسته ای یا خزنده دائمی[۵۳]
یک خزنده با روش دسته ای کار مرور را به صورت دوره ای انجام می دهد و اجازه می دهد که مرور برای یک دوره زمانی مشخص مثلاً چند روز در ماه انجام شود و سپس توقف می کند. با چنین خزنده ای، مخزن فقط برای روزهای مشخصی در ماه روزآمد می شود. اما یک خزنده دائمی بدون توقف فعالیت می کند و به طور دائمی صفحات جدید و روزآمد را برای مخزن فراهم می کند.
۲-۵-۲ جستجوهای نسبی یا کامل[۵۴]
خزنده ای با روش روزآمدسازی دسته ای ممکن است یک چرخه مرور کامل در وب را در هر زمانی که بخواهد انجام دهد یا ممکن است مرور مجدد فقط در مورد مجموعه خاصی از صفحات یا سایت ها انجام شود. در مورد اول صفحات مربوط به مرور جدید کاملاً جایگزین مجموعه صفحات قدیمی که هم اکنون در مخزن وجود دارند می شود. در مورد دوم، مجموعه جدید از طریق اضافه شدن مجموعه روزآمد شده حاصل از مرور جزئی به مجموعه موجود فراهم می آید. باید در نظر داشت که خزنده دائمی قادر به تشخیص دادن تفاوت بین مرور کامل و مرور جزئی نیست.
با توجه به دو فاکتور ذکر شده در بالا، مخزن می تواند یکی از دو روش روزآمد سازی در مکان[۵۵] یا روزآمدسازی سایه[۵۶] را برای روزآمدسازی صفحات انتخاب کند. در روزآمد سازی در مکان صفحات دریافت شده از خزنده مستقیماً در مجموعه موجود در مخزن ترکیب می شوند و ممکن است جایگزین نسخه های قدیمی تر شوند. در روزآمدسازی سایه ای صفحات جدید، مجزا از مجموعه موجـود ذخـیره می شوند و در مرحله ای جدا از صفحات موجود روزآمد می شوند[۱۸].
تمام اطلاعات جمع آورش شده توسط عنکبوت در اختیار ایندکسر قرار می گیرد. در این بخـش اطلاعـات ارسالی مورد تجزیه و تحلیل قرار می گیرند و به بخش های متفاوتی تقسیم می شوند. تجزیه و تحلیل بدین معنی است که مشخص می شود اطلاعات از کدام صفحه ارسال شده است، چه حجمی دارد، کلمـات موجـود در آن کدام است، کلمات چندبار تکرار شده است، کلمات در کجای صفحه قرار دارند و …
در حقیقت ایندکسر، صفحه را به پارامترهای آن خرد می کند و تمام این پارامترها را به یک مقیاس عددی تبدیل می کند تا سیستم رتبه بندی بتواند پارامترهای صفحات مختلف را با هم مقایسه کند. در زمان تجزیه و تحلیل اطلاعات، ایندکسر برای کاهش حجم داده ها از بعضی کلمات که بسیار رایج هستند صرف نظر می کند. کلماتی نظیرa ، an،the ، www، is و … از این گونه کلمات هستند[۴۷].
به طور کلی این ماژول کلمات موجود در صفحات را به همـراه URL آن ها در یک جـدول بسیار عظیم لیست می کند. یک خروجی ماژول شاخص دهی بانک اطلاعاتی یا شاخص ساختاری[۵۷] است . این بانک چگونگی پیوند خوردن صفحات را نشان می دهد[۵۵].
۲-۶ دو نمایه اصلی واحد نمایه ساز
-
- نمایه ساختاری یا لینکی [۵۸]
-
- نمایه متنی یا محتوایی [۵۹]
واحد آنالیز مجموعه با بهره گرفتن از این دو نمایه و صفحات موجود در مخزن، تنوعی از نمایه های دیگر را می سازد. برای ساختن یک نمایه ساختاری، بخش مرور شده وب توسط خزنده، به صورت یک نمودار دارای گره و خط مدل یافته می شود. هر گره در نمودار یک صفحه وب است و هر خط مستقیم از گره A به گره B نشان دهنده یک لینک فرا متنی از صفحه A به صفحه B است. یکی از کاربردهای این نمودار، یافتن صفحات مرتبط با یک صفحه است.
اگر چه تکنیک های مبتی بر لینک برای افزایش کیفیت و ارتباط نتایج جستجو استفاده شده است، ولی بازیابی مبتنی بر متن مثلاً جستجو برای صفحاتی که شامل برخی کلیدواژه ها هستند، همچنان به عنوان روش اولیه برای تشخیص صفحات مرتبط با سؤال استفاده می شـود. نمایه ها برای بازیابی مبتنی بر متن می توانند از روش هـای سنتی که بر اساس تطابق بین کلید واژه های سؤال و کلید واژه های متن است برای بازیـابی مـدارک متنی استفاده کنند[۴۸].
تعـداد و نوع نمـایه هـایی که به وسیـله واحـد آنالیز مجموعه ساخـته می شـود بستـگی به رابـط موتـور جستجو و نوع اطلاعاتی که به وسیله واحد رتبه بندی استفاده شده است دارد مثلاً رابط موتوری که اجازه می دهد صفحات به یک سایت یا حوزه خاص محدود شوند باید از یک نمایه سایتی که نام هر حوزه را به لیستی از صفحات متعلق به آن حوزه مرتبط می کند استفاده کند.
ساختار نمایه، اندازه و حجم آن در موتورهای جستجوی مختلف، متفاوت است به همین دلیل جستجو با کلید واژه های یکسان نتایج نسبتاً متفاوتی در موتورهای گوناگون در پی خواهد داشت. یکی از مشکلات عمده موتورهای جستجو، اتکای زیاد آنها به نمایه سازی اطلاعات متنی است. این موتورها معمولاً برای نمایه سازی منابع متنی و به ویژه منابع ابرمتن طراحی شده اند. این در حالی است که بسیاری از منابـع موجـود در شبـکه به قالب های دیگر و معمولاً غیـرمتنی مثـل تصـویر یا منـابع دیـداری- شنیداری هستند و برای موتورهای کاوش امکان نمایه سازی بهینه این منابع به راحتی فراهم نیست[۴۸].
فرم در حال بارگذاری ...