اذهب إلى المحتوى

مفاهيم نموذج البيانات العلائقية RDM الأساسية المهمة في تصميم قواعد البيانات


زائر

لقد صُمم نموذج البيانات العلائقية Relational Data Model في العام 1970 بواسطة C.F. Codd، وهو النموذج الأكثر استخدامًا في يومنا هذا، كما يُعَدّ الأساس لكل من:

  • البحث العلمي في نظرية البيانات، والعلاقات، والقيود.
  • العديد من منهجيات تصميم قواعد البيانات.
  • لغة الوصول القياسية إلى قاعدة البيانات، حيث تسمى لغة الاستعلام المهيكلة structured query language - أي SQL اختصارًا-.
  • جميع أنظمة إدارة قواعد البيانات التجارية الحديثة.

يصف نموذج البيانات العلائقية العالم على أنه تجميعة من العلاقات والجداول المترابطة.

المفاهيم الأساسية في نماذج البيانات العلائقية

سنتعرف على المفاهيم الأساسية في نموذج البيانات العلائقية التي ترتكز ارتكازًا كبيرًا على العلاقة والجدول وكل الخصائص المتعلقة بهما.

العلاقة

العلاقة relation- أو ما تعرف أيضًا باسم الجدول table أو الملف file -، وهي مجموعة فرعية من الناتج الديكارتي لقائمة من المجالات التي تتميز بالاسم، حيث يمثِّل كل صف row ضمن الجدول الواحد مجموعةً من قيم البيانات ذات الصلة، ويُعرَف الصف أو السجل record باسم صف tuple أيضًا، كما يُعَدّ العمود في الجدول حقلًا، ويشار إليه باسم السِمة attribute أيضًا، كما يمكنك النظر إلى الأمر بالطريقة التالية: تُستخدَم السمات لتعريف السجلات، ويحتوي السجل على مجموعة من السمات.

توضِّح الخطوات التالية المنطق بين العلاقة ومجالاتها:

  • يُشار إلى عدد n من المجالات بالصورة: D1, D2, … Dn
  • تُعَدّ r علاقةً محدَّدة على هذه المجالات.
  • ثم r ⊆ D1 × D2 ×… × Dn

الجدول Table

تتكون قاعدة البيانات من عدة جداول، كما يحتوي كل جدول على بيانات، ويوضِّح الشكل التالي قاعدة بيانات تحتوي على ثلاثة جداول.

SwimClubDatabase.png

الشكل 1: قاعدة بيانات بثلاثة جداول

العمود Column

تُخزِّن قاعدة البيانات أجزاء المعلومات أوالحقائق بطريقة منظَّمة، حيث يتطلب الفهم الجيد لكيفية استخدام قواعد البيانات والاستفادة منها إلى أقصى حد فهم طريقة التنظيم هذه.

تسمى وحدات التخزين الرئيسية أعمدة columns، أو حقول fields، أو سمات attributes، وتضم هذه الوحدات المكونات الأساسية للبيانات التي يمكن تقسيم محتواها.

تحتاج عند تحديد الحقول المراد إنشاؤها إلى التفكير في البيانات التي لديك عمومًا، فمثلًا، استخلاص المكونات المشتركة للمعلومات التي ستخزِّنها في قاعدة البيانات، وتجنُّب التفاصيل التي تميز عنصرًا عن الآخر.

Field Name Data
First Name Isabelle
Family Name Whelan
Nationality British
Salary 109,900
Date of Birth 15 September 1983
Marital Status Single
Shift Mon, Wed
Place of issue Addis Ababa
Valid until 17 December 2003

مثال على معلومات حول بطاقة هوية

المجال Domain

يُمثِّل المجال المجموعات الأصلية للقيم الذَرية المستخدَمة لنمذجة البيانات، وتعني القيمة الذَرية atomic value أنّ كل قيمة في المجال غير قابلة للتجزئة بقدر ما يتعلق الأمر بالنموذج العلائقي، فمثلًا:

  • يملك مجال الحالة الاجتماعية مجموعةً من الاحتمالات، وهي: متزوج، وأعزب، ومطلِّق.
  • يملك مجال أيام العمل مجموعةً من جميع الأيام الممكنة، وهي: الأحد، الاثنين، …إلخ.
  • مجال الراتب الشهري هو مجموعة جميع الأعداد الأكبر من 0 وأقل من 200000.
  • مجال الاسم الأول هو مجموعة سلاسل الأحرف التي تمثل أسماء الأشخاص.

باختصار، المجال هو مجموعة من القيم المقبولة التي يُسمح للعمود باحتوائها، كما يعتمد على الخصائص المختلفة ونوع بيانات العمود، وسنناقش أنواع البيانات في مقال آخر.

السجلات Records

مثلما يحتاج محتوى أي مستند أو عنصر إلى تقسيمه إلى أجزاء صغيرة من البيانات للتخزين في الحقول، فيجب أيضًا أن تكون مترابطةً بحيث يمكن إعادتها إلى شكلها الكامل، ويتم ذلك عن طريق استخدام السجلات، إذ تحتوي السجلات على حقول مرتبطة، مثل: حقل العميل customer، أو الموظف employee، كما يُستخدَم المصطلح صف أو سطر tuple أحيانًا على أساس مرادف للسجل.

تشكل السجلات والحقول أساس جميع قواعد البيانات،و يمنحنا الجدول البسيط أوضح صورة عن كيفية عمل السجلات والحقول معًا في مشروع تخزين قاعدة بيانات.

Table-Description.png

الشكل 2: مثال على جدول بسيط

يوضِّح الجدول البسيط في الشكل السابق كيف يمكن للحقول الاحتفاظ بمجال واسع من مختلف أنواع البيانات، حيث يحتوي على:

  • حقل ID (مُعرِّف السجل): هو عدد صحيح، ويُستخدَم لترتيب البيانات في الجدول.
  • حقل PubDate (تاريخ النشر): ويحتوي على تاريخ النشر ويكون في الصورة (يوم/شهر/سنة).
  • حقل Author (المؤلِّف): يحتوي على اسم المؤلِّف، وهو حقل يحتوي على بيانات نصية.
  • نص Title (حقل العنوان): يحتوي على أيّ نص يُمثِّل عنوان المؤلِّف.

من الممكن توجيه قاعدة البيانات للبحث في البيانات وتنظيمها بطريقة معينة، فمثلًا، يمكنك طلب مجموعة مختارة من السجلات محدودة حسب التاريخ بطرق عديدة، وهي: كل البيانات المسجَّلة قبل تاريخ معين، أو كل البيانات المسجَّلة بعد تاريخ معين، أو كل البيانات المسجَّلة بين تاريخين، ويمكنك بالمثل أيضًا ترتيب السجلات حسب التاريخ.

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

الدرجة Degree

الدرجة هي عدد السمات في الجدول، فدرجة الجدول في المثال السابق الموضح في الشكل هي 4.

خصائص الجدول

  • لكل جدول في قاعدة البيانات اسم خاص به، ولا يتكرر الاسم الواحد في عدة جداول.
  • يحتوي كل صف في الجدول على بيانات فريدة، ولا يتكرر الصف نفسه أكثر من مرة في الجدول.
  • تكون المدخلات في الأعمدة ذَريةً بحيث لا يحتوي الجدول على مجموعات مكررة أو سمات متعددة القيم.
  • تكون المدخلات في الأعمدة من المجال نفسه بناءً على نوع بياناتها، فإمّا أن تكون أعداد - أي عدد صحيح، كسري، …إلخ-، أو سلسلة محارف، أو تاريخ، أو قيم منطقية -أي صح أو خطأ-.
  • غير مسموح بالعمليات التي تجمع بين أنواع البيانات المختلفة.
  • كل سِمة لها اسم فريد.
  • ترتيب الأعمدة غير مهم.
  • ترتيب الصفوف غير مهم.

المفاهيم الأساسية

  • القيمة الذَرية atomic value: تعني أنّ كل قيمة في المجال غير قابلة للتجزئة بقدر ما يتعلق الأمر بالنموذج العلائقي.
  • السِمة attribute: وحدة التخزين الأساسية في قواعد البيانات.
  • العمود column: هو نفسه السمة attribute التي ذكرتها للتو.
  • الدرجة degree: عدد السِمات في الجدول.
  • المجال domain: هو المجموعات الأصلية للقيم الذَرية المستخدَمة لنمذجة البيانات، وهو مجموعة من القيم المقبولة التي يُسمح للعمود باحتوائها.
  • الحقل field: يكافئ السمة attribute.
  • الملف file: يكافئ العلاقة relation.
  • السجل record: يحتوي على عدة حقول ذات صلة ببعضها البعض، ويكافئ السطر tuple.
  • العلاقة relation: مجموعة فرعية من الناتج الديكارتي لقائمة من المجالات التي تتميز بالاسم، وهي المصطلح التقني لكل من الجدول table ، أو الملف file.
  • الصف row: يكافئ السطر tuple.
  • لغة الاستعلام المهيكلة structured query language -أي SQL اختصارًا-: هي لغة الوصول القياسية إلى قاعدة البيانات.
  • الجدول table: يكافئ العلاقة relation.
  • السطر tuple: مصطلح تقني مرادف للصف أو السجل.

المصطلحات الأساسية

المصطلح الرسمي -أي حسب العالِم Codd- البديل الأول البديل الثاني
العلاقة Relation الجدول Table الملف File
السطر Tuple الصف Row السجل Record
السمة Attribute العمود Column الحقل Field

تمارين

استخدم الجدول الموجود في الشكل الموضَّح أدناه للإجابة على الأسئلة الأربعة الأولى:

  1. حدِّد وصِف جميع المكونات في الجدول باستخدام المصطلحات الصحيحة.
  2. ما هو المجال المحتمل للحقل EmpJobCode؟
  3. كم عدد السجلات المعروضة؟
  4. كم عدد السمات المعروضة؟
  5. اذكر خصائص الجدول.
معرف سجل الموظف اسم الموظف تهيئة الموظف كنية الموظف رمز مهنة الموظف
123455 فريد .A عبد الله 12
123456 علا .D عادل 18
123457 فاتن .G علي 15
123458 كريم .X اسماعيل 18

جدول أسئلة التمرين

ترجمة وبتصرف للفصل Chapter 7 The Relational Data Model من كتاب Database Design لصاحبته Adrienne Watt.

اقرأ أيضًا


تفاعل الأعضاء

أفضل التعليقات

لا توجد أية تعليقات بعد



انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أضف تعليق

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • أضف...