تلعب محرّكات البحث دوراً محورياً في حياتنا اليومية؛ في كل مرة نريد فيها البحث عن معلومةٍ جديدة فإننا نلجأ بشكلٍ فوريّ لأحد محرّكات البحث من أجل الاستعلام عما نريد معرفته. سواء كان ذلك وصفةً لطبق طعام أو خبراً طارئاً أو أمراً جديداً نريد التعلم عنه أكثر، تُشكل محركات البحث نقطة البداية التي ننطلق منها.
بالرّغم من الأثر الهام والكبير جداً الذي توفره محركات البحث، وبالرّغم من أن الخوض في تفاصيل عملها أصبح أعقد من ذي قبل، إلا أن المبدأ العام لعملها بسيط وسهل الفهم ولا يتطلب منا جميعاً أن نكون خبراء في مجال الخوارزميات الحاسوبية؛ حيث تعتمد أشهر محركات البحث اليوم على ثلاث خطواتٍ رئيسية في عملها:
- الزحف (Crawling)
- الفهرسة (Indexing)
- التقييم (Ranking)
تسهم الخطوات الثلاثة السابقة في تكوين خوارزمية العمل العامة التي تقوم عليها محركات البحث الشهيرة؛ حيث تستند معظم محركات البحث المستخدمة اليوم إلى التنقيب عن صفحات الويب عن طريق العملية المعروفة بالزحف، وهي عملية آلية تتم عبر برامج متخصصة لذلك، وقد ساهم انتشار هذه الطريقة وسرعة عملها إلى تراجع كبير في دور أنماط عمل محركات البحث الأخرى التي كانت تعتمد على الأرشيف المصنع بشكلٍ يدويّ من قِبل عناصر بشرية.
الزحف (Crawling)
هدف عمل محركات البحث هو عرض صفحات الويب المرتبطة بكلمة مفتاحية ما، وهذا يعني أنها يجب أن تمتلك معرفة مسبقة عن العديد من صفحات الويب ومواقع الإنترنت، وهذه المعرفة تبدأ مع عملية الزحف التي تتم عبر برامج آلية تُعرف باسم العناكب (Spiders) أو الزواحف (Crawlers)، التي تقوم بالبحث عن صفحات الويب الجديدة بشكلٍ مستمر وتحميلها (مع عنوان URL الخاص بها) وإضافتها للأرشيف الخاص بمحرك البحث. بالرغم من أن عملية البحث نفسها تحدث بشكلٍ مستمر، إلا أن عملية العثور على صفحات ويب جديدة (مثل نشر مقال جديد على موقعٍ ما) قد لا تحدث بشكلٍ فوريّ، وهذا ما يبرر ظهور بعض الصفحات القديمة التي ربما لم تعد موجودة أصلاً على نتائج محرك البحث؛ وذلك لأن الزواحف لم تصل إليها بعد ولم تقم بتحديث الأرشيف الخاص بمحرك البحث.
لو أردنا الخوض أكثر قليلاً بتفاصيل عملية الزحف، فإنه يجب الإشارة إلى أنها نفسها تتكون من ثلاثة عمليات: الجدولة (Scheduling) والزحف (Crawling) والتفسير (Parsing). في البداية يقوم برنامج آلي يدعى المجدول (Scheduler) بالتعرف على صفحات وعنواين الويب الجديدة، ومن ثم يتم تحديد متى يجب إرسال الزواحف لها، ومتى يجب أن يتم إعادة الزواحف إليها مرة أخرى، بمعنى تجديد وتحديث المعلومات المتعلقة بصفحة الويب ضمن أرشيف محرك البحث. ما تقوم به الزواحف هو عملية تحميل لصفحات الويب المحددة سابقاً من المجدول، ومن ثم يقوم بتمرير هذه الصفحات لبرنامجٍ آلي آخر يدعى المفسر (Parser)، الذي بدوره يقوم باستخلاص الروابط الموجودة ضمن صفحة الويب، بالإضافة لمعلوماتٍ أخرى عنها، ومن ثم يرسل الروابط المستخلصة للمجدول والمعلومات المستخلصة من الصفحة للفهرسة.
الفهرسة (Indexing)
بعد اكتشاف صفحات الويب المختلفة يحتاج محرك البحث إلى أرشفتها بطريقةٍ معينة من أجل العثور عليها لاحقاً وعرضها ضمن صفحة نتائج البحث، ولهذا الأمر يتم البحث ضمن محتوى الصفحة عن كلماتٍ مفتاحية معينة مرتبطة بها، بالإضافة لتحديد العديد من الخصائص المرتبطة بصفحة الويب. هنالك أمرٌ هام قد يحدث أثناء عملية الأرشفة، وهو أن الزواحف (أي البرامج الآلية التي تقوم باكتشاف الصفحات) قد لا تستطيع ربط الصفحة بكلماتٍ مفتاحية معينة، وهو ما قد يؤدي لحصولها على تقييمٍ منخفض لاحقاً ضمن صفحة نتائج البحث. يمثل محتوى الصفحة ووجود الكلمات المفتاحية أمراً هاماً في عملية أرشفتها، إلا أنها ليست العوامل الوحيدة التي تؤخذ بعين الاعتبار والتي تحدد أهمية هذه الصفحة.
التقييم (Ranking)
تمثل هذه الخطوة سر عمل محركات البحث: كيف يتم عرض نتائج البحث؟ يمتلك كل محرك بحث خوارزمية (بالتحديد مجموعة من الخوارزميات) التي تتولى مسؤولية عرض صفحات الويب ضمن نتائج البحث، وذلك بعد أن يتم فهم الكلمة المفتاحية التي أدخلها المستخدم ومن ثم يتم البحث ضمن الأرشيف الخاص بمحرّك البحث عن صفحات الويب التي قد تمتلك ارتباطاً بالكلمة المفتاحية المطلوبة. بطبيعة الحال، سيكون هنالك عدد كبير من صفحات الويب المرتبطة بكلمة مفتاحية معينة، ولذلك يجب معرفة كيفية ترتيبها وعرضها على صفحة النتائج. (للمزيد من التفاصيل يمكن الاطلاع على مقالنتا التفصيلية المتعلقة بخوارزمية التقييم الخاصة بجوجل لعرض وترتيب صفحات الويب).
هنا تأتي الخطوة الهامة التي تقوم بها خوارزميات التقييم الخاصة بمحرّكات البحث، وهي حساب الأهمية (Calculating Relevance)، التي تعني تحليل محتوى صفحات الويب المختلفة وخصائصها وإعطاء كل منها تقييماً معيناً يمثل أهميتها بالنسبة للكلمة المفتاحية المدخلة، وأخيراً يتم عرض صفحات الويب ضمن صفحة النتائج بحسب تقييم الأهمية الخاص بها. تقوم جوجل -مثلاً- بحساب الارتباطات التي تمتلكها صفحة ويب معينة مع صفحات أخرى من أجل حساب أهميتها، وهي إحدى العوامل التي تأخذها جوجل بعين الاعتبار عند ترتيب نتائج البحث، إلى جانب العديد من الأمور الأخرى مثل تاريخ إنشاء وظهور صفحة الويب، وعدد الكلمات المفتاحية فيها المرتبطة بالكلمة المفتاحية المدخلة من المستخدم، ووجود وسائط متعددة مثل الصور والفيديوهات، وسرعة تحميل الصفحة نفسها، وإن كانت الصفحة تعود لجهةٍ موثوقة أم لا.
لا يعني الكلام السابق أن كل محركات البحث متشابهة؛ فهنالك اختلافات في الخصائص والميزات التي تتيحها محركات البحث، كما أن طريقة عرض النتائج تختلف من محركٍ لآخر بحسب العوامل التي تؤخذ بعين الاعتبار عند إجراء عملية التقييم وترتيب نتائج البحث. ولكن من حيث البنية العامة وخطوات عمل محركات البحث، وعند الحديث عن أبرز المحركات المستخدمة اليوم (مثل جوجل وبينغ وبايدو وياندكس)، فإن الهيكلية المعتمدة على الزواحف هي المهيمنة.