2016/12/21

قواعد البيانات :: المفاهيم الاساسية لمخطط البيانات النهائية Relational Model

يعد مخطط البيانات النهائى Relational Model احد اساليب تمثيل قواعد البيانات Databases والذى يتناول قاعدة البيانات Database على انها مجموعة Collection منالعلاقات Relations، والعلاقة Relation هنا مصطلح يرمز الى الجدول وحو مجموعة من القيم values على شكل صفوف وكل صف فى هذا الجدول يمثل مجموعة من البيانات والتى ترتبط مع بعضها البعض بعلاقة معينة

ويظهر ذالك فى المثال التالى:-

وفى هذا المثال نجد ان اسم الجدول (Table) واسم الاعمدة (Column) التى يحتوى عليها هذا الجدول تساعدنا فى فهم البيانات data values التى تحتوى عليها الصفوف الموجودة فى هذا الجدول والتى تعبر عن حقيقة معينة وهذا ما يسمى بقواعد التسمية او المعايير المستخدمة للتسمية Naming Conventions ، والتى تعتبر من المفاهيم الاساسية عند التسمية ، فيراعى عند تسمية الجداول (Tables) او عند تسمية حقول الجدول (Tables Columns) ان تعبر عن محتواها.
   فاذا نظرنا الى الجدول الاول نجد ان اسمه Student وذلك لان كل صف فيه يعبر عن طالب واحد بيما نجد ان اسماء الاعمدة Column Names الخاصة بجدول Student والتى تحتوى على الاعمدة الاتية Name , Student Number , Class , Major تحدد الخصائص المرتبطة بكل طالب ، فلا يعقل ان نسمى جدول الطلاب مثلا KS حيث انه ان يستطيع احد ان يفهمه عندما يقراءه ، وعند تسمية الحقول يجب ان يعبر اسم الحقل عن الحقل نفسه ، فمثلا حقل رقم الطالب يسمى StudentNumber فلا يعقل مثلا ان نسمية tu فلا يستطيع ايضا ان يفهه.
2- المفاهيم الاساسية مخصص البيانات النهائى Relational Model:-
فى مخصطط البيانات النهائى Relational Model ويتم تناول قاعدة البيانات Database على انها مجموعة من الجداول ، وتعد الجداول هىى البنيان المنطقى Logical Structure انظم قواعد البيانات والتى تعتمد على العلاقات فى ارتباط اجرائها مع بعضها البعضRelational Database اذن فليس الجداول بنيان او وجود مادى Physical Structure والذى يمثل باشكال مختلفة مثل sequential files , indexing , hashing , pointer chain .
فمثلا عندما يتعامل المستخدم (User) مع قاعدة البيانات فى جدول ، فيخلق جدول او يدخل بيانات فى جدول او حذف بيانات فى جدول اخر وهكذا ...، اذن فالمستخدم هنا لا يرى الا بنيان منطقى (وهو الجدول) ، اما كيف يمثل هذا الجدول (Table) فذلك موضوع اخر ، حيث ياخذ تمثيل الجدول برمجيا فى الحاسب عدة اشكال ، فقد يمثل الجدول على هيئة Sequential Files او قد ستخدم Pointer Chain فى تمثيل الجدول ...الخ.
اذن فيجب هنا الفصل ما بين مستويين من مستويات تمثيل قاعدة البيانات Database representation levels .
   1 - المستوى المادى Physical level 
وفيه يتم النظر الى كيفية تمثيل عناصر قاعدة البيانات Database عن طريق كيفية برمجتها ، والتعامل معها من خلال التمثيل عناصرها عن طريق هياكل البيانات Data Structure .
فمثلا قد يستخدم فى تمثيل الجدول الـــــSequential Files او Hashing Algorithm...الخ، وليس للمستخدم user علاقة بكيفية تمثيل قاعدة البيانات او الجدول برمجيا.
2- المستوى المنطقى Logical level :-
وفيه يتم تمثيل قاعدة البيانات Database عن طريق رسم معين يوضح عناصرها مثل الجداول Tables و المفاتيح Keys وكيفية تعامل هذة العناصؤ مع بعضها البعض وهو هنا مخطط البيانات النهائى او Relational Model .
اذن فمنا يتعامل المستخدم مع عناصر قاعدة البيانات Database مثل الجداول ، فيخلص جدول او يدخل بيانات فى جدول او يعدل فى جدول او يوضع مفتاح اساسى Key Primary فى جدول اخر و هكذا ...

وسوف تستعرض بعض المصتلحات الهامة والتى يجب معرفتها عند التعامل مع مخطط البيانات النهائى Relational Model وهى :-

          1- العلاقة او الجدول Relation , Table
          2- الصف Row , Table
          3- العمودColumn (الخصائص Attribute)
          4- نطاق البيانات Domain
          5- درجة الجدول Degree of relation
          6- Relation Schema
          7- Relation State
          8- Relation Database Schema
          9- Relation Database State



          1-  العلاقة او الجدول Relation , Table
وهي هنا الوحده الاساسية لمخطط البيانات التهائى Relational Model والذى يحتوى على مجموعة من الصفوف Rows والتى تمثل مجموعة من البيانات تربطها علاقة مع بعضها البعض مثل Student , Course فى الشكل الشابق.
         2- الصف Row , Tuple :
وهو هنا كل صف فى الجدول والذى يعتبر عن افراد المجموعة التى يشتمل عليها الجدول فعلى سبيل المثال نجد ان الصف الاول فى الجدول Relation المسماة Student يعبر عن الطالب John بصفاته التى تميره مثل فصله Class و رقميه Student Number وتخصصه Major ونجد ان الصف الثانى ايضا يعبر عن الطالب Mark بصفاته التى تميزه وهى ايضا الفصل Class الذى فيه Mark ورقم الطالب Student Number الخاص ب Mark و ايضا تخصصه Major .


3- العامود Column (الخصائص Attribute):-

وهو هنا كل عمود الجدول والذى يعبر عن الخصائص Attributes او الصفات التى تصف الافراد او الصفوف التى يشتمل عليها الجدول فعلى سبيل المثال نجد ان العمود Column الاول او الخاصية Attribute الاولى فى جدول Student تسمى Name وهى التى تصف اسم الطالب فنجد ان John وهو اسم الطالب الاول ، ونجد ان Mark وهو اسم الطالب الثانى نجد ان العمود Column الثانى او الخاصية Attribute والثانية تسمى Student Number وهى التى تصف رقم الطالب فند ان 25 وهو رقم الطالب John ونجد ان 13 هو رقم الطالب Mark وبالمثل العمود الثالث والرابع.
      4- نطاق البيانات Domain :-
 وهى نوع البيانات Data Types والتى على اساسها يتم تحديد القيم Values التى ستظهر فى العمود وهى عبارة عن قيمة لا يمكن تجزئتها Atomic Value وسنرى بعض الامثلة التى تشرح ذلك :
العمود Emp_tel: التلفون الخاص بالموظف وهو مجموعة مكونة من 7 ارقام (وهذا فى مصر).
العمود Social_Security_Number(SSN): مجموعة مكونة من 9 ارقام تعبر عن الرقم التامينى الاجتماعى الخاص بالموظفين.
العمود Emp_age: عمر الموظف فى الشركة وهو قيمة تقدرية محصورة بين سن 15 وسن 65 فى مصر

      5- درجة الجداول Degree of relation:
 درجة الجدول وهو عدد الخصائص Attributes فى هذا الجدول ، فعلى سبيل المثال:
 نجد هنا ان درجة الجدول هنا هى 6.

6- Relation Schema :
يرمز لها بالاتى (A1,A2, . … ,An) R ويشرحها كالاتى:
الرمز R: اسم الـــــRelation
الرمز A1,A2….,An: هى مجموعة الحصائص التى يتكون منها الجدول Relation.
اذن فان Relation Schema هى توصيف الـــــRelation وتتكون من اسم relation ومجموعة الخصائص التى تتكون منها الـــــRelation ، ويدخل فى Relation Schema الدرجة الخاصة بالـــــRelation وهى الـــــDegree فعلى سيل المثال نجد ان الـــــRelation Schema الخاصة بالموظفين Employee هى :
Employee (ID,Name, Telephone, Address, Age,Salary)



7- Relation State:

ويرمز لها r(R) وهى مجموعة الصفوف Tuples التى يتكون منها الـــــRelation حيث ان:
r = {t1,t2,…….,tm}
وهنا R هى الــــــRelation Schema كما ذكرنا من قبل.
والــــــ3 هى الــــــ Relation State.
و  {t1,t2,…….,tm} هم الصفوف Tuples والتى تتكون منها الـــــــRelation .
وناتحظ خنا ان الصفوف عبارة عمن مجموعة مرتبة من القيم Values بحيث ان كل صف له ترتيب معين يميز عن باقى الصفوف، ونلاحظ اسضا ان القيم التى يتكون منها الصف لابد وان تكون من نطاق البيانات Domain الذى تم تحديده وسوف يوضح المثال التالى ذلك :




اذن فالخلاصة هنا انا عندما نتكلم عن الـــــــــ Relation و الخصائص Attributes التى تدخل فى تكوينها فهنا نحن نتكلم عن Relation Schema ، وعندما نتكلم عن الـــــــ Relation والصفوف Tuples التى تحتويها Relation فهنا نحن نتكلم عن Relation State .


0 التعليقات:

إرسال تعليق

ملحوظة: يمكن لأعضاء المدونة فقط إرسال تعليق.