أشهر أنواع قواعد البيانات (الجزء الثاني)

mysql-logo
* قواعد البيانات ماي إس كيو إل MYSQL : هو نظام إدارة قواعد البيانات العلائقي يعتمد التعامل معها على لغة إس كيو إل.  ماي إس كيو إل من المنتجات مفتوحة المصدر ينشر كوده المصدري تحت رخصة” Sun Microsystems”  (والتي هي حاليا فرع من أوراكل).

– وهي نظام إدارة قواعد البيانات يعتمد التعامل معها علي لغة SQL ، و تعتبر لغة MySQL ثاني أكثر نظام إدارة قواعد بيانات مفتوح المصدر إستخداما في العالم، و تعتبر لغة MySQL اختيار مشهور لقاعدة البيانات التي تستخدم في تطبيقات الويب.تستخدم  mysql  في المشاريع للبرمجيات الحرة التي تتطلب نظام إدارة قواعد البيانات و يتم استخدام MySQL أيضا في العديد من المواقع، كما أن MySQL تعمل علي العديد من المنصات.

* تاريخها:-
– لقد تم اكتمال و اطلاق هذة اللغة عام 1995م تحت مسمى MySQL 1.0.بعد شهور قليلة تم اطلاق MySQL 3.11  بشكل علني كملفات تنفيذية لنظام السولاريز ، و تبعها منصة اللينكس ( كشفرة و ملف تنفيذي )  لقد قامت شركة صن مايكروسستمز بشراء شركة MySQL AB في الآونة الأخيرة .و تتوفر MySQL على النطاق واسع من المنصات منها اللينكس و ماكنتوش و الويندوز.

* الاستخدام :-

– عادة تستخدم في مشاريع البرمجيات الحرة التي تتطلب نظام إدارة قواعد البيانات الكامل. هذه المشاريع تتضمن على سبيل المثال ووردبريس، بي إتش بي وبعض البرمجيات الأخرى . تستخدم ماي إس كيو إل أيضاً في بعض منتجات الشبكة العنكبوتية مثل ويكيبيديا، غوغل سيرش، فيس بوك ، وفليكر.

* المنصات والواجهات:-

– تعمل  لغة ماي إس كيو إل على كثير من المنصات المختلفة مثل آي بي إم ، إتش بي – يو إكس، لينكس، ماك أو إس، نت بي إس دي، نوفيل نت وار، سولاريس،  صن أو إس ومايكروسوفت ويندوز. العديد من لغات البرمجة ذات واجهات لبرمجة التطبيقات تحوي مكتبات برمجية لاستخدام قواعد بيانات ماي إس كيو إل. بالإضافة إلى ذلك، توجد واجهة ODBC تسمى MyODBC تسمح للغات البرمجة الأخرى التي تدعم واجهات ODBC بالاتصال بقواعد بيانات ماي إس كيو إل، مثل صفحات الخادم النشطة . خادم ماي إس كيو إل ومكتباته البرمجية أغلبها مكتوب بلغتي سي وسي++ القياسيتين.

* الخصائص:-

– يتميز خادم ماي إس كيو إل بسرعته الكبيرة؛ لأنه خادم قواعد بيانات متعدد المسالك ( multi-threaded) مما جعل إمكانية الاستعلام من قاعدة البيانات سريعة جدا؛ ويتميز بسهولة ربط جداوله بواجهة المستخدم التي تصمم بلغات البرمجة، فمثلا يمكنك ربطها بالبرامج المكتوبة بلغة فيجوال بيسك من خلال واجهة ODBC الخاص بها، كذلك له مكتبة خاصة به للتعامل معه من خلال أدو دوت نت.

– تعلم MySQL ليس بالأمر الصعب فقط يجب أن يكون لديك معرفة بأساسيات الـ HTML و الـ PHP و الـ SQL.

– لقد تم تصميم MySQL حول ثلاث مفاهيم رئيسية وهي السرعة و الثبات و سهولة الإستخدام ، و بالاضافة إلى ذلك أنها متاحة تحت ترخيص مفتوح المصدر GUN GPL ، مما جعلها تعتبر” أشهر قاعدة بيانات مفتوحة المصدر عالميا” من قبل شركتها الأم MySQL AB. ، لقد أصبحت أسماء مثل جوجل و ياهو و سيسكو و ناسا و HP من عملاء هذه القاعدة .

– إن تاريخ MySQL يوضح التركيز على أهم سمات نظم قواعد البيانات ألا وهما السرعة و الثبات ، مما نتج عنه نظام يبرز منافسيه بدون التضحية بالإعتمادية أو سهولة الإستخدام .

–  في أنظمة قواعد البيانات ، تعرف السرعة بالوقت المستغرق لتنفيذ استعلام و ارجاع النتائج للمستعلم ، و هي مهمة جدا لنجاح أي نظام قاعدة بيانات ، ولقد حققت MySQL نتائج عالية في هذا الموضوع بأداء أحسن من أغلب منافسيها بما فيهم الأنظمة التجارية مثل مايكروسوفت SQL Server و IBM DB2 ، إن هذا الأداء ليس مجرد صدفة ، بل نتيجة للتصميم المبدع للنظام ، فـ MySQL تستخدم بنية متعددة المهام ، و محسنات مخصصة للمهام المعقدة مثل الفهرسة و العقد ، و الإستعلامات المخبئة في الذاكرة ، كل هذا حسن من الأداء بدون الحاجة لأي برمجة مخصصة من قبل المستخدم ، و كذلك الميزة الفريدة التي تسمح باختيار محركات الحفظ مختلفة لكل جدول على حدة مما يسمح للمستخدمين بخلط و انتقاء مجموعات مختلفة من المميزات لتعطي أقصى أداء ممكن من النظام.

– عندما نأتي للإعتمادية ، فإن MySQL ذات سجل ناصع في هذا المجال ، إن MySQL هو نظام قاعدة بيانات مختبر و مصدق للإستعمال في تطبيقات ذات المهام الحرجة و عالية الحمل من قبل أكبر المؤسسات في العالم بما فيها  ناسا و HP و ياهو ، و الأن MySQL لها جذور عميقة في مجتمع المصادر الحرة ؛ فإن كل اصدار يختبر بواسطة المستخدمين حول العالم على مختلف أنظمة التشغيل و مختلف ظروف التشغل ليتم التأكد من أنها خالية من العلل قبل المصادقة على استخدامها ، و أكثر من ذلك فإن كل اصدار من MySQL يجب أولا أن تجتاز الإختبار المعد لـ MySQL و الذي يسمى “حطمني ” crash me ، و هدفه الأساسي هو محاولة جعل النظام ينهار .

– إن الأمن من الأشياء المهمة عند التعامل مع قاعدة بيانات متعددة المستخدمين ،  تأتي MySQL بنظام معقد للتحكم بالوصول و نظام صلاحيات ليمنع المستخدمين غير المصرحين من الوصول إلى قاعدة البيانات ، هذا النظام طبق على شكل خمس طبقات من الصلاحيات بشكل هرمي ، مما يمكن مدراء MySQL من حماية الوصول إلى البيانات الحساسة ، ويمكن حد المستخدمين ليؤدوا العمليات على قواعد بيانات معينة أو حقول معينة فقط ، و تسمح MySQL أيضا بإمكانية التحكم في أنواع الإستعلامات التي يمكن للمستخدم أن يشغلها على مستوى قاعدة البيانات أو الجدول أو الحقل.

– تستطيع MySQL أن تتعامل مع قواعد بيانات معقدة و ضخمة بشكل كبير بدون أن تفقد الشيء الكثير من أدائها ، إن الجداول ذات حجوم تقاس بجيجا بايت و تحوى على مئات الألوف من السجلات ليست نادرة في MySQL ، و أبسط مثال على ذلك أن موقع MySQL بنفسه يستخدم قاعدة بيانات تحوي 50 مليون سجل ، وحتى عندما تمتلئ الجداول بالبيانات فيمكنك أن تنقلها من منصة إلى أخرى بدون أي مشاكل ، حيث أن MySQL متوفرة لكلا أنظمة اليونكس و غير اليونكس بما فيها اللينكس و سولاريز و FreeBSD و OS/2 و ماكنتوش و ويندوز 95 و 98 و Me و 2000 و XP و NT و غيرها ، و هي كذلك تعمل على نطاق عريض من بنى المعالجات مثل Intel x86 و ألفا و سبارك و PowerPC و IA64 .

– إن الواجهة الأساسية لمخدم MySQL هي واجهة سطرية بسيطة ، و يوجد عميلين رسوميين للمستخدمين الذي يفضلون الواجهات الرسومية و هما MySQL Control Center و MySQL Administrator ، و اللذان طورا من قبل شركة MySQL AB لإستخدام و ادارة MySQL ، و يوجد هناك العديد من التطبيقات التي تعمل في متصفحات الإنترنت و غيرها من التطبيقات التي تسهل عملية ادارة قاعدة البيانات

– تقدم MySQL واجهة برمجية لمختلف لغات البرمجة لتمكنك من كتابة تطبيقات قواعد البيانات باللغة التي تختارها فهي تدعم PHP و جافا و سي و سي ++ و بيرل و بايثون وغيرها لتعطي المطورين الحرية القصوى في تصميم التطبيقات التي تعمد على MySQL .

– تم ترخيص نظام قاعدة البيانات MySQL تحت رخصة GPL ، والتي تسمح للمستخدمين بحرية التنزيل و الإستخدام و تعديل شفرة المصدر لحسب احتياجاتهم كل ذلك مجانا ، و لقد ساعدت هذه السياسة على زيادة شهرة MySQL و إنشاء مجتمع من المتحمسين لها حول العالم من المستخدمين و المطورين ، و يلعب هذا المجتمع دورا حيويا في جعل MySQL متقدمة على منافسيها سواء باختبار مستوى اعتماديتها و خلوها من العلل أو بتوسيع محركاتها الأساسية لتبقى مواكبة لأخر التقنيات و التطويرات. كذلك يوجد ترخيص آخر يسمح للتطبيقات التجارية التي لا تتوافق مع شروط GPL ، بالعمل على قاعدة MYSQL . لقدت أصبحت MySQL الخيار الأفضل لتطوير تطبيقات الويب 2 ، و هنا نستعرض بعض

التطبيقات التي تعمد على MySQL :
– موقع يوتيوب المشهور
– تطبيق لمحافظة على المعلومات الفورية عن مستخدمي شبكة الهاتف لشركة نوكيا
– موقع فليكر الذي يدير الملايين من الصور و المستخدمين
– الويكبيديا

* العيوب :-

– هناك اصدار او نسخة بديلة للغة mysql وافضل منها منها mysqli  وهي اختصار لـ mysql improved التي هي النسخة المطورة لmysql ،  لتلبية احتياجات اخرى واضخم من البيانات المتزايدة بشكل سريع ومتطور .!
ومن نقاط ضعف لغة MYSQL  :
–  ﻻ تستطيع التعامل مع الحجم الهائل للبيانات بالسرعة المطلوبة فقبل سنتين تقريبا قيل ان موقع twitter  الشهير قد انتقل  من mysql إلى لغة اخرى  بسبب هذا.
– تفتقر إلى الكثير من الدوال المطلوبة مثل دالة التعامل مع أكثر من إستعلام و دالة التعامل مع الإستعلامات المحضرة و الكثير من الدوال المساعدة.
– بطيئة نسبة إلى كثير من بدائلها.
– ﻻ يمكن كتابة دوالها على الشكل الكائني.
– تطورها بطيء جدا.

 

هذه التدوينة نُشرت ضمن التصنيف المقالات بواسطة فادي أحمد. أضف الرابط الدائم إلى مفضلتّك.

نبذة عن فادي أحمد

حاصل على بكالوريوس نظم معلومات حاسوبية من جامعة القدس المفتوحة - غزة-فلسطين مدرب تكنولوجيا المعلومات 2013-2014 في مدارس وكالة الغوث للجئين الفلسطينيين -غزة مدرب ومبرمج في جمعية المستقبل لرعاية ضحايا العنف -غزة -فلسطين محلل نظم/ مبرمج في جمعية الوفاق للطفولة -غزة-فلسطين 2002-2005 مدرب تكنولوجيا في جمعية الخريجين -غزة-فلسطين