MAHDIAR
13th December 2009, 01:48 PM
موتورها جست وجو اینترنت، سایت ها به خصوص در اینترنت است و طور طراح شده که به افراد کمک م کنند تا اطلاعات مورد نیازشان را که در سایت ها دیگر ذخیره شده است، بیابند. به طور حتم شما هم بارها، زمان که به یک مقاله ای نیاز دارید یا حت برا یافتن معن اصطلاح، پشت رایانه نشسته اید با استفاده از اینترنت آن را در مدت زمان کوتاه پیدا کرده اید، اما آیا تا به حال فکر کرده اید چگونه در عرض چند ثانیه توسط یک موتور جست و جو انبوه از اطلاعات در اختیار شما قرار م گیرد؟ صدها میلیون صفحه در اینترنت در دسترس است و اطلاعات را با تنوع شگفت انگیز از موضوعات در اختیار کاربر ارائه می دهند. زمان که شما م خواهید درباره یک موضوع خاص اطلاعات کسب کنید، چگونه م دانید که چه صفحات را باید بخوانید؟
● شیوه عملکرد موتورها جست وجو
تفاوت های در شیوه عملکرد موتورها جست وجو مختلف وجود دارد، اما همه آن ها ۳ وظیفه اصل را انجام م دهند:
۱) در اینترنت، یا بخش ها برگزیده ا از اینترنت، براساس کلمات مهم جست وجو را انجام م دهند.
۲) یک فهرست از کلمات و مکان هایی که پیداکرده اند تهیه م کنند.
۳) این امکان را برا کاربران فراهم م کنند تا کلمات یا مجموعه ا از کلمات مورد نظر خود را که در فهرست یافت م شود جست وجو کنند.
● موتورها جست وجو اولیه
موتورها جست وجو اولیه یک فهرست شامل تنها چند صدهزار صفحه و فایل نگهدار م کردند و در روز شاید یک یا ۲هزار بازدیدکننده داشتند. امروزه یک موتور جست وجو خوب، صدها میلیون صفحه را فهرست م کند و در روز پاسخگو ده ها میلیون جست و جو کننده است. حالا باید ببینیم چگونه این مسئولیت مهم انجام م شود و چگونه موتورها جست وجو اینترنت، بخش ها مختلف را به کار م گیرند تا ما بتوانیم اطلاعات مورد نیاز خود را در اینترنت بیابیم. در جست وجو میان صدها میلیون صفحه قبل از این که یک موتور جست وجوگر بتواند به شما بگوید که یک فایل در کجا قرار دارد، باید آن فایل پیدا شود.
● روبات عنکبوتی
یک موتور جست وجوگر برا یافتن اطلاعات از میان صدها میلیون صفحه که در شبکه اینترنت وجود دارد، روبات نرم افزار خاص به نام اسپایدر(عنکبوت) را به کار م گیرد تا فهرستی از کلمات را که در سایت ها اینترنت یافت م شود ایجاد کند. فرآیند که یک اسپایدر فهرست خود را ایجاد م کند، Web crawling نامیده م شود. برا ایجاد و نگهدار یک فهرست مفید و مناسب از کلمات، یک اسپایدر موتور جست وجوگر باید صفحات بسیار زیاد را بررس کند. حال سوالی که این جا پیش می آید این است که چگونه هر اسپایدر مسیر خود را در اینترنت آغاز م کند؟ در پاسخ باید گفت که به طور معمول نقطه شروع، فهرستی از صفحات است که توسط سرورها زیاد استفاده م شود و هم چنین صفحات که معروف تر است.
● طرز عملکرد
اسپایدر از یک سایت عموم شروع می شود و کلمات موجود در صفحات آن را فهرست می کند و هر لینک را که در آن سایت یافت م شود دنبال م کند. به این طریق سیستم جست وجوگر به سرعت شروع به حرکت م کند و در بخش های که بیشتر از همه مورد استفاده قرار م گیرد، حرکت م کند.برای نمونه گوگل به عنوان یک موتور جست و جوگر علم آغاز به کار کرد. سرج برین و لورنس پیج از مدیران گوگل بیان کردند که اسپایدرها سیستم آن ها با چه سرعت م تواند کار کند. آن ها سیستم اولیه خود را به گونه ا ساختند که از چندین اسپایدر استفاده کند، که به طور معمول ۳ تا در یک زمان بود.در گوگل هر اسپایدر م توانست به حدود ۳۰۰ صفحه شبکه که در یک زمان باز بود اتصال برقرار کند. در بهترین عملکرد خود، با استفاده از ۴ اسپایدر، این سیستم م توانست در هر ثانیه به ۱۰۰ صفحه متصل باشد. زمان که اسپایدر گوگل یک صفحه HTML را مشاهده م کرد، به ۲ نکته توجه م کرد: کلمات درون صفحه، که در کدام مکان کلمات پیدا شده است و کلمات که در عنوان اصل یا عناوین فرع و یا سایر موقعیت های که دارا اهمیت نسب است، قرار دارد که برا جست وجو بعد کاربر مورد توجه خاص قرار م گرفت.اسپایدر گوگل هر کلمه معن دار در صفحه را فهرست و از کلماتthe ، an و a صرف نظر م کرد. دیگر اسپایدرها از روش ها متفاوت استفاده م کردند. در کل تمام این روش ها سع م کند تا عملکرد اسپایدر را سریع تر کند و به کاربران اجازه بدهد تا با کارای بهتر جست وجو کنند.به عنوان مثال، بعض اسپایدرها کلمات را که در عنوان ها، عنوان ها فرع و لینک ها وجود دارد یا کلمات که بارها در صفحه تکرار م شود فهرست م کنند؛ سایت Lycos از این روش استفاده م کند. سایر سیستم ها، از قبیل AltaVista، هر کلمه در صفحه، شامل the ، an و a و سایر کلمات را که ب اهمیت است هم فهرست م کنند.
● ایجاد فهرست
زمان که اسپایدرها وظیفه یافتن اطلاعات از صفحات اینترنت را به اتمام رساندند موتور جست و جو باید این اطلاعات را به شکل که مفید است، ذخیره کند (البته باید در نظر داشت که این وظیفه هرگز تمام نم شود، خاصیت تغییر دائم اینترنت به این معن است که اسپایدرها همیشه در حال حرکت و جست وجو هستند). ۲ مولفه کلید برا در دسترس قرار دادن اطلاعات جمع آور شده برا کاربران وجود دارد: اطلاعات ذخیره شده با داده ها و روش که توسط آن اطلاعات فهرست م شود. در آسان ترین حالت، موتور جست و جوگر م تواند تنها کلمه و URL را ذخیره کند. در حقیقت، این روش برا موتور با کاربرد محدود است، زیرا در این حالت راه وجود ندارد برا این که تعیین کند آیا کلمه در بخش مهم یا بخش ب اهمیت از صفحه استفاده شده است، آیا کلمه تنها یک بار یا چندین مرتبه تکرار شده است یا صفحه لینک های به صفحات دیگر دارد که شامل آن کلمه است. به عبارت دیگر راه برا ایجاد فهرستی رتبه بند شده که تلاش م کند تا مفیدترین و بهترین صفحات را در بالا فهرست نتایج جست وجو قرار بدهد، وجود ندارد.
● حرکت به سوی کارایی بهتر
برا به دست آوردن نتایج بهتر، بیشتر موتورها جست وجو اطلاعات بیشتر علاوه بر کلمه و URL ذخیره م کنند. موتور ممکن است تعداد دفعات را که کلمه در صفحه تکرار شده است ذخیره کند، یا ممکن است مقدار را به هر ورود اختصاص بدهد و زمان که کلمات در عناوین، عنوان ها فرع و لینک ها ظاهر م شود ارزش اختصاص یافته به آن ها بیشتر م شود. هر موتور جست وجوگر تجار، فرمول متفاوت برا ارزش گذار کلمات فهرست خود دارد. این مسئله یک از دلایل است که موجب م شود جست وجو یک کلمه در موتورها جست وجوگر متفاوت، فهرست ها متفاوت را ارائه بدهد و صفحات با ترتیب ها متفاوت ارائه شود. داده ها برا صرفه جوی در فضا ذخیره ساز رمزگذار م شود. به عنوان مثال در صفحه گوگل اطلاعات از قبیل این که آیا کلمه با حروف بزرگ بوده است، اندازه فونت آن، موقعیت کلمه و سایر اطلاعات که به رتبه بند آن کمک م کند به صورت بیت و بایت ذخیره م کند، در نتیجه میزان بسیار زیاد از داده ها م تواند به شکل بسیار فشرده ا ذخیره شود. بعد از این که اطلاعات فشرده شد، برا فهرست شدن آماده است. هدف از ایجاد یک فهرست این است که باعث شود تا بتوانیم اطلاعات را با سریع ترین حالت ممکن پیدا کنیم.
● ایجاد فهرست وب سایت ها
به طور کلی، تنها چند راه برا ایجاد فهرست وجود دارد، اما یک از مهم ترین و موثرترین روش ها، ایجاد جدول hash است. در این روش فرمول به کار م رود تا به هر کلمه یک ارزش عدد اختصاص دهد. پرسش و جست وجو انجام شده در این روش توسط کاربر خیل ساده است، حت یک کلمه. برا پرسش ها پیچیده تر لازم است تا از عملگرها بولین (AND ORNOT NEAR) استفاده کرد تا بتوان شرایط جست وجو را گسترش داد. به طور خلاصه عملکرد یک موتور جست وجو به این صورت است: نرم افزار اسپایدر با جست وجو در سایت ها مختلف فهرستی از کلمات و مکانی که قرار دارد فراهم م کند، سپس بر اساس سیستم ارزش گذار خود فهرست رتبه بند شده تهیه، داده ها را رمزگذار و سرانجام اطلاعات را برا دسترس کاربران ذخیره م کند.در جست وجوهای که از عملگرها بولین استفاده م شود، جست وجوها لفظ است. موتور به طور دقیق همان کلمات یا عبارت را که وارد شده است جست وجو م کند. زمان که کلمات ورود دارا چندین معن است، جست وجو صحیح آن ها مشکل است. در این حالت، اگر برا شما تنها یک از معان آن کلمه مهم باشد، شما نم خواهید سایر صفحات را که شامل معان دیگر کلمه است ببینید، م توانید یک جست و جو لفظ ایجاد کنید که تا حدود معن ها ناخواسته را حذف کند، اما بهتر این بود که خود موتور جست وجو م توانست این کار را انجام بدهد. یک از حوزه ها تحقیق در موتورها جست و جوگر، جست و جو براساس مفهوم است. در یک موتور جست وجوگر مبتن بر مفهوم، اطلاعات ذخیره شده برا هر صفحه، بیشتر است. هنوز بسیار از گروه ها تلاش م کنند تا نتایج و عملکرد این نوع از موتورها جست و جو را افزایش دهند. قلمرو دیگر که پژوهش گران درباره آن تلاش م کنند، پرسش ها به زبان طبیع نامیده م شود.
● شیوه عملکرد موتورها جست وجو
تفاوت های در شیوه عملکرد موتورها جست وجو مختلف وجود دارد، اما همه آن ها ۳ وظیفه اصل را انجام م دهند:
۱) در اینترنت، یا بخش ها برگزیده ا از اینترنت، براساس کلمات مهم جست وجو را انجام م دهند.
۲) یک فهرست از کلمات و مکان هایی که پیداکرده اند تهیه م کنند.
۳) این امکان را برا کاربران فراهم م کنند تا کلمات یا مجموعه ا از کلمات مورد نظر خود را که در فهرست یافت م شود جست وجو کنند.
● موتورها جست وجو اولیه
موتورها جست وجو اولیه یک فهرست شامل تنها چند صدهزار صفحه و فایل نگهدار م کردند و در روز شاید یک یا ۲هزار بازدیدکننده داشتند. امروزه یک موتور جست وجو خوب، صدها میلیون صفحه را فهرست م کند و در روز پاسخگو ده ها میلیون جست و جو کننده است. حالا باید ببینیم چگونه این مسئولیت مهم انجام م شود و چگونه موتورها جست وجو اینترنت، بخش ها مختلف را به کار م گیرند تا ما بتوانیم اطلاعات مورد نیاز خود را در اینترنت بیابیم. در جست وجو میان صدها میلیون صفحه قبل از این که یک موتور جست وجوگر بتواند به شما بگوید که یک فایل در کجا قرار دارد، باید آن فایل پیدا شود.
● روبات عنکبوتی
یک موتور جست وجوگر برا یافتن اطلاعات از میان صدها میلیون صفحه که در شبکه اینترنت وجود دارد، روبات نرم افزار خاص به نام اسپایدر(عنکبوت) را به کار م گیرد تا فهرستی از کلمات را که در سایت ها اینترنت یافت م شود ایجاد کند. فرآیند که یک اسپایدر فهرست خود را ایجاد م کند، Web crawling نامیده م شود. برا ایجاد و نگهدار یک فهرست مفید و مناسب از کلمات، یک اسپایدر موتور جست وجوگر باید صفحات بسیار زیاد را بررس کند. حال سوالی که این جا پیش می آید این است که چگونه هر اسپایدر مسیر خود را در اینترنت آغاز م کند؟ در پاسخ باید گفت که به طور معمول نقطه شروع، فهرستی از صفحات است که توسط سرورها زیاد استفاده م شود و هم چنین صفحات که معروف تر است.
● طرز عملکرد
اسپایدر از یک سایت عموم شروع می شود و کلمات موجود در صفحات آن را فهرست می کند و هر لینک را که در آن سایت یافت م شود دنبال م کند. به این طریق سیستم جست وجوگر به سرعت شروع به حرکت م کند و در بخش های که بیشتر از همه مورد استفاده قرار م گیرد، حرکت م کند.برای نمونه گوگل به عنوان یک موتور جست و جوگر علم آغاز به کار کرد. سرج برین و لورنس پیج از مدیران گوگل بیان کردند که اسپایدرها سیستم آن ها با چه سرعت م تواند کار کند. آن ها سیستم اولیه خود را به گونه ا ساختند که از چندین اسپایدر استفاده کند، که به طور معمول ۳ تا در یک زمان بود.در گوگل هر اسپایدر م توانست به حدود ۳۰۰ صفحه شبکه که در یک زمان باز بود اتصال برقرار کند. در بهترین عملکرد خود، با استفاده از ۴ اسپایدر، این سیستم م توانست در هر ثانیه به ۱۰۰ صفحه متصل باشد. زمان که اسپایدر گوگل یک صفحه HTML را مشاهده م کرد، به ۲ نکته توجه م کرد: کلمات درون صفحه، که در کدام مکان کلمات پیدا شده است و کلمات که در عنوان اصل یا عناوین فرع و یا سایر موقعیت های که دارا اهمیت نسب است، قرار دارد که برا جست وجو بعد کاربر مورد توجه خاص قرار م گرفت.اسپایدر گوگل هر کلمه معن دار در صفحه را فهرست و از کلماتthe ، an و a صرف نظر م کرد. دیگر اسپایدرها از روش ها متفاوت استفاده م کردند. در کل تمام این روش ها سع م کند تا عملکرد اسپایدر را سریع تر کند و به کاربران اجازه بدهد تا با کارای بهتر جست وجو کنند.به عنوان مثال، بعض اسپایدرها کلمات را که در عنوان ها، عنوان ها فرع و لینک ها وجود دارد یا کلمات که بارها در صفحه تکرار م شود فهرست م کنند؛ سایت Lycos از این روش استفاده م کند. سایر سیستم ها، از قبیل AltaVista، هر کلمه در صفحه، شامل the ، an و a و سایر کلمات را که ب اهمیت است هم فهرست م کنند.
● ایجاد فهرست
زمان که اسپایدرها وظیفه یافتن اطلاعات از صفحات اینترنت را به اتمام رساندند موتور جست و جو باید این اطلاعات را به شکل که مفید است، ذخیره کند (البته باید در نظر داشت که این وظیفه هرگز تمام نم شود، خاصیت تغییر دائم اینترنت به این معن است که اسپایدرها همیشه در حال حرکت و جست وجو هستند). ۲ مولفه کلید برا در دسترس قرار دادن اطلاعات جمع آور شده برا کاربران وجود دارد: اطلاعات ذخیره شده با داده ها و روش که توسط آن اطلاعات فهرست م شود. در آسان ترین حالت، موتور جست و جوگر م تواند تنها کلمه و URL را ذخیره کند. در حقیقت، این روش برا موتور با کاربرد محدود است، زیرا در این حالت راه وجود ندارد برا این که تعیین کند آیا کلمه در بخش مهم یا بخش ب اهمیت از صفحه استفاده شده است، آیا کلمه تنها یک بار یا چندین مرتبه تکرار شده است یا صفحه لینک های به صفحات دیگر دارد که شامل آن کلمه است. به عبارت دیگر راه برا ایجاد فهرستی رتبه بند شده که تلاش م کند تا مفیدترین و بهترین صفحات را در بالا فهرست نتایج جست وجو قرار بدهد، وجود ندارد.
● حرکت به سوی کارایی بهتر
برا به دست آوردن نتایج بهتر، بیشتر موتورها جست وجو اطلاعات بیشتر علاوه بر کلمه و URL ذخیره م کنند. موتور ممکن است تعداد دفعات را که کلمه در صفحه تکرار شده است ذخیره کند، یا ممکن است مقدار را به هر ورود اختصاص بدهد و زمان که کلمات در عناوین، عنوان ها فرع و لینک ها ظاهر م شود ارزش اختصاص یافته به آن ها بیشتر م شود. هر موتور جست وجوگر تجار، فرمول متفاوت برا ارزش گذار کلمات فهرست خود دارد. این مسئله یک از دلایل است که موجب م شود جست وجو یک کلمه در موتورها جست وجوگر متفاوت، فهرست ها متفاوت را ارائه بدهد و صفحات با ترتیب ها متفاوت ارائه شود. داده ها برا صرفه جوی در فضا ذخیره ساز رمزگذار م شود. به عنوان مثال در صفحه گوگل اطلاعات از قبیل این که آیا کلمه با حروف بزرگ بوده است، اندازه فونت آن، موقعیت کلمه و سایر اطلاعات که به رتبه بند آن کمک م کند به صورت بیت و بایت ذخیره م کند، در نتیجه میزان بسیار زیاد از داده ها م تواند به شکل بسیار فشرده ا ذخیره شود. بعد از این که اطلاعات فشرده شد، برا فهرست شدن آماده است. هدف از ایجاد یک فهرست این است که باعث شود تا بتوانیم اطلاعات را با سریع ترین حالت ممکن پیدا کنیم.
● ایجاد فهرست وب سایت ها
به طور کلی، تنها چند راه برا ایجاد فهرست وجود دارد، اما یک از مهم ترین و موثرترین روش ها، ایجاد جدول hash است. در این روش فرمول به کار م رود تا به هر کلمه یک ارزش عدد اختصاص دهد. پرسش و جست وجو انجام شده در این روش توسط کاربر خیل ساده است، حت یک کلمه. برا پرسش ها پیچیده تر لازم است تا از عملگرها بولین (AND ORNOT NEAR) استفاده کرد تا بتوان شرایط جست وجو را گسترش داد. به طور خلاصه عملکرد یک موتور جست وجو به این صورت است: نرم افزار اسپایدر با جست وجو در سایت ها مختلف فهرستی از کلمات و مکانی که قرار دارد فراهم م کند، سپس بر اساس سیستم ارزش گذار خود فهرست رتبه بند شده تهیه، داده ها را رمزگذار و سرانجام اطلاعات را برا دسترس کاربران ذخیره م کند.در جست وجوهای که از عملگرها بولین استفاده م شود، جست وجوها لفظ است. موتور به طور دقیق همان کلمات یا عبارت را که وارد شده است جست وجو م کند. زمان که کلمات ورود دارا چندین معن است، جست وجو صحیح آن ها مشکل است. در این حالت، اگر برا شما تنها یک از معان آن کلمه مهم باشد، شما نم خواهید سایر صفحات را که شامل معان دیگر کلمه است ببینید، م توانید یک جست و جو لفظ ایجاد کنید که تا حدود معن ها ناخواسته را حذف کند، اما بهتر این بود که خود موتور جست وجو م توانست این کار را انجام بدهد. یک از حوزه ها تحقیق در موتورها جست و جوگر، جست و جو براساس مفهوم است. در یک موتور جست وجوگر مبتن بر مفهوم، اطلاعات ذخیره شده برا هر صفحه، بیشتر است. هنوز بسیار از گروه ها تلاش م کنند تا نتایج و عملکرد این نوع از موتورها جست و جو را افزایش دهند. قلمرو دیگر که پژوهش گران درباره آن تلاش م کنند، پرسش ها به زبان طبیع نامیده م شود.