لوحة المتصدرين
المحتوى الأكثر حصولًا على سمعة جيدة
المحتوى الأعلى تقييمًا في 07/08/15 في كل الموقع
-
بَعدَ أَن تَعرفنا في سِلسلة المقالات السابقة عَن نظام تَحليل المواقع Google Analytics، سنَشرح في هذا المَقال نظام أدوات إدارة المواقع Google webmaster Tools وكَيفية إنشاء ملف Robot.txt والاستهداف الدولي، وذلك بِخطوات مَشروحة مَع الصور التوضيحية بِطريقة مُبَسّطة. ماهو Google Webmaster tools تُقدم مُحركات البحث الرئيسية -بِما في ذلك مُحرك البحث Google- أدوات مجانية لِمُشرفي المواقع. وتُساعد أدوات مُشرفي المواقع (Google Webmaster Tools) مُشرفي المواقع على التحكم بِشكل أفضل في ما يَتعلق بِمدى تفاعل محرك البحث Google، كذلك الحصول على مَعلومات مُفيدة من Google عن مَواقِعهم، مع العِلم أنَّ استخدام أدوات مُشرفي المواقع لا يُساعد في الحصول على مُعاملة تَفضيلية من قِبل محرك البحث، بَل يُساعد في تحديد المشكلات التي يمكن أن تفيد موقعك إذا تَمت مُعالجتها في تَحسين الأداء بالنسبة إلى نَتائج البحث، فإن استخدام خدمة مشرفي المواقع Google Webmaster Tools ، يُتيح لك عمل الآتي : مَعرفة أجزاء الموقع التي واجه بِها برنامج Googlebot مُشكلات في الزحف إليها.إبلاغ Google عن أي ملف sitemap بتنسيق XML أو بِرابط خُلاصة RSS.تحليل ملفات robots.txt وإنشاؤها.حذف عناوين URL التي زحف إليها Googlebot.تَعيين النِطاق المُفضل لك.تَحديد المُشكلات المُتعلقة بالعنوان والعلامات الوَصفية التعريفية.فهم أهم طلبات البَحث المُستخدمة للوصول إلى موقع ما.أخذ فكرة عن كيفية رؤية Googlebot للصفحات.حذف روابط أقسام الموقع الغَير مرغوب فيها والتي قد يَستخدمها Google في نتائج البحث.تَلقي إشعار يَتعلق بانتهاكات إرشادات الجودة وطلب إعادة النظر في الموقع.إضافة موقعك على Google Webmaster toolsسنبدأ العمل بفتح حساب Google Webmaster Tools وإضافة موقعك الالكتروني باتباع الخطوات التالية: سجّل الدخول إلى أدوات مُشرفي المواقع Google Webmaster tools باستخدام حِساب Google.أُنقر على الزر إضافة موقع Add Site ، واكتب عنوان URL للموقع الذي تُريد إضافته وتأكد من كتابة عنوان URL بالكامل، مثل: http://www.example.com. أنقر على مُتابعة وعندئذ، تَفتح صفحة التحقق من الموقع.في مربع الاسم، اكتب اسمًا لموقعك.حدد طريقة إثبات الملكية التي تريدها، واتبع الإرشادات. تَعمل بيانات أدوات مشرفي المواقع وميزة إعداد التقارير على أفضل ما يكون على مُستوى الموقع. فعلى سبيل المثال، إذا اشتمل موقعك http://www.example.com على أقسام منفصلة لبلدان مختلفة، فإننا نُوصي بإضافة كل من هذه المواقع الفرعية أو المجلدات الفرعية كموقع منفصل. فمثلاً، إذا كان لديك موقع سفر يشتمل على مجلدات فرعية خاصة تغطي لبنان ومصر والمغرب، فيمكنك إضافة المواقع التالية إلى حساب أدوات مشرفي المواقع: http://www.example.comhttp://www.example.com/lebanonhttp://www.example.com/egypthttp://www.example.com/moroccoوبالمثل، إذا كان موقعك يحتوي على إصداري http:// وhttps://، فيجب إضافة كُل إصدار كموقع مُنفصل. استهداف البلد على Google Webmaster toolsيعرض بحث Google المواقع الأكثر صلة وفائدة كاستجابة لِطلب البَحث الذي أجراه المُستخدم و لذلك يُمكن أن تَختلف النتائج التي نَعرِضها لِمُستخدم في الإمارات عن النتائج التي نَعرضها لِمستخدم في السعودية. إذا كان مَوقعك ذا نِطاق عام على المستوى العلوي، مثل .com أو .org، ويَستهدف مُستخدمين في مَواقع جُغرافية مُحددة، يُمكنك تَزويدنا بالمعلومات التي تُساعد Google في تَحديد الشكل الذي يَظهر به مَوقعك على الويب في نَتائج البحث و هذا يُؤدي إلى تَحسين نتائج بحث Google في ما يَتعلق بِطلبات البَحث الجُغرافية و لن يُؤثر في ظهور مَوقعك في نتائج البحث ما لم يَحصر المُستخدم نطاق البحث على بلد مُعَيَّن. إذا كان موقعك يَتضمن نِطاقًا يتضمن رمز البلد في المستوى العلوي (مثل: (.psفهذا يعني أنه مرتبط حاليًا بمنطقة جغرافية (مثل فلسطين في هذه الحالة). وفي هذه الحالة، لن تتمكن من تحديد موقع جغرافي. تعيين البلد المستهدفانتقل إلى قائمة زيارات البحث Search Traffic.اختر علامة التبويب "البلد" "Country" من قسم الاستهداف الدولي International Targeting.حدد مربع الاختيار الهدف الجغرافي Target User in واختر البلد المستهدف.إذا كنت تريد التأكد من عدم اقتران موقعك بأي بلد أو منطقة، فحدد غير مدرج Unlisted في القائمة المنسدلة. إذا لَم يَتِم إدخال أية مَعلومات في أدوات مشرفي المواقع سَيعتمد Google بِشكل كَبير على نِطاق البلد لهذا الموقع (مِثل .ps و(.eg. وإذا كُنت تَستخدم نِطاقًا دوليًا.com أو .org أو .eu سَيعتمد Google على إشارات مُتعددة تَتَضمن عِنوان IP ومَعلومات الموقع في الصفحة والروابط المُؤدية إلى الصفحة وأية مَعلومات ذات صِلة مِن أماكن Google وإذا تَم تَغيير المُستضيف لِنطاق البلد فيجب ألا يَحدث أي تأثير، وإذا تَم تَغيير المُستضيف لِنطاق دَولي إلى مُوفِر في بلد آخر، فإننا ننصح باستخدام أدوات مشرفي المواقع لإعلام Google بالبلد الذي يَجب أن يَقترن به مَوقعك. هذا الإعداد مُخَصص للبيانات الجُغرافية فقط إذا كُنت تَستهدف المُستخدمين في مَواقع مُختلفة فمثلاً إذا كان لَديك مَوقع بالفَرنسية تُريد أن يَقرأه المُستخدمون في فرنسا وكندا ومالي فلا تستخدم هذه الأداة لتعيين فرنسا كمنطقة جغرافية، بل يكون تَحديد فرنسا كهدف جغرافي مفيدًا لموقع ويب خاص بأحد المطاعم مثلاً: فإذا كان المطعم في كندا، فمن المرجح ألا يكون ذا أهمية لأشخاص في فَرنسا. أما إذا كان المحتوى باللغة الفرنسية ويمثل أهمية لأشخاص في بلدان/أقاليم مُتعددة، فَسيكون الأفضل على الأرجح ألا يتم حصره على منطقة جغرافية مُعينة. كيفية إنشاء ملف Robot.txtملف robots.txt عبارة عن ملف في جَذر مَوقعك الإلكتروني يُبين أجزاء الموقع التي لا تَرغب في وصول زواحف مُحركات البحث إليها. يستخدم الملف Robots Exclusion Standard وهو بُرتوكول يَتَضمن مَجموعة صغيرة مِن الأوامر التي يُمكنك استخدامها لِتوضيح إمكانية الوصول إلى مَوقِعك الإلكتروني حَسب القسم وحَسب أنواع مُحددة مِن زواحف الويب (مثل زواحف الجوال مُقابل زواحف سطح المكتب). مُلاحظة: لا تَحتاج إلى ملف robots.txt إلا إذا كان مَوقعك يَتَضمن مُحتوى لا تُريد أن يُفهرسه مُحرك بحث Google أو مُحركات البحث الأخرى . و لإختبار عناوين URL التي يستطيع مُحرك البحث Google الدخول إليها وتِلك التي لا يستطيع الدخول إليها على موقعك الإلكتروني، جرب استخدام أداة اختبار Tester robots.txt. قبل إنشاء ملف robots.txt، يَجب مَعرفة مَخاطر هذه طَريقة لحَظر عناوين URL، ففي بَعض الأحيان قَد تَحتاج إلى استخدام آليات أُخرى لِضمان عَدم إمكانية العثور على عناوين URL لِمَوقعك على الوِب. إرشادات ملف Robots.txt عُبارة عن تَوجيهات فقطلا يُمكن لإرشادات ملفات robots.txt فرض سُلوك مُعَين على الزاحف إلى موقعك الإلكتروني بل إنها تَعمل بِمثابة تَوجيهات للزواحف أثناء وصولها إلى موقعك، فإذا أردت الحفاظ على المعلومات آمنة مِن زواحف الويب، فَمِن الأفضل استخدام طُرق حظر أخرى مِثل حماية الملفات الخاصة على الخادم بكلمة مرور . و بالرغم مِن اتباع زواحف الويب طيبة السمعة للتوجهات الواردة في ملف robots.txt، فَقد يُفسر كُل زاحف التوجهات بِشكل مُختلف، لِذا عَليك مَعرفة البُنية الصحيحة للتعامل مَع زواحف الويب المُختلفة، نظرًا لأن بعض هذه البرامج قد لا يَتَمكن مِن فَهم إرشادات مُعَينة. لا يُمكن لِتَوجهات robots.txt مَنع الإحالة إلى عناوين URL لِمَوقعك مِن المواقع الإلكترونية الأُخرى، بَينما لا يزحف مُحرك البحث Google إلى المُحتوى المَحظور بِملف robots.txt أو يُفهرسه، قَد يَعثر على عنوان URL غير مَسموح بالوصول إليه وَارد مِن أماكن أخرى على الويب ويَعمل المحرك على فهرسته ونَتيجة لِذلك يُمكن أن يَستمر ظهور عِنوان URL ورُبما المَعلومات الأُخرى المُتاحة بِشكل عام مِثل نَص الرَابط في الروابط المُؤدية إلى الموقع وذلك في نتائج بحث Google، يُمكنك إيقاف ظهور عنوان URL في نَتائج بَحث Google تمامًا باستخدام ملف robots.txt بالاشتراك مع طُرق أُخرى لِحظر عناوين URL مثل حماية الملفات على الخادم بكلمة مرور أو إدراج علامات وصفية لتوجيه الفهرسة في HTML. مُلاحظة: قَد يُؤدي الجمع بَين تَوجيهات مُتعددة للزحف والفَهرسة إلى تَعطيل بَعض التوجيهات للأخرى، لِذا تَعرف على كَيفية التهيئة الصحيحة للتَوجيهات بقراءة الجمع بين الزحف والفهرسة / قسم توجيهات العرض في مستندات Google Developers. إنشاء ملف Robot.txtلِتتمكن من إنشاء ملف robots.txt عليك الدخول إلى جذر نطاقك ويُمكنك إنشاء ملف robots.txt أو تَعديل ملف حالي باستخدام أداة اختبار robots.txt ويُتيح لَك هذا اختبار التَغييرات التي أدخلتها عِند ضَبط ملفrobots.txt. التعرف على بنية robots.txtيَستخدم ملف robots.txt كلمتين رئيسيتين، وهُما User-agent و Disallow. تمثل كلمة User-agent "وكلاء المستخدم" برامج روبوت لمحركات البحث (أو برامج زحف الويب)، و يَتِم عرض مُعظم وكلاء المستخدم في قاعدة بيانات برامج روبوت الويب. و كلمة Disallow (عدم السماح) تُمثل أمرًا يَتم تَوجيهُه إلى وَكيل المُستخدم بِحَيث لا يَتم الدخول إلى عنوان URL مُعَين و لِمنح مُحرك بحث Google إمكانية الدخول إلى عنوان URL مُعين يُمثل دَليلاً فَرعيًا يَندرج ضِمن دَليل رَئيسي غير مسموح بالدخول إليه، يُمكنك استخدام كلمة رئيسية ثالثة، ألا وهي Allow. يستخدم محرك بحث Google العديد من وكلاء المستخدم، مثل Googlebot للجوّال لِبحث Google على هاتفك وGooglebotImage لبحث صور Google وسَيَتبِع مُعظم وكلاء المُستخدم لِمُحرك البحث Google القواعد التي تعدها لبرنامج Googlebot، ولكن يُمكنك تَجاوز هذا الخيار وإنشاء قواعد خاصة لِوكلاء مستخدم مُعَينين لِمُحرك البحث Google أيضًا. تَتَمثل بُنية استخدام الكلمات الرئيسية في ما يلي: User-agent: [the name of the robot the following rule applies to] Disallow: [the URL path you want to block] Allow: [the URL path in of a subdirectory, within a blocked parent directory, that you want to unblock] يَتِم اعتبار هذين السطرين معًا إدخالاً واحدًا في الملف حَيث تنطبق قاعدة Disallow على وكلاء المُستخدم المُحددين أعلاها فقط و يُمكنك تَضمين ما تَشاء مِن إدخالات ، كما يُمكن أن تَنطبق أسطر Disallow مُتعددة على العديد مِن وكلاء المستخدم وكل ذلك عبر إدخال واحد ويُمكنك ضبط الأمر User-agent لِينطبق على كُل برامج زحف الويب عَن طريق إدراج علامة (*) نِجمة كما هو موضح في المثال أدناه: User-agent: * منع الدخول إلى... النموذج الموقع بأكمله باستخدام الشرطة المائلة للأمام (/) : Disallow: / دليل ومحتوياته عن طريق إتباع اسم الدليل بشرطة مائلة للأمام: Disallow: /sample-directory/ صقحة ويب عن طريق إدراج الصفحة بعد الشرطة المائلة : Disallow: /private_file.html صورة مُعينة مِن صور Google: User-agent: Googlebot-Image Disallow: /images/dogs.jpg كُل الصور على موقعك من صور Google: User-agent: Googlebot-Image Disallow: / ملفات من نوع معين على سبيل المثال، ملفات .gif : User-agent: Googlebot Disallow: /*.gif$ الصفحات على موقعك، ولكن مع عرض إعلانات AdSense على تلك الصفحات، وعدم السماح بدخول كل برامج التَتَبُع الأُخرى بِخلاف بَرنامج تَتَبُع Mediapartners-Google. ويؤدي هذا إلى إخفاء الصفحات من نتائج البحث ، ولكن يظل بإمكان زاحف الويب Mediapartners-Google تحليل الصفحات لِتحديد الإعلانات التي سيعرضها. User-agent: * Disallow: / User-agent: Mediapartners-Google Allow: / مُلاحظة: الأوامر تتأثر بحالة الأحرف على مَثال يؤدي استخدام Disallow: /file.asp إلى منع الدخول إلى http://www.example.com/file.asp، بينما يتيح الدخول إلى http://www.example.com/File.asp. كما يتجاهل Googlebot أيضًا المسافة البيضاء والأوامر غير المعروفة في ملف robots.txt. قاعدة مطابقة الأنماط النموذج لمنع الدخول إلى أي تسلسل من الأحرف، استخدم علامة النجمة (*)على سبيل المثال، يؤدي نموذج الشفرة إلى منع الدخول إلى كل الأدلة الفرعية التي تبدأ بكلمة "private": User-agent: Googlebot Disallow: /private*/ لمنع الدخول إلى كل عناوين URL التي تتضمن علامات استفهام (?) على سبيل المثال، يؤدي نموذج الشفرة إلى منع الدخول إلى عناوين URL التي تبدأ باسم النطاق، متبوعًا بأية سلسلة، تتبعها علامة استفهام ثم تنتهي العناوين بأية سلسلة: User-agent: Googlebot Disallow: /*? لمنع الدخول إلى أي عناوين URL تنتهي بطريقة محددة، استخدم $. على سبيل المثال، يؤدي نموذج الشفرة إلى منع الدخول إلى أي عناوين URL تنتهي بالامتدادxls.: User-agent: Googlebot Disallow: /*.xls$ لمنع الدخول إلى أنماط باستخدام أمري Allow وDisallow، راجع النموذج على اليسار. في هذا المثال، تشير علامة الاستفهام ? إلى معرّف جلسة. ويجب عادة منع دخول محرك البحث Google إلى عناوين URL التي تحتوي على هذه المعرّفات، وذلك لمنع الزحف إلى صفحات مكررة. وفي الوقت ذاته، إذا كانت هناك بعض عناوين URL تنتهي بعلامة الاستفهام ? وتمثل نسخًا من الصفحة تريد تضمينها، يمكنك استخدام الطريقة المنهجية التالية للجمع بين استخدام أمر Allow وأمر Disallow: سيؤدي الأمر Allow: /*?$ إلى السماح بالدخول إلى أي عنوان URL ينتهي بعلامة الاستفهام ? (وسيؤدي بشكل أكثر تحديدًا إلى السماح بالدخول إلى أي عنوان URL يبدأ باسم نطاقك، متبوعًا بسلسلة، تتبعها علامة الاستفهام ?، مع عدم إتباع علامة الاستفهام ? بأي حرف. سيؤدي الأمر Disallow: / *? إلى منع الدخول إلى أي عنوان URL يتضمن علامة الاستفهام ? وسيؤدي بشكل أكثر تحديدًا إلى منع الدخول إلى عنوان URL يبدأ باسم نطاقك، متبوعًا بسلسلة، متبوعة بعلامة استفهام تتبعها سلسلة). User-agent: * Allow: /*?$ Disallow: /*? يجب تطبيق قواعد الحفظ التالية حتى يتسنى لبرنامج الزحف Googlebot وبرامج زحف الويب الأخرى العثور على ملف robots.txt: يجب حفظ شفرة robots.txt كملف نصي من نوع TXT،يجب وضع الملف في الدليل الموجود على أعلى مستوى للموقع أو جذر النطاق،يجب تسمية ملف robots.txt بكلمة robots.txt.على سبيل المثال، ملف robots.txt المحفوظ في جذر النطاق example.com، على عنوان URL http://www.example.com/robots.txt، سيتم اكتشافه عن طريق برامج زحف الويب، بينما لن يتم العثور على ملف robots.txt على http://www.example.com/not_root/robots.txt عن طريق أي زاحف ويب. وبذلك نَكون قَد وَصلنا إلى نِهاية هذا المقال لشرح مدخل عن ِنظام Google Webmaster Toola بَعدما شَرحنا كيفية إضافة الموقع والاستهداف الدولي وإنشاء ملف Robot.txt، نسأل الله العلى القدير أن نَكون قَد قَدمنا لَكم الاستفادة.1 نقطة
-
منذ زمن سحيق، كانت الذاكرةُ أكثر وظيفة نحتاجها ونعتمد عليها في الحاسوب. ورغم اختلاف التقنيات وأساليب التنفيذ الكامنة وراءها، إلّا أنّ معظم الحواسيب تأتي بالعتاد الضروريّ لمعالجة المعلومات وحفظها بأمان لاستخدامها في المستقبل متى احتجنا لها. لقد صار من المستحيل في عالمنا الحديث تخيل أيّ عمل لا يستفيد من هذه القدرة في الأجهزة، سواء كانت خواديم أو حواسيب شخصية أو كفّيّة. تُعالَج البيانات وتُسجَّل وتُسترجَع مع كل عملية، وفي كل مكان من الألعاب إلى الأدوات المتعلقة بالأعمال، بما فيها المواقع. أنظمة إدارة قواعد البيانات (DataBase Management Systems – DBMS) هي برمجيات عالية المستوى تعمل مع واجهات برمجة تطبيقات (APIs) أدنى منها في المستوى، وتلك الواجهات بدورها تهتم بهذه العمليات. لقد تم تطوير العديد من أنظمة إدارة قواعد البيانات (كقواعد البيانات العلائقيّة relational databases، وnoSQL، وغيرها) لعقود من الزمن للمساعدة على حلّ المشكلات المختلفة، إضافة إلى برامج لها (مثل MySQL ,PostgreSQL ,MongoDB ,Redis، إلخ). سنقوم في هذا المقال بالمرور على أساسيّات قواعد البيانات وأنظمة إدارة قواعد البيانات. وسنتعرف من خلالها على المنطق الذي تعمل به قواعد البيانات المختلفة، وكيفية التفرقة بينها. أنظمة إدارة قواعد البياناتإن مفهوم نظام إدارة قاعدة البيانات مظلّةٌ تندرج تحتها كلّ الأدوات المختلفة أنواعها (كبرامج الحاسوب والمكتبات المضمّنة)، والتي غالبًا تعمل بطرق مختلفة وفريدة جدًّا. تتعامل هذه التطبيقات مع مجموعات من المعلومات، أو تساعد بكثرة في التعامل معها. وحيث أن المعلومات (أو البيانات) يُمكِن إن تأتي بأشكال وأحجام مختلفة، فقد تم تطوير العشرات من أنظمة قواعد البيانات، ومعها أعداد هائلة من تطبيقات قواعد البيانات منذ بداية النصف الثاني من القرن الحادي والعشرين، وذلك من أجل تلبية الاحتياجات الحوسبيّة والبرمجية المختلفة. تُبنى أنظمة إدارة قواعد البيانات على نماذج لقواعد البيانات: وهي بُنى محدّدة للتعامل مع البيانات. وكل تطبيق ونظام إدارة محتوى جديد أنشئ لتطبيق أساليبها يعمل بطريقة مختلفة فيما يتعلق بالتعريفات وعمليات التخزين والاسترجاع للمعلومات المُعطاة. ورغم أنّ هناك عددًا كبيرًا من الحلول التي تُنشئ أنظمة إدارة قواعد بيانات مختلفة، إلّا أنّ كلّ مدة زمنية تضمّنت خيارات محدودة صارت شائعة جدًّا وبقيت قيد الاستخدام لمدة أطول، والغالب أنّ أكثرها هيمنة على هذه الساحة خلال العقدين الأخيرين (وربما أكثر من ذلك) هي أنظمة إدارة قواعد البيانات العلائقيّة (Relational Database Management Systems – RDBMS). أنواع قواعد البياناتيستخدم كلُّ نظام إدارة بياناتٍ نموذجًا لقواعد البيانات لترتيب البيانات التي يديرها منطقيًّا. هذه النماذج (أو الأنواع) هي الخطوة الأولى والمحدّد الأهم لكيفية عمل تطبيق قواعد البيانات وكيفية تعامله مع المعلومات وتصرفه بها. هناك بعض الأنواع المختلفة لنماذج لقواعد البيانات التي تعرض بوضوع ودقّة معنى هيكلة البيانات، والغالب أن أكثر هذه الأنواع شهرةً قواعدُ البيانات العلائقيّة. ورغم أنّ النموذج العلائقيّ وقواعد البيانات العلائقيّة (relational databases) مرنة وقويّة للغاية –عندما يعلم المبرمج كيف يستخدمها–، إلّا أنّ هناك بعض المشكلات التي واجهات عديدين، وبعض المزايا التي لم تقدمها هذه الحلول. لقد بدأت حديثًا مجموعة من التطبيقات والأنظمة المختلفة المدعوّة بقواعد بيانات NoSQL بالاشتهار بسرعة كبيرة، والتي قدمت وعودًا لحل هذه المشكلات وتقديم بعض الوظائف المثيرة للاهتمام بشدّة. بالتخلص من البيانات المهيكلة بطريقة متصلّبة (بإبقاء النمط المعرّف في النموذج العلائقيّ (relational model))، تعمل هذه الأنظمة بتقديم طريقة حرّة أكثر في التعامل مع المعلومات، وبهذا توفّر سهولة ومرونة عاليتين جدًّا؛ رغم أنّها تأتي بمشاكل خاصة بها –والتي تكون بعضها جدّيّة– فيما يتعلق بطبيعة البيانات الهامّة والتي لا غنى عنها. النموذج العلائقيّيقدّم النظام العلائقيّ الذي ظهر في تسعينات القرن الماضي طريقة مناسبة للرياضيات في هيكلة وحفظ واستخدام البيانات. توسّع هذه الطريقة من التصاميم القديمة، كالنموذج المسطّح (flat)، والشبكيّ، وغيرها، وذلك بتقديمها مفهوم "العلاقات". تقدّم العلاقات فوائد تتعلق بتجميع البيانات كمجموعات مقيّدة، تربط فيها جداول البيانات –المحتوية على معلومات بطريقة منظمة (كاسم شخص وعنوانه مثلاً)– كل المدخلات بإعطاء قيم للصفات (كرقم هوية الشخص مثلًا). وبفضل عقود من البحث والتطوير، تعمل أنظمة قواعد البيانات التي تستخدم النموذج العلائقيّ بكفاءة وموثوقيّة عاليتين جدًّا. أضف إلى ذلك الخبرة الطويلة للمبرمجين ومديري قواعد البيانات في التعامل مع هذه الأدوات؛ لقد أدّى هذا إلى أن يصبح استخدام تطبيقات قواعد البيانات العلائقيّة الخيار الأمثل للتطبيقات ذات المهام الحرجة، والتي لا يمكنها احتمال فقدان أيّة بيانات تحت أيّ ظرف، وخاصة كنتيجة لخلل ما أو لطبيعة التطبيق نفسه الذي قد يكون أكثر عرضة للأخطاء. ورغم طبيعتها الصارمة المتعلقة بتشكيل والتعامل مع البيانات، يمكن لقواعد البيانات العلائقيّة أن تكون مرنة للغاية وأن تقدم الكثير، وذلك بتقديم قدر ضئيل من المجهود. التوجّه عديم النموذج (Model-less) أو NoSQLتعتمد طريقة NoSQL في هيكلة البيانات على التخلص من هذه القيود، حيث تحرر أساليب حفظ، واستعلام، واستخدام المعلومات. تسعى قواعد بيانات NoSQL إلى التخلص من العلائقات المعقدة، وتقدم أنواع عديدة من الطرق للحفاظ على البيانات والعمل عليها لحالات استخدام معينة بكفاءة (كتخزين مستندات كاملة النصوص)، وذلك من خلال استخدامها توجّها غير منظم (أو الهيكلة على الطريق / أثناء العمل). أنظمة إدارة قواعد بيانات شائعةهدفنا في هذا المقال هو أن نقدم لك نماذج عن بعض أشهر حلول قواعد البيانات وأكثرها استخدامًا. ورغم صعوبة الوصول إلى نتيجة بخصوص نسبة الاستخدام، يمكننا بوضوح افتراض أنّه بالنسبة لغالب الناس، تقع الاختيارات بين محرّكات قواعد البيانات العلائقيّة، أو محرك NoSQL أحدث. لكن قبل البدء بشرح الفروقات بين التطبيقات المختلفة لكل منهما، دعنا نرى ما يجري خلف الستار. أنظمة إدارة قواعد البيانات العلائقيّةلقد حصلت أنظمة إدارة قواعد البيانات العلائقيّة على اسمها من النموذج الذي تعتمد عليه، وهو النموذج العلائقيّ الذي ناقشناه أعلاه. إنّ هذه الأنظمة –الآن، وستبقى لمدة من الزمن في المستقبل– الخيار المفضّل للحفاظ على البيانات موثوقة وآمنة؛ وهي كذلك كفؤة. تتطلب أنظمة إدارة قواعد البيانات العلائقيّة مخططات معرفة ومحددة جيدًا –ولا يجب أن يختلط الأمر مع تعريف PostgreSQL الخاص بهذه الأنظمة– لقبول هذه البيانات. تشكّل هذه الهيئات التي يحددها المستخدم كيفية حفظ واستخدام البيانات. إنّ هذه المخططات شبيهة جدًّا بالجداول، وفيها أعمدة تمثّل عدد ونوع المعلومات التي تنتمي لكل سجل، والصفوف التي تمثّل المدخلات. من أنظمة إدارة قواعد البيانات الشائعة نذكر: SQLite: نظام إدارة قواعد بيانات علائقيّة مضمّن قويّ جدًّا.MySQL: نظام إدارة قواعد بيانات علائقيّة الأكثر شهرة والشائع استخدامه.PostgreSQL: أكثر نظام إدارة قواعد بيانات علائقيّة كيانيّ (objective-RDBMS) متقدم وهو متوافق مع SQL ومفتوح المصدر.ملاحظة: لمعرفة المزيد عن أنظمة إدارة قواعد بيانات NoSQL، راجع المقالة التالية عن الموضوع: A Comparison Of NoSQL Database Management Systems. أنظمة قواعد بيانات NoSQL (أو NewSQL)لا تأتي أنظمة قواعد بيانات NoSQL بنموذج كالمستخدم في (أو الذي تحتاجه) الحلول العلائقيّة المهيكلة. هناك العديد من التطبيقات، وكلّ منها تعمل بطريقة مختلفة كليًّا، وتخدم احتياجات محدّدة. هذه الحلول عديمة المخططات (schema-less) إمّا تسمح تشكيلات غير محدودة للمدخلات، أو –على العكس– بسيطة جدًّا ولكنها كفؤة للغاية كمخازن قيم معتمد على المفاتيح (key based value stores) مفيدة. على خلاف قواعد البيانات العلائقيّة التقليديّة، يمكن تجميع مجموعات من البينات معًا باستخدام قواعد بيانات NoSQL، كـ MongoDB مثلًا. تُبقي مخازن المستندات هذه كل قطعة من البيانات مع بعضها كمجموعة واحدة (أي كملف) في قاعدة البيانات. يمكن تمثيل هذه المستندات ككيانات بيانات منفردة، مثلها في ذلك كمثل JSON، ومع ذلك تبقى كراسات، وذلك يعتمد على خصائصها. ليس لقواعد بيانات NoSQL طريقة موحدة للاستعلام عن البيانات (مثل SQL لقواعد البيانات العلائقيّة) ويقدم كلّ من الحلول طريقته الخاصّة للاستعلام. ملاحظة: لمعرفة المزيد عن أنظمة إدارة قواعد البيانات العلائقيّة، ألق نظرة على هذه المقالة المتعلقة بالموضوع: A Comparison Of Relational Database Management Systems. مقارنة بين أنظمة إدارة قواعد بيانات SQL و NoSQLمن أجل الوصول إلى نتيجة بسيطة ومفهومة، لنحلّل أولًا الاختلافات بين أنظمة إدارة قواعد البيانات: هيكلية ونوع البيانات المحتفظ بها:تتطلب قواعد البيانات العلائقيّة SQL هيكلة ذات خصائص محدّدة للحفاظ على البيانات، على خلاف قواعد بيانات NoSQL التي تسمح بعمليات انسياب حُرّ (free-flow operations). الاستعلام: وبغضّ النظر عن تراخيصها، تستخدم كلّ قواعد البيانات العلائقيّة معيار SQL إلى حدّ ما، ولهذا يمكن الاستعلام فيها بلغة SQL (أي Structured Query Language). أما قواعد بيانات NoSQL فلا تستخدم طريقة محدّدة للعمل على البيانات التي تديرها. التحجيم: يمكن تحجيم كلي الحلين عموديًّا (أي بزيادة موارد النظام). لكن لكون حلول NoSQL تطبيقات أحدث (وأبسط)، فهذا يجعلها تقدّم وسائل أسهل بكثير لتحجيمها أفقيًّا (أي بإنشاء شبكة عنقودية cluster من أجهزة متعدّدة). المتانة Reliability: عندما يتعلق الأمر بالمتانة والثقة الآمنة بالقَيد المنفّذ، تبقى قواعد بيانات SQL الخيار الأفضل. الدعم: لأنظمة إدارة قواعد البيانات العلائقيّة تاريخ طويل استمر لعقود من الزمن. إنها شائعة جدًّا، ومن السهل إيجاد دعم سواء مجانيّ أو مدفوع. إذا حدثت مشكلة، فمن الأسهل حلّها عليها من قواعد بيانات NoSQL التي شاعت حديثًا، وخاصة إذا كان الحلّ موضع السؤال ذا طبيعة معقّدة (مثل MongoDB). احتياجات حفظ واستعلام البيانات المعقدة: إنّ قواعد البيانات العلائقيّة بطبيعتها الخيار الأمثل لاحتياجات حفظ البيانات والاستعلامات المعقّدة. إنها أكثر كفاءة وتتفوق في هذا المجال. ترجمة -وبتصرّف- للمقال Understanding SQL And NoSQL Databases And Different Database Models لصاحبه O.S. Tezer.1 نقطة
-
توجد الكثير من الطُرق لتغيير لون الأعيُن عن طريق برنامج الفوتوشوب ومنها ما سنراه في هذا الدرس. سنقوم في هذا الدرس بتغيير لون عين طفل من الأزرق إلى الأخضر وهذه هي النتيجة النهائية بعد تتبع جميع الخطوات: نجلب الصورة التالية إلى المشروع: نبدأ بفتح الصورة السابقة كما هو موضح بالصورة التالية عن طريق الذهاب إلى القائمة: File > Open نقوم بتكرار الطبقة الخاصة بصورة العين عن طريق الضغط على Ctrl + J أو ضغط على الزر الأيمن للفأرة واختيار الخيار التالي: أولاً يجب تحديد الجزء المراد تغيير لونه؛ أبسط أداة يُمكن استخدامها هي أداة Elliptical Marquee Tool والتي يمكن تفعيلها كما بالصورة أدناه: نتوجه إلى أقصى العين اليمنى كمثال؛ نضغط على الزر الأيمن للفأرة ونبدأ بسحب التحديد إلى جهة اليسار: نُكمل السحب حتى نصل إلى نهاية العين المراد تغيير لونها: الآن نبدأ بتغيير لون العين، ومع ابقاء التحديد توجه إلى القائمة: Image > Adjustement > Hue/Saturation ستفتح لك نافذة فيها ثلاث قيم؛ أولا تأكد من التأشير على خيار Colorize ثم ابدأ بتغيير القيم الموجودة إلى اللون الذي تريد ان يتم تطبيقه: اضغط Ok بعد الإنتهاء وستلاحظ تغير لون العين. قد تظهر لك مشكلة ان اللون أكبر من منطقة العين كما بالصورة التالية: لحل هذه المشكلة قم بعمل قناع أو Mask على الطبقة العٌلوية كما بالصورة التالية: ستلاحظ ان مربعاً صغيراً قد تم انشائه بالجهة اليُمنى: توجه إلى قائمة الفرش واختر الفرشاة الناعمة مع تخفيف الشفافية إلى قيمة أقل من 50%: بعد اختيار الفرشاة تأكد من اختيارك للون الأسود و أنك تعمل على الطبقة العلوية. ثم ابدأ بمسح الأجزاء التي قد تكون حدودها واضحة؛ ستلاحظ اختفاءها بشكل تدريجي وهذه هي النتيجة النهائية:1 نقطة
-
سؤال جيد جداً أعتقد سيستفيد الجميع من الإجابه عليه. يقع دائماً أغلب المبتدئين في مثل هذه المشكله وكذلك المحترفين ايضاً بسبب عدم الإنتباه إلي أولوية ترتيب الكود بطريقه صحيحة ومنطقيه. إذا كنت تُريد زياده المتغير $x بواحد فعليك الإنتباه لموقعه في الكود اولاً. وزيادة لمعلوماتِك انه هناك طريقتين لأستخدام الزياده على المتغيرات من نوع INTEGER اي التي قيمتة رقمية وليست نص. وكذلك في عملية النقصان وهي عكس عمليه الزياده. دعونا نكتشف هذه الفروقات وكيف نستخدمها. سنفترض أن المتغير $x يساوي القيمة 1 ونريد ان نستخدم معه ++ للزياده عليه بـ 1 لتُصبح قيمته 2 وثم نقوم بعملية الجمع التي نُريد. لاحظ فقط الترتيب في هذا المثال: <?php $x = 1; $x++; echo 1 + $x; ?>اعتقد هذا منطقياً جداً حتى الان. انشأنا متغير $x يساوي 1 ثم في سطر جديد قمنا باستخدام ++ في نهاية المتغير $x لنزيد عليه 1 وبعد ذلك في سطر جديد قمنا بعملية الجمع 1 + $x وطباعة الناتج وهو 3 بالتأكيد. هل تعلم أخي الكريم "محمد عبدالعاطي" أن مثالك لا يوجد به الا خطأ بسيط جداً وهو انك استخدمت ++ في نهاية المتغير $x داخل عملية الجمع. اما إذا كنت استخدمت ++ قبل المتغير كان الامر سيتم بدون اي مشاكل. كيف؟! هكذا: <?php $x = 1; echo 1 + ++$x; ?>هل لاحظت الفرق البسيط؟ الفرق هو تقديم ++ قبل المتغير. ففي هذا المثال يتم اضافة الزياده علي المتغير اولاً ثم بعد ذلك يقوم بعملية الجمع وكأن الامر هكذا 1 + (1 + $x) الامر ليس صعباً او مستحيل فقط تعلم اين تضع العلامات ++ او --. هل هناك استخدام للعلامات --؟ نعم وهي لا تزيد شيءً عن استخدام ++ ولكن الفرق هنا ان -- تعمل عمل الطرح بـ 1 ايضاً لا اكثر من ذلك وإختلاف في ترتيب الكود في عملية الطرح. لنأخذ مثال على العلامات --: <?php $x = 3; echo --$x - 1; ?>هذا المثال نقول فيه أن المتغير $x يساوي 3 ويطبع عملية الطرح بتقديم المتغير الذي نريد ان نُنقص منه 1 باستخدام -- قبل المتغير ثم نطرح منه 1 ايضاً ويكون الناتج 1. إذا قمنا بعكس الترتيب سوف يكون الناتج قيمه سالبة اي -1. كيف؟! هكذا: <?php $x = 3; echo 1 - --$x; ?>هذا هو منطق عملية الطرح أن يكون الأكبر هو ما تتم عليه عملية الطرح اي لا يصح ان نقول 1 طرح 5 وأن الاستخدام الصحيح هو 5 طرح 1 ليصبح الناتج 4 لمزيد من الأمثله والتفاصيل حول استخدام هذه العلامات من موقع PHP الرسمي اضغط هنا.1 نقطة