قاعدة البيانات
في مجال الحواسيب، فإنَّ قاعدة البيانات (بالإنجليزيّة: Database) هي عبارة عن مجموعة من المعلومات المُنظّمة بطريقة تسمح الوصول إليها، وتعديلها، وإدارتها بسهولة. يتم استخدام قواعد البيانات من قِبَل المنظّمات من أجل تخزين المعلومات، واسترجاعها، وإدراتها. مع تطوُّر قواعد البيانات حوالي منتصف القرن الماضي، تمَّ ابتكار وسيلة جديدة لتسهيل إدارة قواعد البيانات، وذلك من خلال برمجيّات خاصّة تُسمّى نُظُم إدارة قواعد البيانات (بالإنجليزيّة: Database Management Systems (DBMS)).
نظم إدارة قواعد البيانات
نظم إدارة قواعد البيانات هي عبارة عن برمجيّات حاسوبيّة متخصّصة في إنشاء قواعد البيانات وإدارتها، وهي تُتيح لكلّ من المستخدم والمُبرمج طُرُقاً خاصّة لإنشاء البيانات، واسترجاعها، وتعديلها، أي يمكن اعتبار نظم إدارة قواعد البيانات على أنّها واجهات بين قواعد البيانات والمستخدمين النهائيين، أو بين قواعد البيانات وبرامج التطبيقات. تعتمد نُظُم إدارة قواعد البيانات لغات برمجة خاصّة تُسمّى لغات الاستعلام (بالإنجليزيّة: Query Language).
إنَّ نظام إدارة قواعد البيانات يديرثلاث أمور متعلّقة بقاعدة البيانات، وهي البيانات نفسها، ومُحرِّك قاعدة البيانات؛ والذي يسمح بالوصول إلى البيانات، أو تعديلها، أو حجبها، بالإضافة إلى مخطط قاعدة البيانات (بالإنجليزيّة: Database schema)، وجميع هذه الأشياء تهدف إلى ضمان أمن البيانات، ومصداقيّتها، وإمكانيّة الوصول إليها من قِبَل أكثر من مستخدم في نفس الوقت (بالإنجليزيّة: Concurrency)، بالإضافة إلى توفير الأدوات المناسبة للمهندسين والتقنيين من أجل إدارة قاعدة البيانات على أكمل وجه.
إقرأ أيضا:كيف أضيف صديق على الياهومن الأدوات التي يوفِّرها نظام إدارة قواعد البيانات للتقنيين والمهندسين ما يمكّنهم من متابعة حالة قاعدة البيانات وأدائها، بالإضافة إلى إنشاء نسخ احتياطي للبيانات الموجودة فيها والقدرة على استرجاعها، كما توفِّر بعض أنظمة إدارة قواعد البيانات تقنيّات آليّة لإجراء عمليّات معيّنة على قواعد البيانات كإعادة تشغيل النظام، واسترجاع البيانات، وإنشاء سجلّ لجميع العمليّات التي تمّت في فترة زمنيّة معيّنة. من الأمثلة على بعض أنظمة إدارة قواعد البيانات هي: قاعدة بيانات أوراكل (بالإنجليزية: Oracle Database)، ومايكروسوفت أكسس (بالإنجليزية: MS-Access)، مايسيكويل (بالإنجليزية: MySQL)، وقواعد البيانات غير العلائقية (بالإنجليزية: NoSQL)، وبوستجريسكل (بالإنجليزية: PostgreSQL)، وميكروسوفت إس كيو إل سيرفر (بالإنجليزية: Microsoft SQL Server).
فوائد الاستخدام
إنَّ لاستخدام نُظُم إدارة قواعد البيانات من أجل تنظيم وإدارة قواعد البيانات فوائد عدّة، منها ما يأتي:
- أمن البيانات.
- تقنيات لتمكين عدّة مستخدمين من الوصول إلى البيانات في نفس الوقت، بالإضافة إلى تحديد الأولوليّات بينهم عن طريق إقفال القاعدة عن بعض المستخدمين (بالإنجليزيّة: Locking mechanisms).
- إمكانيّة استعادة النظام بسرعة كبيرة في حال حدوث خلل فيه أو تعطّله.
- تسجيل الأنشطة المختلفة على البيانات (بالإنجليزيّة: Activity logging).
- إمكانيّة التعامل معها والوصول إلى البيانات ببساطة من خلال واجهات برمجة التطبيقات (بالإنجليزيّة: API).
لغات الاستعلام
إنَّ لغات الاستعلام (بالإنجليزيّة: Query languages) هي لغات برمجة يتم استخدامها لاسترجاع البيانات من قواعد البيانات ونُظُم المعلومات (بالإنجليزيّة: Information systems) من خلال إرسال جُمَلاً استعلاميّة (بالإنجليزيّة: Queries) شبيهة إلى حدّ كبير باللغة الإنجليزيّة، فيمكن إرسال جُمَل استعلاميّة للبحث عن بيانات معيّنة واسترجاعها من قواعد البيانات. يمكن استخدام لغات الاستعلام لإنشاء البيانات، أو تعديلها، أو استرجاعها من نُظُم إدارة قواعد البيانات. تُعَد لغة سيكويل (بالإنجليزيّة: Structured Query language) أو SQL مثالاً على لغات الاستعلام، فلاسترجاع جميع بيانات العُملاء في شركة من جدول يُسمّى (customers) موجود في قاعدة البيانات، يتم إرسال الجملة التالية (SELECT * FROM customers) لنظام إدارة قاعدة البيانات.
إقرأ أيضا:كيف أضيف صديق على الياهوأنواع قواعد البيانات
توجد عدّة أنواع من قواعد البيانات مصنّفة تِبعاً لطريقة تنظيم البيانات فيها، منها ما يأتي:
- العلائقيّة (بالإنجليزيّة: Relational database): تمَّ إبتكارها في عام 1970م، ويتم فيها تخزين البيانات على شكل جداول تحتوي عموداً واحداً على الأقل والذي يُعبِّر عن صنف البيانات، بالإضافة إلى صفوف، وهي مُدخلات تتضمَّن بيانات معيّنة عددها هو نفس عدد الأعمدة (الأصناف) المتوفّرة، فمثلاً لو كان الجدول يتكوَّن من ثلاث أعمدة، وهي الاسم، والعمر، والطول، فيمكن إضافة المُدخَل “الاسم: محمّد، العمر: 20، الطول: 170” إلى هذا الجدول. يتم استخدام لغة SQL عادةً في مثل هذا النوع من قواعد البيانات للتعامل مع البيانات الموجودة فيها.
- الموزّعة (بالإنجليزيّة: Distributed database): تكون قواعد البيانات في هذا النوع موزّعة في أكثر من مكان، أي أكثر من جهاز حاسوبي، بحيث تكون العمليّات المُنفّذة على البيانات مشتّتة أو مكرّرة في أماكن مختلفة من الشبكة نفسها، ويمكن أن يكون مثل هذا النوع من قواعد البيانات متجانس (بالإنجليزيّة: Homogenous)؛ بحيث تكون الأجهزة الموزّعة التي تحتوي قاعدة البيانات متطابقة مع بعضها البعض في المواصفات (كالعتاد، ونظام التشغيل، وغير ذلك)، أو غير متجانسة (بالإنجليزيّة: Heterogeneous)؛ بحيث تختلف مواصفات الأجهزة المستخدمة.
- السحابيّة (بالإنجليزيّة: Cloud database): هذا النوع من قواعد البيانات مُخصَّص ومُهيّأ للإستخدام في البيئات السحابيّة، ويكون هذا النوع قابلاً للتوسُّع بحسب الرغبة (بالإنجليزيّة: Scalability)، بالإضافة إلى بقاء قاعدة البيانات متاحةً للوصول إليها باستمرار.
- غير العلائقيّ (بالإنجليزيّة: NoSQL): هذا النوع من قواعد البيانات مُخصَّص للتعامل مع كمّ ضخم من البيانات والتي لم تُهيّأ قواعد البيانات العلائقيّة للتعامل معها، وتكون قواعد البيانات من نوع (NoSQL) أكثر فاعليّة عند الرغبة في معالجة مقدار كبير من البيانات التي لا يمكن ترتيبها وفق هيكل معيَّن، أو تلك التي تكون موزّعة على عدّة خوادم افتراضيّة (بالإنجليزيّة: Virtual servers).