محركات البحث على الإنترنت.. كيف تُصنع؟: برامج «تزحف» عبر صفحات الإنترنت ونظم ضخمة تحتاج إلى استثمارات كبيرة
جدة: خلدون غسان سعيد
قد يعتقد البعض بأنه من السهل صُنع محرك بحث جديد، ولا يحتاج الأمر إلا لبعض المهارات التقنية والإرادة القوية. إلا أن الكثير من الأمور مخفية وراء الكواليس، وقد لا تخطر ببال مغامر يريد صناعة محركه الخاص. وقد نما عدد مواقع الإنترنت بشكل مطرد منذ بدايتها في عام 1983، حيث وصل إلى ألف موقع بحلول عام 1984، و10 آلاف في عام 1987، و100 ألف في 1990، ومليون في عام 1992، و26 مليون في 1998، ومليار في عام 2000، وصولا إلى أكثر من تريليون صفحة في عام 2008، الأمر الذي يعني بأن العثور على المعلومة التي تريدها في الإنترنت بدون استخدام محرك بحث هو أمر شبه مستحيل. وسنستعرض كيف تعمل محركات البحث، ونقدم بعض التحديات والعقبات التي قد تواجه المبرمجين خلال تطوير محرك البحث، مع أخذ أمثلة بعض المحركات المشهورة، وتقديم بعض النصائح للمبرمجين.
* محرك «غوغل»
* نما عدد الصفحات التي يعثر عليها محرك «غوغل» بمعدل 8 أضعاف في فترة 2000 إلى 2005، و125 ضعفا من 2005 إلى 2008. ويستطيع محرك «غوغل»، لغاية نهاية شهر يوليو (تموز) المنصرم، العثور على تريليون رابط Link متفرد في العالم الرقمي، وأكثر من تريليون رابط غير متفرد (كثيرا ما تتكرر روابط المواقع المشهورة في صفحات مختلفة). ويبدأ «غوغل» عملية المسح أو الـ«زحف» Crawl في صفحات الإنترنت باختصار بالشكل التالي: توجد لدى «غوغل» قائمة من الصفحات الرئيسية المرتبطة بمواقع أخرى بشكل جيد جدا، ويبدأ برنامج خاص بالبحث في جميع الروابط الموجودة في صفحات هذه القائمة وتسجيلها، ثم البحث في الروابط الموجودة في الصفحات التي وصل إليها من الروابط السابقة، وهكذا. ويسجل النظام تكرار كل رابط ويقيمه حسب عدد التكرارات، لتظهر النتائج الأكثر تكرارا قبل غيرها. وتجدر الإشارة إلى أن بعض المواقع قد تحتوي على روابط لا نهائية، مثل الروابط الموجودة في مواقع التقويم، حيث يمكن الدخول في رابط «اليوم التالي» بشكل لا نهائي، ولذلك فإن البرنامج لا يأخذ هذه الروابط بعين الاعتبار. وتُصنف الشركة الروابط والصفحات في فهرس Index ضخم خاص بها، وذلك لتسريع عملية البحث، حيث أنه ليس من العملي أن يبحث المحرك في جميع صفحات الإنترنت كلما طلب المستخدم ذلك، بل يفحص النظام المعلومات الموجودة في الفهرس الموجود لديه داخليا. واختلفت الأمور اليوم كثيرا بالنسبة للشركة مقارنة بالسابق، حيث كانت تجري العمليات التقنية بشكل مجموعات Batch، مثل قيام أحد الكومبيوترات بقياس عدد تكرار الصفحات وتقييمها وفقا لذلك (في خلال ساعات قليلة)، وتجهيز فهرس يمكن استخدامه لعدة ساعات في اليوم قبل تكرار العملية مرة أخرى وتحديث معلومات الفهرس، وهكذا. أما اليوم، فإن نظام الشركة يُحدّث المعلومات بشكل مستمر ومن دون توقف. ويمكن تشبيه عملية الزحف هذه بتتبع جميع الطرقات والتقاطعات الموجودة على خريطة يبلغ حجمها 50 ألف مرة حجم خريطة الولايات المتحدة الاميركية. وتقوم أنظمة الشركة بهذه العملية عدة مرات في اليوم الواحد. هذا ويعالج محرك «غوغل» حوالي 20 بيتابايت من المعلومات كل يوم (الـ«بيتابايت» Petabyte الواحد هو مليون غيغابايت، أو ألف «تيرابايت»).
* عقبات تقنية ومادية * وبناء على الأرقام المذكورة أعلاه، فإنه يمكن تخيل قدرات الأجهزة الخادمة اللازمة لتحليل هذا الكم الكبير من المعلومات، وعرض النتيجة في حوالي 0.3 ثانية، ذلك أن صبر المستخدمين سينفد إذا انتظروا أكثر من بضع ثوان. وإن أردنا استكشاف أحجام التخزين المطلوبة، فإن محرك «غوغل» يحفظ نسخة من كل صفحة (تقريبا) يضعها في فهرسه. ويمكن تخيل أن عملية حفظ نسخ من تريليون صفحة هو أمر ليس بالسهل، وخصوصا مع اختلاف أحجام الصفحات حسب محتواها. ولذلك، فإن غالبية المحركات تحفظ النصوص الموجودة في الصفحات المفهرسة، وليس الصور وعروض الأفلام وغيرها من الملحقات المختلفة. وازداد معدل حجم الصفحة من 17 كيلوبايت في عام 1995، إلى 93.7 كيلوبايت في عام 2003، وصولا إلى 312 كيلوبايت في عام 2007.
وتجدر الإشارة إلى أن الصفحات التي تحتوي على أحرف غير إنجليزية ستشغل حيزا أكبر عند حفظها، حيث جربت «الشرق الأوسط» حفظ نص يحتوي على 4280 حرفا إنجليزيا (حوالي صفحتين من مقاس A4) على شكل ملف نصي، وحصلنا على حجم بلغ 4.23 كيلوبايت، إلا أن حجم الملف لعدد الأحرف نفسه ولكن باللغة العربية (بتشفير «يو تي إف-8» UTF-8 القياسي)، وصل إلى 8,38 كيلوبايت، أي ضعف الحجم تقريبا.
ولا ننسى المشاكل التي ستواجه من يصنع المحرك عند طلب البحث عن معلومة هي خليط من عدة لغات، مثل «كأس العالم لكرة القدم South Africa 2010»، حيث يجب البحث في الجزء العربي والإنجليزي وربطهما ببعضهما البعض، ذلك أن من يبحث عن هذه المعلومة لا يريد الحصول على جميع المعلومات المتعلقة بـ«كأس العالم لكرة القدم»، أو المعلومات عن جنوب إفريقيا، بل المعلومات المرتبطة بالحدث في المكان المطلوب.
وبالعودة إلى حجم المعلومات التي يجب حفظها، فإن ضربنا عدد الصفحات التي عُثر عليها بمعدل حجم الصفحة، فإن النتيجة ستكون حوالي 29 بيتابايت (أو 29 ألف تيرابايت). ويمكن ضغط هذه المعلومات بنسبة 88.95% (أعلى نسبة ضغط للنصوص يمكن الوصول إليها) للوصول إلى حوالي 3.2 بيتابايت من المعلومات (يوجد لدى شركات صناعة محركات البحث تقنيات عديدة لتطوير التخزين، حيث أن «غوغل» تستطيع تخزين حجم 148 غيغابايت من الصفحات (24 مليون صفحة) في 7 غيغابايت فقط). وبحساب أن كلفة القرص الصلب الواحد بسعة 750 غيغابايت هي حوالي 65 دولارا أميركيا للكميات التجارية، وبمعرفة أن حجم المعلومات التي يجب تخزينها يتطلب حوالي 4270 قرصا صلبا، ستكون تكلفة التخزين حوالي 2,8 مليون دولار أميركي للأقراص الصلبة التي تخزن المعلومات المفهرسة (لغاية اليوم) فقط. وتجدر الإشارة إلى أنه ليس من العملي وصل هذا العدد من الأقراص الصلبة بالأجهزة الخادمة، إن أمكن عمل ذلك من الناحية التقنية. أضف إلى ذلك كلفة الأجهزة الخادمة التي يجب عليها البحث عن كلمة واحدة من بين كم المعلومات الموجودة في الفهرس، وبسرعة كبيرة، وكلفة التشغيل والتبريد لهذه الأجهزة، ووجود أجهزة بديلة في حال تعطلها عن العمل، وكلفة اشتراك الإنترنت السريع وغير المحدود (من حيث كم المعلومات الصادرة والواردة) الذي يجب توفيره للمستخدمين، وأجور الصيانة وطاقم العمل، وغيرها من التكاليف المختلفة، فإن الكلفة النهائية ستكون عدة مئات الملايين من الدولارات الأميركية.
وليس من المتوقع أن يكون توفير هذا المبلغ ممكنا للأفراد، أو حتى للشركات متوسطة الحجم، خصوصا وأن محرك البحث يكون مجانيا في العادة، وأن المردود قد يكون من الإعلانات أو من تكامل محرك البحث مع مواقع مختلفة، الأمر الذي يعني بأن الحصول على الأرباح سيتطلب سنوات عدة. ويتطلب إنشاء محرك بحث جديد بشكل كامل استثمار القطاع الخاص بشكل مكثف في الأمر، أو دعم الدولة لهذه المشاريع الطموحة. وبناء على ذلك، فإن احتمال تطوير طالب مدرسي أو جامعي لمحرك بحث بشكل مستقل هو أمر بالغ الصعوبة، خصوصا في ظل هيمنة المحركات العملاقة على الأسواق. ولو كان الأمر بالسهولة المتصورة، لامتلأت الإنترنت بعشرات الآلاف من المحركات المختلفة. ويمكن أن يطور بعض الأفراد أو الشركات محركات بحث بسيطة تكلف كسورا عشرية من الأرقام المذكورة، ولكن هذه المحركات لن تستطيع الدخول بقوة في الأسواق وتتميز عن غيرها، الأمر الذي شهدناه مرارا وتكرارا في محاولات عديدة اختفى معظمها.
وتقول ياسمينا بريحي، مديرة التسويق في «غوغل» في أوروبا والشرق الأوسط وشمال إفريقيا بأن «غوغل» بدأت بتمويل قدره 100 ألف دولار أميركي، وصعد التمويل إلى مليون في أسابيع قليلة، ومن ثم إلى 25 مليونا في منتصف عام 1999. واستطاعت «غوغل» التطور من معالجة 10 آلاف طلب في اليوم في عام 1998، إلى 18 مليون طلب في عام 2000.
هذا وتوظف «غوغل» فريقا خاصا من المحامين لمراجعة جميع المشاكل القانونية التي قد تنتج من شراء شركات مختلفة، أو تقديم مزايا جديدة، أو حتى طلبات من الحكومات للحصول على معلومات شخصية عن المستخدمين، لدرجة أن الشركة تحدت طلبات قانونية لوزارة العدل الأميركية.
* قدرات ومزايا برمجية
* وعند مقارنة محركات البحث المعروفة ببعضها البعض من حيث أحجام الصفحات، تبين أن محرك «ياهو» يخزن جميع المعلومات إن كان حجم الصفحة 210 كيلوبايت أو أقل، وتنخفض نسبة الكلمات التي سيبحث فيها المحرك مع ازدياد حجم الصفحة بشكل مطرد، لتصل إلى 6% من الصفحة عند حجم 3497 كيلوبايت. أما محرك «غوغل»، فإنه يخزن الصفحة كاملة لغاية حجم 520 كيلوبايت، وتنخفض النسبة إلى 15% عند حجم 3497 كيلوبايت، بينما يخزن محرك «إم إس إن» الصفحات لغاية حجم 1030 كيلوبايت، وتنخفض النسبة إلى 29% عند حجم 3497 كيلوبايت. وتجدر الإشارة إلى أن بعض محركات البحث تعرض الصفحات الأصغر حجما قبل الأكبر من الناحية الزمنية، حيث يمكن لموقع ما يبلغ حجمه 150 كيلوبايت أن يظهر في نتائج البحث قبل موقع آخر يبلغ حجمه 200 كيلوبايت، وبفارق أيام.
ولا ننسى الصعوبات المتمثلة في ربط البحث عن الصور والملفات المختلفة بالكلمات التي يريد المستخدم البحث عنها، حيث أن غالبية الصور هي ملفات ذات أسماء وأرقام عشوائية مخزنة على الأجهزة الخادمة، ويجب ربط الصورة بالسياق الذي ظهرت به وبموقعها في الصفحة والكلمات المحيطة بها، الأمر الذي لا يُعتبر سهلا، نظرا لأن الفقرة المجاورة لأي صورة تتكون من عشرات أو مئات الكلمات. هذا ويجب على أي فرد يريد تطوير محرك بحث بالطريقة الصحيحة تطوير نظام برمجي خاص بتسجيل طلبات البحث وتجهيز جداول بها للمقارنة، وذلك لمعرفة نزعات وتوجهات الأفراد وتطوير المحرك نحو اعتماد خدمات جديدة تناسب الأكثرية، وفق احصاءات الاستخدام.
هذا ومن المفضل اعتماد نظام التصحيح اللغوي لكلمات البحث، حيث أن اقتراح كلمة بديلة للمستخدم عوضا عن تلك الخاطئة التي كتبها سيوفر عليه الوقت بسبب أن المحرك نبهه إلى كلمة خاطئة. ويجب اعتماد نظام برمجي يقارن بين الكلمة المطلوبة وقائمة بجميع الكلمات، وبسرعة كبيرة. ويستخدم «غوغل» نظاما مكونا من 14 مليون كلمة مرجعية، لا تأخذ حيزا في الذاكرة سوى 256 ميغابايت على الجهاز الخادم، الأمر الذي يرفع الأداء بشكل كبير. ويستخدم نظام «غوغل» أسلوب الـ«هاشنغ» Hashing البرمجي في توزيع الكلمات في الذاكرة لتسريع البحث عنها، مع تحويل كل كلمة يكتبها المستخدم إلى نظير رقمي يعرفه محرك البحث، ذلك أن البحث باستخدام الأرقام في لغات البرمجة أسرع بكثير من استخدام الكلمات أو النصوص. ويتوقف المحرك عند وصول النتائج إلى 40 ألف نتيجة بحث، بغض النظر عن وجود نتائج إضافية أم لا، ذلك أن النظام يتوقع أن يغير المستخدم من كلمات البحث بعد بضع صفحات إن لم يعثر على النتيجة، وعلى ذلك فإنه لا يوجد داع لعرض ملايين الصفحات التي عُثر عليها في فهرس النظام.
* نصائح للمبرمجين والمستخدمين
* ويتطلب الحصول على مردود مادي لقاء خدمات البحث أمورا عدة، منها وضع أولوية ارتباط النتائج بالكلمات التي يراد البحث عنها قبل أولوية الحصول على المال (بشكل مباشر)، ويجب تطوير واجهة التفاعل مع المستخدم بشكل مستمر وتطوير تقنيات البحث وتسريعها. ومن الأمور الأخرى المرتبطة تطوير تقنيات بحث تتميز عن محركات البحث الأخرى، وإلا فإن المحرك الجديد لن يجذب أي انتباه على الإطلاق، حيث يجب أن يكون الهدف التميز وليس المنافسة. ويجب أن يتميز المحرك على صعيد المستخدمين والمعلنين في الوقت نفسه.
وبمتابعة مثال «غوغل»، فإن الشركة طرحت محركها في لغات مختلفة منذ عام 2001 (112 لغة رسمية)، و5 لغات مزاحية، مثل لغة مخلوقات الفضاء والرسوم المتحركة وقراصنة الإنترنت. هذا ونمت محركات البحث بسبب منافستها الشرسة وفسح مجال تحديد هيمنة المحرك للمستخدمين أنفسهم، حيث أن الشركات ستظل تطور مزايا وإبداعات جديدة للمستخدمين من أجل أن تجذبهم إليها. وانقلبت الموازين في فترة 1995-2005 عدة مرات بين «مايكروسوفت» و«ياهو!» و«غوغل» و«آسك جيفز».
ويجب تشجيع المستخدمين على الدخول في البحث التجاري الذي يقدم لهم تسهيلات أكبر مقارنة بالخدمات المجانية، مثل تبسيط شروط البحث باستخدام واجهة تفاعل سلسة، حيث أن 30% من طلبات البحث في الإنترنت تستخدم نظام البحث التجاري. ويمكن اعتبار أن هذا النوع من البحث يستهدف الشركات التي لا يوجد لديها مانع من استثمار المبالغ لقاء الحصول على سرعة وسهولة الوصول إلى المعلومة المطلوبة. وبلغ مردود البحث لـ«غوغل» حوالي 3.5 مليار دولار أميركي لغاية مارس (آذار) 2008، وحوالي 800 مليون دولار أميركي لشركة «مايكروسوفت» للتاريخ نفسه، مع تسجيل نمو عام في البحث في عام 2008 بنسبة 13.4%. وقد تفسر هذه الأرقام سبب محاولات شركة «مايكروسوفت» شراء محرك «ياهو!»، والتطور المستمر لـ«غوغل».
ويمكن تقديم مجموعة منوعة من الإعلانات الصغيرة على جانب نتائج البحث من أجل عدم تشتيت تركيز الباحث، ولكن مع لفت نظره في الوقت نفسه. ويمكن تقديم قنوات خاصة للمبيعات والإعلان عن شركات التصنيع والمواقع التجارية وأحدث المنتجات. هذا ويجب مراقبة البنية التحتية للنظام بشكل مستمر، ومعرفة ما هي أوقات الذروة وكيفية التعامل مع النظام في ذلك الوقت، حيث ان تكاليف استخدام البنى التحتية المثلى مرتفعة جدا، مع عدم وجود ضمانات لنجاح محرك البحث الجديد، الأمر الذي قد يقود إلى مصير مئات المواقع التي دُفنت في المقبرة الإلكترونية بعد انفجار فقاعة المواقع التجارية (استثمر الكثير من الشركات مبالغ طائلة في البنى التحتية في الفترة الممتدة ما بين 1999 و2001 قبل أن تباشر أعمالها، ولم تنجح مشاريعها بعد ذلك، وخسرت الشركات رؤوس أموال ضخمة). ولا يجب نسيان أنه من الممكن أن يمتلئ القرص الصلب خلال عملية مسح المحرك للصفحات، ومن الوارد الوصول إلى صفحات لا تعمل، أو تحت الصيانة، الأمر الذي يتطلب معالجة خاصة، حيث لا يوجد أي معنى لتخزين صفحة لا تحتوي على أية معلومات تهم المستخدمين.
أما إن كان لديك موقع تريد ترويجه، فإنه من الممكن دفع مبلغ من المال لشركة البحث لوضع موقعك في بداية النتائج التي ستظهر للمستخدمين عند كتابتهم كلمات مرتبطة بموقعك، أو يمكنك استخدام بعض الطرق الخاصة لرفع تقييم المحرك لموقعك، مثل كتابة الكلمات الرئيسية في بداية ونهاية الصفحة، عوضا عن كتابتها في المنتصف. وكمثال على ذلك، فإن كان لديك موقع يروج لملحقات الكومبيوترات، فإن كتابة كلمات ملحق كومبيوتر في بداية الموضوع وفي نهايته ستعطيك نتائج أفضل مقارنة بكتابة الكلمات نفسها في منتصف الموضوع، على الرغم من أن عدد المرات التي ذُكرت فيها هذه الكلمات هو نفسه. وينطبق هذا الأمر إن كان حجم الصفحة (بدون الصور والإضافات الأخرى) أقل من ذلك المذكور في القسم السابق من هذا الموضوع.
* محركات بحث عربية
* من المحركات العربية المميزة محرك «يملي» Yamli الذي سيُدهشك إن كنت تدردش مع الأصدقاء بكتابة الكلمات العربية بواسطة الأحرف الإنجليزية. ويستطيع هذا المحرك فهم الكلمات التي تكتبها باللغة الإنجليزية وتقصد بها كلمات عربية، وتحويلها فورا إلى نظيرتها العربية، مثل تحويله لـ Asharq Al Awsat إلى «الشرق الأوسط»، مع وجود بعض الرموز الخاصة للأحرف العربية غير الموجودة في اللغة الإنجليزية، مثل استخدام ” للدلالة على الهمزة، والرقم 3 للدلالة على حرف «ع»، وهكذا.
http://www.yamli.com http://www.arab.de/asearch.htm http://www.arabo.com http://www.ayna.com
* تسلسل محركات البحث 1993: Aliweb 1994: Lycos، WebCrawler، Infoseek 1995: AltaVista، Magellan، Excite، SAPO 1996: Dogpile، Inktomi، HotBot، AskJeeves 1997: Yandex، Northern Light 1998: Goole 1999: AlltheWeb، Teoma، Naver، Vivisimo 2000: Baidu 2003: Info.com 2004: Yahoo! Search، A9.com 2005: MSN Search، Ask.com، GoodSearch 2006: wikiseek، Quaero، Live Search، ChaCha، Guruji.com 2007: Wikia Search 2008: Cuil (*) اعتُمد استخدام المحرك طرقه الخاصة للحصول على نتائج البحث في هذه القائمة، وليس تاريخ إطلاق الموقع، حيث ان بعض المحركات المشهورة استخدم نتائج بحث من شركات أخرى
* مواقع وكتب لصناعة محركك الخاص http://www.gigablast.com http://www.google.com/coop/cse http://www.smarterscripts.com http://www.hyperseek.com http://www.gossamer-threads.com/scripts/glinks http://www.mtopsoft.com/sitesearch http://www.seobook.com/archives/001427.shtml http://rollyo.com http://www.aleadsoft.com http://www.focalmedia.net/index_tb.html http://www.searchmakerpro.com http://www.google.ie/intl/en/corporate/history.html الكتب والمراجع Understanding Search Engines: Mathematical Modeling and Text Retrieval Web Dragons: Inside The Myths Of Search Engine Technology Finding Out About: A Cognitive Perspective On Search Engine Technology And the WWW Web Search: Public Searching Of The Web
جريدة الشرق الاوسط