يوسف بدري
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.
بحـث
 
 

نتائج البحث
 


Rechercher بحث متقدم

المواضيع الأخيرة
» سنن قيام الليل
نظم إدارة قواعد البيانات- الجزء الاول Emptyالثلاثاء نوفمبر 25, 2008 3:49 pm من طرف joe

» سنن الاذان
نظم إدارة قواعد البيانات- الجزء الاول Emptyالثلاثاء نوفمبر 25, 2008 3:47 pm من طرف joe

» قصة الفراشة
نظم إدارة قواعد البيانات- الجزء الاول Emptyالثلاثاء نوفمبر 25, 2008 3:42 pm من طرف joe

» دعاء لمرة واحدة بالعمر
نظم إدارة قواعد البيانات- الجزء الاول Emptyالأحد أكتوبر 12, 2008 10:36 am من طرف joe

» الله أعلي واعلم
نظم إدارة قواعد البيانات- الجزء الاول Emptyالسبت أكتوبر 11, 2008 4:22 pm من طرف joe

» احفظ الله يحفظك
نظم إدارة قواعد البيانات- الجزء الاول Emptyالسبت أكتوبر 11, 2008 3:47 pm من طرف joe

» بيوتنا وسيرة الرسول!
نظم إدارة قواعد البيانات- الجزء الاول Emptyالسبت أكتوبر 11, 2008 3:42 pm من طرف joe

» طب القلب والشرايين-طب الأمراض الصدرية-طب الأعصاب-طب أمراض الدم-طب العضام والمفاصل
نظم إدارة قواعد البيانات- الجزء الاول Emptyالخميس يونيو 19, 2008 3:25 pm من طرف joe

» كتاب طب الأطفال (الموسوعة الطبية الجراحية) - ebook
نظم إدارة قواعد البيانات- الجزء الاول Emptyالخميس يونيو 19, 2008 3:24 pm من طرف joe

تسجيل صفحاتك المفضلة في مواقع خارجية
قم بحفض و مشاطرة الرابط يوسف بدري على موقع حفض الصفحات

نظم إدارة قواعد البيانات- الجزء الاول

اذهب الى الأسفل

نظم إدارة قواعد البيانات- الجزء الاول Empty نظم إدارة قواعد البيانات- الجزء الاول

مُساهمة  joe الخميس مايو 22, 2008 4:16 pm

نموذج علاقات الكيانات ونظم إدارة قواعد البيانات Entity relationship (ER) model and DBMS
• تعتمد نمذجة قواعد البيانات على عدة مفاهيم وأكثر هذه المفاهيم استخداما هو نموذج علاقات الكيانات Entity relationship (ER) model وهو يعبر عن العلاقات بين الأشياء المطلوب عمل قاعدة بيانات لها أو بمعنى أخر يعبر عن هيكل قاعدة البيانات ،وهو يتكون من ثلاثة عناصر تمثل رموز للأجزاء المختلفة التي تكون قاعدة البيانات:
1- نوع الكيان Entity type ويتحدد من خلاله نوع الشيئ object الذي نتعامل معه.
2- نو البيان الوصفي Attribute type وهو يصف أنواع الكيانات
3- نوع العلاقة relationship type وهو يحدد العلاقة بين الكيانات وبياناتها الوصفية.

• بالرغم من أن عملية نمذجة علاقات الكيانات قد تبدو جزءا سهلا من عملية نمذجة قواعد البيانات database modelling إلا أنها مجال هام جدا في عملية إنشاء قاعدة البيانات ويوضح الشكل رقم 8 مثالا صغيرا لنموذج علاقات الكيانات في قاعدة بيانات خاصة بإدارة شبكة الطرق حيث يظهر فيه عدد قليل من الكيانات التي يتم ربطها ببعضها من خلال بيانات وصفية معينة specific attributes ونلاحظ بالمثال أن كيان الطريق مرتبط ببيان وصفي رقم الطريق road number ومرتبط بكيان آخر هو رابط الطريق road link ويلاحظ أن درجة تعقيد النموذج تعتمد على مدى تعقيد قاعدة البيانات ، ومن خلال هذا النوع من نمذجة قواعد البيانات يمكن توضيح مدى القوة والضعف في طرق إنشاء قاعدة البيانات كما يمكن تحليلها من خلال الرسم.
• بعد الانتهاء من إعداد ال conceptual model يتم تنفيذ هيكل قاعدة البيانات داخل نظام إدارة قواعد البيانات (البرنامج نفسه SW) وأثناء عمل ذلك لابد من أخذ الآتي في الاعتبار:
1- مرونة عملية الإنشاء construction بدرجة كافية حتى يتم أخذ العمليات المختلفة في نظام إدارة قواعد البيانات في الاعتبار.
2- هيكلة البيانات بما يسهل عملية استخراج (اشتقاق) البيانات.
3- يجب أن تراعي في عملية إنشاء قاعدة البيانات تقليل مخاطر الأخطاء داخل النظام فلابد ألا تعطى السماحية للمستخدم أن يدخل نوع خطأ من البيانات في جزء خطأ من النظام كمثلا إدخال بيان نصي في مكان يقبل فقط البيانات الرقمية.
4- يجب تسهيل الدخول على قاعدة البيانات والتعامل معها من خلال إمكانيات البحث الموجودة في نظام إدارة قواعد البيانات وهذا قد يشتمل على إنشاء واجهات interfaces للمستخدمين الذين ليس لديهم مهارات في إدارة قواعد البيانات مما يصعب عليهم إستخراج واشتقاق البيانات.
• من المهم جدا وجود تعريف لفظي موحد standardized semantic للتأكد من إمكانية التواصل بين المستخدمين وكذا التأكد من ان الجميع يتحدث عن نفس الشيء فمعنى الطريق لسلئق الحافلة أنه مكان يمكنه فيه قيادة الحافلة أما الطفل فقد يفكر في الطريق كمكان للعب كرة القدم بينما يفكر أشخاص آخرون في الطريق بشكل آخر ومن المهم جدا وجود مصطلح فني موحد (بإجماع الكل على تعريف محدد) لكل كيان في قاعدة البيانات التي نعمل عليها لتوفير إمكانية التواصل بين مستخدمي هذه القاعدة.

أنواع مختلفة من النماذج
• هناك أنواع مختلفة من هياكل قواعد البيانات database structures الشائع استخدامها وهي:
1- قواعد البيانات المتدرجة (هرميا) hierarchical databases
2- قواعد البيانات الشبكية network databases
3- قواعد البيانات المتصلة relational databases


أولا: قواعد البيانات المتدرجة hierarchical databases:
هيكل هذا النوع من قواعد البيانات يخلق شجرة بروابط بسيطة تمام تربط بين المستويات المختلفة ويسمح الهيكل بربط كيان واحد فقط من الأسفل بكيان واحد فقط من الأعلى ويوضح الشكل مثالا لهذا النوع من خلال قاعدة بيانات متدرجة لمكتية بها مختلف الموضوعات والمؤلفين والكتب ومن الواضح أنه يمكننا فقط ربط كتاب واحد بمؤلف واحد ومؤلف واحد بموضوع واحد مما يجعل قاعدة البيانات غير كفء حيث يمكن أن يتم تأليف الكتاب من خلال أكثر من مؤلف كما يمكن أن يؤلف المؤلف عدة كتب في موضوعات مختلفة مما يجعل هذا النوع من قواعد البيانات غير شائع الاستخدام.
ثانيا: قواعد البيانات الشبكية network databases:
هيكل هذا النوع أكثر تعقيدا من سابقه حيث يمكن فيه ربط الكيانات المختلفة ببعضها بطريقة أكثر مرونة فالكتاب في قاعدة بيانات المكتبة يمكن ربطه بالعديد من المؤلفين ويمكن ربط المؤلفين بالعديد من الموضوعات وهكذا.
ثالثا: قواعد البيانات المتصلة relational databases:
هيكل هذا النوع أكثر مرونة من النوعين السابقين حيث يتم فيه تخزين الكيانات في جداول و يتم توصيف وربط (link/relate) الكيان (الجدول) بكيانات (جداول) أخرى في جداول أخرى ويوضح الشكل قاعدة بيانات المكتبة والتي يتم فيها تخزين كيان الموضوع subject كجدول به العديد من الموضوعات ثم يتم ربط هذه الموضوعات بجدول كيان المؤلف author والذي به قائمة من المؤلفين وهكذا
نموذج قاعدة البيانات المتصلة relational database model:
• هيكل قاعدة البيانات المتصلة هو أكثر الهياكل المستخدمة شيوعا في برامج نظم المعلومات الجغرافية .
• يتم تنظيم هياكل قواعد البيانات المتصلة في جداول التي يتم تنظيمها بدورها في أعمدة تحوي معلومات مختلفة وأساسيات قواعد البيانات المتصلة هي أنه إذا احتوى عمود في جدول على نفس بيانات عمود آخر في جدول آخر فإنه يمكن ربط هذين الجدولين معا والوصل بين المعلومات المخزنة بهما وهذا يسمى (حسب هياكل قواعد البيانات) العلاقة relation ويوضح الشكل ثلاثة جداول كل منها يحتوي على عمودين حيث يخزن الجدول الأول أسماء الأشخاص والمدن التي يعيشون فيها أما الثاني فيحتوي عمودا به أسماء المدن وآخر به أسماء الدول التي تقع هذه المدن داخلها وهذا التكرار للأعمدة التي تحتوي أسماء المدن يجعل من الممكن ربط الجداول المختلفة ببعضها أما الجدول الثالث فبه عمود يحتوي أسماء الدول وآخر به أسماء عواصم هذه الدول وهذا يجعل من الممكن ربط الجدول رقم 2 بالجدول رقم 3 لأن كل منهما به عمود يحتوي أسماء الدول المختلفة كما أنه يجعل ربط الجدولين 1 و 3 ممكنا لارتباط كل منهما بالجدول رقم 2 ، ويلاحظ أن استخدام المعلومات المتكررة في خلق علاقات بين الكيانات المختلفة في قواعد البيانات المتصلة هو نفس الشيء الحادث عند استخدام عمود Id-numbers في ربط البيانات الهندسية geometric data بالبيانات الوصفية attribute data.
• يتم التعامل مع قواعد البيانات المتصلة من خلال نظم إدارة قواعد البيانات المتصلة
• Relational Database Management Systems والتي يطلق عليها اختصارا RDBMS حيث يتم تنظيم البيانات في قاعدة البيانات في أعمدة وصفوف حيث لابد من تحديد عدد الأعمدة وكذا الصفوف ويمكن تسمية الأعمدة بأسماء fields, items, or tables مما قد يحدث ارتباك في المصطلحات أحيانا أما الصفوف فيمكن تسميتها objects, post, records, or tuples.
• من المهم جدا عند خلق قاعدة بيانات جديدة تحديد هيكل بيانات الأعمدة fields المختلفة فمثلا لابد من تحديد نوع البيان المخزن وأى نوع من المعلومات ينبغي أن نسمح للمستخدم بإدخاله في العمود فمثلا إذا تم تعريف البيان كبيان نصي فإنه ينبغي أن نسمح للمستخدم بإدخال ASCII-text وتستخدم البيانات كبيانات نصية فقط بينما عند تعريفه كبيان رقمي يمكن للمستخدم تخزين أرقام وكذا استخدام العمود في الحسابات المختلفة ويلاحظ أن التعريف المحدد والحازم لكل عمود يقلل من الأخطاء الممكن حدوثها بسبب فصل أنواع البيانات data types المختلفة ومنع خلطها ببعضها (هذا فرق هام جدا بين نظم إدارة قواعد البيانات وبرامج spreadsheet مثل MS Excel التي يمكن فيها خلط أنواع البيانات المختلفة في نفس العمود) ، ومن الضروري أيضا تحديد حجم العمود بتحديد عدد الأحرف (أو الأرقام) characters المسموح بتخزينها فيه فمثلا قد يسمح بتخزين 50 حرفا في الأعمدة النصية text columns بينما في الأعمدة الرقمية فيمكن تخزين 30 وحدة رقمية digit مع 10 وحدات عشرية decimal ، كما يلزم أيضا تحديد نوع التخزين للقيم المختلفة (في الأعمدة الرقمية) كمثلا أن يتم تخزينها على هيئة binary, integer, or real.
• يتم هيكلة البيانات في جداول يتم ربطها معا وهذا الربط يخلق علاقات بين البيانات الوصفية المختلفة وحتى إذا لم يتم ربط جدولين معا بطريقة مباشرة فمن الممكن أن يكون بينهما علاقة من خلال سلسلة من الجداول المرتبطة ببعضها مما يجعل من السهل دمج معلومات من الجدولين ولو نظرنا للارتباط بطريقة أعمق لوجدنا أن كل الأشياء وكذا الآدميين يرتبطون بطريقة أو بأخرى معا كما يوضح الشكل بأعلى.
• عند بناء الجداول في قواعد البيانات المتصلة يتم أخذ بعض المحددات في الاعتبار فمن المهم أن نخزن قيمة واحدة في كل خلية من خلايا الجدول حيث أنه ليس من الممكن مثلا تخزين عمر وعدد الناس في نفس الخلية كما لا يمكن مثلا تخزين العمر والإسم لنفس الشخص في نفس الخلية فكل خلية لابد أن تحوي قيمة منفردة unique تعبر عن صفة معينة للكيان entity المعبر عنه بالجدول.
• لابد أيضا من تلافي الاعتماد الوظيفي functional dependence ومعنى هذا أن نتلافى أن تكون قيم عمود معين بالجدول تعتمد على قيم عمود آخر سواء كان في نفس الجدول أو في جدول آخر (يتم تحويل القيم في العمود الأصلي من خلال خوارزم algorithm معين وتخزينها في عمود آخر يسمى calculated field وهذا يرفع المساحة المستخدمة من الذاكرة وبالتالي فهو طريقة غير كفء حيث يمكن حساب هذه القيم بشكل مؤقت بدلا من تحميلها في الذاكرة وتخزينها فيها بشكل دائم).
• لابد أيضا من تلافي التكرار redundancy بقدر الإمكان عند إنشاء قاعدة البيانات وهذا التكرار يعني تخزين نفس المعلومات عدة مرات مما يجعل قاعدة البيانات أضخم وبالتالي أبطأ في استخراج البيانات منها وفي التعامل معها بشكل عام وعادة يتم تلافي هذا التكرار بتقسيم الجداول الضخمة لعدد من الجداول الصغيرة التي يتم ربطها من خلال الأعمدة المتكررة common columns (التي تحدثنا عنها في مثال الدول والعواصم ) ويتضح هذا من خلال المثال الموجود بالشكل العلوي.
• استخدام الفهارس (مثلما يحدث في دليل التليفونات) سيزيد سرعة البحث في قاعدة البيانات حيث يمكن فهرسة البيانات (على سبيل المثال) أبجديا وهذه الفهرسة ستقلل وقت استخراج واشتقاق البيانات كما يمكن استخدام الفهارس نفسها في الربط بين الجداول المختلفة ومن هنا فإن الفهارس تجعل التعامل مع قاعدة البيانات كفؤا بشكل أكبر لأنها تمنع التكرار duplication وتزيد من سرعة البحث وتحفظ سلامة المرجعية referential integrity لإمكانية استخدامها في الربط بين الجداول.
الربط والضم link and joins:
• تتعدد طرق ربط البيانات ومنطقيا لإغن العلاقة نوع من ثلاثة:
1- واحد لواحد one to one.
2- واحد لمتعدد one to many.
3- متعدد لمتعدد many to many.
أولا: واحد لواحد one to one:
يربط هذا النوع من العلاقات بين الجداول عن طريق قيمة منفردة تظهر مرة واحدة في كل جدول والمثال يوضح وجود عمود اسمه "order" في كل جدول ويلاحظ أن رقم الأمر order number قيمة منفردة تظهر في الجدول مرة واحدة كما يلاحظ أن العلاقة تربط صف واحد في أحد الجدولين بصف واحد في الجدول الآخر.
joe
joe
Admin

المساهمات : 53
تاريخ التسجيل : 18/05/2008
العمر : 39
الموقع : https://joebadry.hooxs.com

https://joebadry.hooxs.com

الرجوع الى أعلى الصفحة اذهب الى الأسفل

الرجوع الى أعلى الصفحة

- مواضيع مماثلة

 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى