امروزه بر روي اينترنت و مهمترين سرويس آن ( وب )، صدها ميليون صفحه حاوي اطلاعات وجود دارد. كاربران اينترنت با آگاهي از آدرس يك سايت ، قادر به اتصال به سايت مورد نظر و استفاده از منابع اطلاعاتي موجود بر روي سايت خواهند بود. ما با دريائي از اطلاعات مواجه هستيم ، در صورتيكه قصد يافتن اطلاعاتي خاص را داشته باشيم ، از چه امكاناتي در اين زمينه مي توان استفاده كرد. ؟ براي جستجو و يافتن اطلاعات مورد نياز از مراكز جستجوي اطلاعات در اينترنت استفاده مي گردد . به مراكز فوق Search engines نيز مي گويند.
مراكز جستجو در اينترنت ، نوع خاصي از سايت هاي موجود در وب بوده كه با هدف كمك براي يافتن اطلاعات ، ايجاد شده اند. مراكز جستجو در اينترنت بمنظور پاسخگوئي به كاربران متقاضي و جستجوكنندگان اطلاعات از سه روش متفاوت استفاده مي نمايند. نحوه عملكرد سه روش با يكديگر مشابه بوده و تنها تفاوت موجود ميدان انتخاب شده براي عمليات جستجو است .
· اينترنت و يا بخشي از آن بر اساس كلمات مهم ، جستجو مي گردد.
· از كلمات پيدا شده يك ايندكس بهمراه محل مربوط به هر يك ، ايجاد مي نمايند.
· به كاربران امكان جستجو براي كلمات خاص و يا تركيبي از آنها كه در فايل ايندكس موجود مي باشند ، داده مي شود.
مراكز جستجوي اوليه در اينترنت ، صرفا" اطلاعات مربوط به چندين هزار صفحه وب را ايندكس و روزانه دو تا سه هزار كاربر متقاضي به آنها مراجعه مي كردند. مراكز جستجوي فعلي در اينترنت اطلاعات مربوط به صدها ميليون صفحه را ايندكس نموده و روزانه به بيش از دهها ميليون متقاضي پاسخ مي دهند.
وب
اغلب مردم زمانيكه از مراكز جستجو در اينترنت سخن مي گويند ، منظور آنها مراكز جستجوي وب است . قبل از مطرح شدن وب ( مشهورترين بخش اينترنت ) ، از مراكز جستجوي اطلاعات براي كمك به كاربران براي يافتن اطلاعات استفاده مي گرديد. برنامه هائي نظير : " gopher" و " Archie" از فايل هاي ذخيره شده بر روي سرويس دهنده هاي متصل به اينترنت ، يك ايندكس ايجاد مي كردند. بدين ترتيب جستجو و دسترسي به اطلاعات و مستندات مورد نظر در اسرع وقت انجام مي گرديد. در اواخر سال 1980 اكثر كاربران مستلزم دارابودن دانش كافي در رابطه با استفاده از gopher,Archie و Veronica بودند. امروزه اكثر كاربران اينترنت دامنه جستجوي خود را محدود به وب نموده اند.
قبل از اينكه يك مركز جستجو قادر به ارائه آدرس و محل فايل مورد نظر باشد ، مي بايست فايل مورد نظر پيدا شود. بمنظور يافتن اطلاعات مربوط به صدها ميليون صفحه وب موجود ، مراكز جستجو مي بايست از يك نرم افزار خاص با نام Spider ( عنكبوت ) براي ايجاد ليست هاي شامل كلمات موجود در هر يك از صفحات وب ، استفاده نمايند. فرآيند ايجاد ليست هاي مربوطه توسط Spider ، اصطلاحا" web crawling ناميده مي شود. براي ايجاد و نگهداري يك ليست مفيد از كلمات ، Spider هاي مراكز جستجو مي بايست تعداد زيادي از صفحات وب را بررسي و مشاهده نمايند. نحوه حركت Spider در وب به چه صورت است ؟ نقاط شروع ، ليستي از سرويس دهندگان با ترافيك و اطلاعات بالا و صفحات وب متداول است . Spider از يك سايت رايج عمليات خود را آغاز و پس از ايندكس نمودن كلمات موجود در صفحات وب ، هر يك از لينك هاي موجود در صفحات را براي ادامه حركت خود انتخاب خواهد كرد. بدين ترتيب سيستم مبتني بر Spider بسرعت حركت خود در طول وب را آغاز خواهد كرد.
Google يكي از مراكز جستجوي دانشگاهي و معتبر است . در سيستم فوق از چندين Spider ( معمولا" سه Spider در هر لحظه ) براي ايجاد مقادير اوليه براي سيستم ، استفاده مي گردد . هر Spider قادر به نگهداري ارتباط خود با بيش از 300 صفحه وب در يك لحظه است . با استفاده از چهار spider ، سيستم فوق قادر به جستجوي 100 صفحه در ثانيه و توليد 600 كيلوبايت اطلاعات در هر ثانيه است . اطلاعات مورد نياز هر يك از spider ها مي بايست بسرعت در اختيار آنان گذاشته شود. سيستم اوليه Google ، داراي يك سرويس دهنده اختصاصي بمنظور تغذيه آدرس هاي URL مورد نياز براي هر يك از Spider ها بود. بمنظور افزايش سرعت عمليات ، Google از يك سيستم DNS اختصاصي استفاده مي كرد. ( در ساير موارد از DNS مربوط به ISP استفاده مي گردد ) . زمانيكه Spider به يك صفحه وب شامل تگ هاي Html برخورد مي نمايد ، دو آيتم در رابطه با آن را ياداشت خواهد كرد :
· كلمات موجود در صفحه
· محلي كه كلمات پيدا شده اند.
از كلمات موجود در عنوان (title) ، زيرعناوين (Subtitles) ، تگ هاي متا و ساير مكانهاي مهم ياداشت برداشته شده تا در آينده با توجه به خواسته كاربر ، امكان پاسخگوئي مناسب به آنها فراهم گردد. Spider مربوط به Google ، از كلمات موجود در هر يك از صفحات وب ايندكس ايجاد و كلماتي نظير : "a" ، "an" و "the" را حذف مي نمايند. ساير Spider ها هر يك داراي رويكردهاي خاص خود در اين زمينه مي باشند.
سياست هاي استفاده شده در رابطه با نحوه ايندكس نمودن اطلاعات صفحات وب ، مستقيما" بر سرعت عملكرد spider ها تاثير گذاشته و به كاربران امكان جستجوي قدرتمندتر و كارآ را خواهد داد. مثلا" برخي از Spider ها ، علاوه بر نگهداري اطلاعات مربوط به عناوين و لينك ها ، يكصد كلمه با فركانس تكرار بيشتر در صفحه وب و كلمات موجود در بيست خط اوليه را نيز نگهداري خواهند كرد. مركز جستجوي Lycos از رويكرد فوق استفاده مي نمايد.
سيستم هاي ديگر نظير " Altavista ، از روش خاص خود در اين زمينه استفاده مي نمايند. در سيستم فوق براي هر يك از كلمات موجود در صفحه شامل "a" ، "an" و "the" و ساير كلمات مشابه نيز ايندكس ايجاد مي گردد.
تگ هاي متا
با استفاده از تگ هاي متا ، ايجاد كنندگان صفحات وب مي توانند كلمات كليدي موجود در صفحه و نحوه ايندكس نمودن آن را مشخص نمايند. روش فوق در موارديكه يك كلمه داراي بيش از يك معني مي باشد بسيار مفيد و كارساز خواهد بود. بدين ترتيب تگ هاي فوق به مراكز جستجو راهنمائي لازم در خصوص انتخاب معني مربوط به كلمات مورد نظر را خواهند داد. در اين راستا ممكن است برخي از راهنمائي هاي انجام شده نيز اغفال كننده بوده و نتايج مثبتي را براي مراكز جستجو بدنبال نداشته باشد. بمنظور پيشگيري از راهنمائي هاي اغفال كننده توسط تگ هاي متا ، برنامه هاي Spider عمليات بازبيني محتويات يك صفحه وب را بمنظور تطبيق با اطلاعات ارائه شده توسط تگ ها ي متا ، انجام مي دهند. اطلاعات نادرست ارائه شده بوسيله تگ هاي متا ، توسط Spider ها ناديده گرفته مي شود.
تمام موارد فوق مفروض به حالتي است كه ايجاد كننده صفحه وب قصد معرفي صفحه ايجاد شده خود را به مراكز جستجو دارد. در برخي موارد ممكن است تمايلي به انجام اين كار وجود نداشته باشد.
ايجاد ايندكس
پس از اينكه عمليات Spider ها در رابطه با يافتن اطلاعات به اتمام رسيد ، ( عمليات فوق در عمل با توجه به ماهيت وب و استقرار صفحات وب جديد هرگز به پايان نخواهد رسيد ، بنابراين همواره عمليات جستجو و يافتن اطلاعات توسط Spider ها انجام مي گيرد) مراكز جستجو مي بايست اطلاعات مورد نظر را بگونه اي ذخيره نمايند كه قابل استفاده باشند. دو روش عمده در اين راستا وجود دارد:
· اطلاعات بهمراه داده ذخيره گردند.
· با استفاده از روشي اطلاعات ايندكس گردند.
در ساده ترين حالت ، يك مركز جستجو مي تواند صرفا" كلمه و آدرس URL آن را ذخيره نمايد. روش فوق در بازيابي اطلاعات و جستجو توسط كاربران ايجاد محدوديت خواهد كرد. با استفاده از روش فوق نمي توان جايگاه و وزن يك كلمه در يك صفحه وب را مشخص نمود. مثلا" نمي توان تشخيص داد كه كلمه مورد نظر چند مرتبه در صفحه تكرار شده و يا لينك هاي موجود در صفحه نيز شامل كلمه مورد نظر مي باشند يا خير . بدين ترتيب امكان ارائه يك ليست از صفحات وب كه شامل كلمه مورد نظر بر اساس ميزان تكرار مي باشند ، وجود نخواهد داشت .
بمنظور ارائه نتايج مفيدتر توسط مراكز جستجو ، اكثر مراكز جستجو صرفا" كلمه و آدرس URL را ذخيره نمي نمايند . در اين حالت مواردي نظير : تعداد تكرار كلمه در صفحه نيز ذخيره خواهد شد. مراكز جستجو همچنين به هر entry يك وزن را نسبت خواهند داد. وزن نسبت داده شده، نشاندهنده جايگاه كلمه در صفحه است ( ابتداي صفحه ، در لينك ها ، در تگ هاي متا و يا در عنوان صفحه ) هر يك از مراكز جستجو براي اختصاص يك وزن مناسب به كلمه مورد نظر از يك فورمول استفاده مي نمايند. موضوع فوق يكي از دلايلي است كه جستجو يك كلمه توسط دو مركز جستجو ، نتايج مشابه اي را بدنبال نخواهد داشت .
مراكز جستجو بدليل استفاده بهينه از فضاي ذخيره سازي ، اطلاعات مورد نظر را بصورت رمز شده ذخيره مي نمايند. مثلا" در نسخه اوليه سايت Google از دو بايت بمنظور ذخيره سازي اطلاعات مربوط به كلمات در يك صفحه استفاده مي كردند. كلمات بصورت حروف بزرگ بهمراه اندازه فونت ، وزن و موقعيت آن ذخيره مي گرديد. هر يك از فاكتورهاي فوق دو ويا سه بيت از دو بايت اشاره شده را به خود اختصاص مي دادند. بدين ترتيب اطلاعات گسترده اي بصورت فشرده ذخيره و سپس عمليات ايجاد ايندكس انجام مي گيرد.
ايندكس داراي صرفا" يك هدف است : امكان يافتن اطلاعات با سرعت بالا . براي ايجاد ايندكس از روش هاي متعددي استفاده مي گردد. يكي از بهترين روش هاي موجود ، ايجاد يك جدول Hash است . در روش hashing ، از يك فورمول براي اختصاص يك عدد به يك كلمه استفاده مي گردد. توزيع عددي با توزيع كلمات بصورت الفبائي با يكديگر متفاوت بوده و همين امر ، موثر بودن جداول hash را بدنبال خواهد داشت . در زبان انگليسي حروفي وجود دارد كه كلمات زيادي با آنان آغاز مي گردد. مثلا" بخش حرف "M" ، در يك ديكشنري بمراتب قطورتر از حرف "X" است . بدين ترتيب جستجو و يافتن كلماتي كه با حرف M شروع مي گردند زمان بمراتب بيشتري نسبت به يافتن كلماتي كه با حرف "X" آغاز مي گردند ، را طلب مي كند. در روش hashing ، با آگاهي از موارد فوق، بگونه اي رفتار مي گردد كه متوسط زمان بازيابي هر كلمه كاهش يابد. در روش فوق ايندكس از داده واقعي متمايز مي گردد. جدول hash ، شامل شماره hash بهمراه اشاره گري است كه به داده مورد نظر اشاره مي نمايد. با ايجاد يك سيستم ايندكس مناسب و ذخيره سازي مطلوب اطلاعات ، امكان ارائه نتايج مفيد براي كاربران را فراهم خواهد كرد.
جستجو
كاربران براي جستجوي اطلاعات مورد نياز ، پس از ورود به سايت مركز جستجو ، يك query را ايجاد مي نمايند. query مي تواند ساده و صرفا" شامل يك كلمه و يا پيچيده و استفاده از عملگرهاي منطقي باشد. برخي از عملگرهاي منطقي عبارتند از :
● AND . تمام كلماتي كه توسط AND بيكديگر ملحق شده اند ، مي بايست در صفحه موحود باشند. در برخي از مراكز جستجو از عملگر "+" بعنوان عملگر جايگزين AND نيز استفاده مي شود.
●OR . حداقل يكي از كلماتي كه توسط OR بيكديگر ملحق شده اند ، مي بايست در صفحه موجود باشد .
● NOT . كلمه بعد از NOT نبايد در صفحه موجود باشد. برخي از مراكز جستجو از عملگر "-" نيز استفاده مي نمايند.
● Followed by . يكي از كلمات مي بايست مستقيما" پس از كلمه ديگر وجود داشته باشد.
آينده مراكز جستجو
جستجوهائي كه توسط عملگرهاي منطقي تعريف مي گردند از نوع جستجوهاي literal مي باشند. مراكز جستجو بمنظور ارائه نتايج مورد نظر كاربر ، دقيقا" كلمه و يا كلمات مشخص شده توسط كاربر در بانك اطلاعاتي جستجو مي نمايند. روش فوق در موارديكه يك كلمه داراي بيش از يك معني باشد ، نتايج مثبتي را بدنبال نخواهد داشت . براي اخذ نتايج دلخواه ، كاربران اينترنت مي توانند با استفاده از عملگرهاي منطقي محدوديت هائي را ايجاد نمايند ، روش مناسب اين است كه محدوديت فوق از طريق مركز جستجو اعمال گردد.
يكي از موارديكه اخيرا" توسط محققين متفاوتي در مراكز جستجو دنبال مي گردد ، جستجو بر اساس مفهوم است .در روش فوق با استفاده از آناليزهاي آماري بر روي صفحات شامل كلمات سعي در ارائه نتايج مطلوبتري وجود دارد. در برخي موارد ديگر استفاده از زبانهاي طبيعي براي جستجو دنبال مي گردد. در روش فوق براي طرح سوال خود از يك مركز جستجو از روشي كه توسط انسان براي طرح سوالات مربوطه استفاده مي گيرد، استفاده خواهد شد. در اين راستا ضرورتي به استفاده از عملگرهاي منطقي و يا query هاي پيچيده نخواهد بود.