Database S12 Lecture 7 2024 PDF

Summary

This document is a lecture on database normalization. It provides an agenda, examples, and explanations of database problems and solutions. The document also discusses the advantages and disadvantages of normalization, including its impact on storage space, data entry time, and data processing speed. It includes examples of normalization rules and their applications.

Full Transcript

Database S12 S12 ‫قواعد بيانات‬ 2024 By DR. Hany Hamdy Hussien Lecture 7 1 Agenda Database Problems ‫مشاكل قواعد البيانات‬ Normalization Intro ‫مقدمة للتطبيع‬ Why Normalization ‫لماذا التطبيع‬ Normalization Advantages ‫مزايا التطبيع‬...

Database S12 S12 ‫قواعد بيانات‬ 2024 By DR. Hany Hamdy Hussien Lecture 7 1 Agenda Database Problems ‫مشاكل قواعد البيانات‬ Normalization Intro ‫مقدمة للتطبيع‬ Why Normalization ‫لماذا التطبيع‬ Normalization Advantages ‫مزايا التطبيع‬ Normalization disadvantages ‫عيوب التطبيع‬ Functional Dependencies ‫وظائف االعتمادية‬ Normalization rules ‫قواعد التطبيع‬ ‫أمثلة توضيحية حول قواعد التطبيع‬ Assignment NO.DB1206 2 ‫مثال ‪ :‬وثيقة تخرج طالب‬ ‫‪STUDENT _REPORT‬تقرير الطالب‬ ‫التقدير‬ ‫القسم‬ ‫االستاذ‬ ‫الساعات الرقم‬ ‫المقرر‬ ‫الرمز‬ ‫العنوان‬ ‫االسم‬ ‫رقم‬ ‫الطالب‬ ‫‪A‬‬ ‫حاسب‬ ‫علي‬ ‫‪7‬‬ ‫‪3‬‬ ‫‪IT‬‬ ‫حاس‪101‬‬ ‫سموحة‬ ‫احمد‬ ‫‪5‬‬ ‫‪B‬‬ ‫رياضيات‬ ‫جميل‬ ‫‪12‬‬ ‫‪4‬‬ ‫‪C‬‬ ‫حاس‪102‬‬ ‫سموحة‬ ‫احمد‬ ‫‪5‬‬ ‫‪C+‬‬ ‫حاسب‬ ‫أدهم‬ ‫‪2‬‬ ‫‪4‬‬ ‫‪C++‬‬ ‫حاس‪103‬‬ ‫سموحة‬ ‫احمد‬ ‫‪5‬‬ ‫‪B+‬‬ ‫حاسب‬ ‫خالد‬ ‫‪5‬‬ ‫‪3‬‬ ‫‪DB1‬‬ ‫حاس‪325‬‬ ‫سموحة‬ ‫احمد‬ ‫‪5‬‬ ‫‪B‬‬ ‫حاسب‬ ‫طارق‬ ‫‪3‬‬ ‫‪3‬‬ ‫‪DB2‬‬ ‫حاس‪426‬‬ ‫سموحة‬ ‫احمد‬ ‫‪5‬‬ ‫‪3‬‬ ‫مشاكل التكرار فى المثال‬ ‫بيانات الطالب يتكرر تخزينها مع تسجيلة لكل مقرر‪.‬‬ ‫ ‬ ‫تتكرر بيانات كل مقرر مع كل طالب يسجل ذلك المقرر‬ ‫ ‬ ‫تتكرر بيانات كل مدرس مع كل مقرر يسجلة طالب ما‪.‬‬ ‫ ‬ ‫هذا التكرار يسبب مشاكل عديدة ‪:‬‬ ‫ ‬ ‫ استهالك حيز التخزين‬ ‫ استهالك وقت ادخال البيانات‬ ‫ استهالك وقت القائمين على ادخال البيانات‬ ‫ يؤثر على سرعة معالجة البيانات‬ ‫ استهالك االجهزة‬ ‫‪4‬‬ ‫مشاكل ادخال البيانات فى المثال‬ ‫عندما نريد ادخال بيانات مقرر جديد لم يسجله أي طالب ال نستطيع‬ ‫ادخال بيانات مقرر لم يسجله طالب واحد على االقل‪.‬‬ ‫عندما نرغب في ادخال بيانات عضو هيئة تدريس جديد لم يقم بعد‬ ‫بالتدريس او ان عمله يرتبط باالبحاث واليدرس أي مقررات حاليا‬ ‫ال يمكننا ادخال بيانات مدرس لم يدرس مقرر درسه طالب واحد على‬ ‫االقل‪.‬‬ ‫عند ادخال بيانات أي طالب جديد او حذف الفصل الدراسي ولم‬ ‫يسجل بعد أي مقررات دراسيه من الخطة نضطر ان نترك فراغا في‬ ‫الحقول الخاصة بالمقررات وبعضو هيئة التدريس‪.‬‬ ‫نظرا الدخال بيانات معينة اكثر من مرة من الممكن ان يحدث ادخال‬ ‫‪5‬‬ ‫مشاكل الحذف فى المثال‬ ‫عند حذف بيانات طالب او طالبه او (طالب) ما وهي الطالبة الوحيدة‬ ‫او الطلبة المسجلة لمقرر معين يتم حذف بيانات المقرر ونفقد‬ ‫بياناته‪.‬‬ ‫عند حذف بيانات مدرس او مدرسه او (مدرسين) يدرسون مقرر او‬ ‫(مقررات) معينه وتسجله طالب او طالب واحد يتم حذف بيانات‬ ‫المقرر والطالبة و نفقد بياناتهما‪.‬‬ ‫عند حذف سجل طالب او طالبة او مقرر او مدرس سوف يكون‬ ‫بالتأكيد لدينا سجالت اخرى ربما ننسى او ال نستطيع حذفها‪.‬‬ ‫‪6‬‬ ‫‪Normalization intro‬‬ ‫مقدمة للتطبيع‬ ‫هوعملية تفكيك (تحليل ‪ /‬تجزئ ) تراكيب البيانات الكبيرة‬ ‫(الموجودة في عالقة واحدة عامة) الى تمثيل بسيط (عدة عالقات‬ ‫بسيطه) طبقا العتماد البيانات على بعضها البعض‪.‬‬ ‫التطبيع هى عملية تقسيم البيانات إلى مجموعة من العالقات‪:‬‬ ‫(التجانس ‪ -‬االعتمادية ‪-‬خالية من التكرار)‬ ‫بالطبع فإن القضاء على التكرارية تماما أمر غير ممكن‪ ،‬وما يتم‬ ‫دائما هو تقليل التكرارية ما أمكن‬ ‫قواعد التطبيع هي مجموعة المعايير المتبعة في تصميم قواعد‬ ‫البيانات‬ ‫هي خطوات لتجزئة العالقات ‪relations‬الجداول‪ ،‬إلى عالقات‬ ‫‪7‬‬ ‫أصغر‬ ‫لماذا التطبيع‬ ‫‪.1‬لمعرفة وفهم المعنى الكامن في البيانات التي تحتويها قاعدة‬ ‫البيانات‬ ‫‪.2‬لمعرفة وفهم العالقات واإلعتماديات المتبادلة بين البيانات‬ ‫‪ data redundancy‬والتناقض‬ ‫‪.3‬لتقليل تكرارية البيانات‬ ‫الذي قد يحصل بينها ‪.‬‬ ‫‪.4‬لحماية البيانات من المشاكل التي قد تطرأ عند معالجتها‪ ،‬أي عند‬ ‫إجراء إدخال بيانات جديدة أو تعديل بيانات موجودة أو حذفها‪.‬‬ ‫‪8‬‬ ‫مزايا التطبيع‬ ‫تقليل تكرارية البيانات( تقليل مساحة التخزين )‬ ‫تقليل التضارب‪ inconsistency‬الحاصل بين البيانات‪.‬‬ ‫تقليل تكلفة تحديث البيانات ومعالجتها‪.‬‬ ‫إلغاء العالقات التي من نوع ‪many-to-many‬وذلك بتحويلها‬ ‫إلى عالقات من نوع‪one-to-many‬‬ ‫زيادة وتطوير مرونة النظام‬ ‫‪9‬‬ ‫عيوب التطبيع‬ ‫االضطرار أحيانا إلى استخدام الفهارس التي تعقد عملية المعالجة وإن كانت ترفع من‬ ‫كفاءتها‪.‬‬ ‫زيادة تعقيدات النظام‪.‬‬ ‫تقليل كفاءة بعض أوامر استرجاع البيانات‪ ،‬خاصة العالقات المعقدة‬ ‫وبسبب هذه العيوب‪ ،‬يتم في بعض األحيان‪ ،‬تطبيق قواعد التطبيع‬ ‫العكسية‪Demoralization‬‬ ‫‪10‬‬ ‫‪Functional Dependencies‬‬ ‫االعتماد الوظيفى‬ ‫هو اعتماد او ارتباط خاصية او مجموعة من الخصائص على خاصية او‬ ‫مجموعة اخرى من خصائص قاعدة البيانات‬ ‫هى صفة تفهم من معنى او مدلول الخصائص التي تشكل قاعدة البيانات‬ ‫وجود قيد بين صفتين ‪two attributes‬عمودين‪ ،‬أو بين مجموعتين من‬ ‫الصفات‬ ‫انواع االعتماد الوظيفى‬ ‫‪.A‬االعتماد الجزئي‬ ‫‪.B‬االعتماد االنتقالي‬ ‫‪11‬‬ ‫االعتمادية الوظيفية الجزئية‬ ‫االعتماد الجزئي للبيانات يقصد به اعتماد خاصية ما و مجموعة من‬ ‫الخصائص على خاصية او مجموعة اخرى من الخصائص في نفس‬ ‫الوقت الذي تعتمد فيه خاصية اخرى او مجموعة ثانية على خاصية او‬ ‫مجموعة مختلفة من الخصائص‬ ‫عندما يكون هناك عمود معتمد وظيفيا على مفتاح رئيسي مركب‬ ‫تعني أن العمود معتمد على جزء من الفتاح الرئيسي‪ ،‬وليس كله‬ ‫‪3‬‬ ‫‪2‬‬ ‫‪1‬‬ ‫لو طبقناه على عالقة تقرير الطالب‬ ‫‪4‬‬ ‫لوجدنا ان الخصائص (المقرر وعدد ساعاته ورقم المدرس) تعتمد على‬ ‫(رمز المقرر) في نفس الوقت الذي يعتمد (التقدير) على كل من (رمز‬ ‫المقرر و رقم الطالب ) معا‪.‬‬ ‫‪12‬‬ ‫االعتمادية الوظيفية االنتقالى‬ ‫االعتماد االنتقالي للبيانات يقصد به اعتماد خاصية ما او مجموعة‬ ‫ما من الخصائص على خاصية ما ‪ A‬مثال في نفس الوقت الذي‬ ‫تعتمد فيه الخاصية ‪ A‬على خاصية او مجموعة خصائص اخرى‬ ‫‪C‬‬ ‫‪A‬‬ ‫‪B‬‬ ‫لو طبقناه على عالقة تقرير الطالب‬ ‫لوجدنا ان الخصائص (اسم المدرس و القسم الذي يعمل به) تعتمد على (رقم المدرس) في‬ ‫الوقت الذي يعتمد ( رقم المدرس) على كل من (رمز المقرر)‪.‬‬ ‫‪13‬‬ ‫قواعد التطبيع‬ 1. 1st Normal Form (1NF) 2. 2nd Normal Form(2NF) 3. 3rd Normal Form(3NF) 4. Boyce-Codd Normal Form(BCNF) 5. 4th Normal Form(4NF) 6. 5th Normal Form(5NF) 14 Steps Of Normalization ‫خطوات التطبيع‬ 15 ‫شكل التطبيع االول‬ ‫)‪First Normal Form (1nf‬‬ ‫في اول مراحل التطبيع نبدأ بالبحث عن اول واهم عيوب البيانات في‬ ‫العالقات العامة وهو وجود مجموعات بيانات متكررة فان وجدنا مجموعة‬ ‫بيانات متكررة نحدد للقاعدة العامة درجة او شكل تطبيعها وهي درجة‬ ‫التطبيع صفر (‪ )0NF‬او نقول انها غير طبيعية المطلوب هنا هو (ازالة‬ ‫عيب تكرار البيانات)‬ ‫بعد ازالة عيب مجموعات تكرار البيانات او عند عدم وجودة تكون درجة‬ ‫التطبيع للعالقة هي شكل التطبيع االول (‪ )1NF‬او الثاني او الثالث او‬ ‫شكل تطبيع اخر‪.‬‬ ‫لو طبقنا هذه المفاهيم على مثالنا هنا تقرير الطالب‪:‬‬ ‫ايضا بمجرد النظر نالحظ وجود بيانات متكررة تضم رقم الطالب و‬ ‫اسم الطالب و العنوان لذا فهذه العالقة غير طبيعية او من نوع ‪0NF‬‬ ‫‪16‬‬ ‫وثيقة تخرج الطالب‬ ‫عالقة تقرير الطالب ‪ STUDENT _REPORT‬من درجة التطبيع )‪(0 NF‬‬ ‫التقدير‬ ‫القسم‬ ‫االستاذ‬ ‫الرقم‬ ‫الساعات‬ ‫المقرر‬ ‫الرمز‬ ‫العنوان‬ ‫االسم‬ ‫رقم الطالب‬ ‫‪A‬‬ ‫حاسب‬ ‫علي‬ ‫‪7‬‬ ‫‪3‬‬ ‫‪IT‬‬ ‫حاس‪101‬‬ ‫سموحة‬ ‫احمد‬ ‫‪5‬‬ ‫‪B‬‬ ‫رياضيات‬ ‫جميل‬ ‫‪12‬‬ ‫‪4‬‬ ‫‪C‬‬ ‫حاس‪102‬‬ ‫سموحة‬ ‫احمد‬ ‫‪5‬‬ ‫‪C+‬‬ ‫حاسب‬ ‫أدهم‬ ‫‪2‬‬ ‫‪4‬‬ ‫‪C++‬‬ ‫حاس‪103‬‬ ‫سموحة‬ ‫احمد‬ ‫‪5‬‬ ‫‪B+‬‬ ‫حاسب‬ ‫خالد‬ ‫‪5‬‬ ‫‪3‬‬ ‫‪DB1‬‬ ‫حاس‪325‬‬ ‫سموحة‬ ‫احمد‬ ‫‪5‬‬ ‫‪B‬‬ ‫حاسب‬ ‫طارق‬ ‫‪3‬‬ ‫‪3‬‬ ‫‪DB2‬‬ ‫حاس‪426‬‬ ‫سموحة‬ ‫احمد‬ ‫‪5‬‬ ‫االن ولكي نزيل مجموعة البيانات المتكررة نقوم بفصل خصائص تلك المجموعة في عالقة جديدة خاصة مع‬ ‫االحتفاظ بالحقل الجوهري (المفتاح الرئيسي) مع ما يتبقى من خصائص في العالقة العامة‪.‬نحصل من جراء‬ ‫هذا على العالقتين التاليتين‪:‬‬ ‫‪17‬‬ ‫شكل التطبيع االول‬ ‫)‪First Normal Form (1nf‬‬ ‫طالب‬ ‫العنوان‬ ‫اسم الطالب‬ ‫رقم الطالب‬ ‫تقرير طالب ‪Student_Report‬‬ ‫التقدير‬ ‫القسم‬ ‫االستاذ‬ ‫الرقم‬ ‫الساعات‬ ‫المقرر‬ ‫الرمز‬ ‫رقم‬ ‫الطالب‬ ‫العالقتين السابقتين الطالب وتقرير الطالب ممكن ان تكون درجة تطبيع أي منهما ‪ 1NS‬او‬ ‫‪ 2NF‬او ‪ 3NF‬او غير ذلك‪.‬‬ ‫وهذا ماسنعرفه عند تفحصها في االجزاء التالية بحثا عن عيوب البيانات االخرى‬ ‫‪18‬‬ ‫‪quiz‬‬ ‫‪ Normalization‬هوعملية تفكيك (تحليل ‪ /‬تجزئ ) تراكيب البيانات‬ ‫‪.1‬‬ ‫الكبيرة (الموجودة في عالقة واحدة عامة) الى تمثيل بسيط(‪)T/F‬‬ ‫‪.2‬لماذا التطبيع‬ ‫(لتقليل التكرار – لحماية البيانات– لفهم المعنى– كل ما سبق )‬ ‫‪.3‬من عيوب التطبيع تقليل كفاءة بعض أوامر استرجاع البيانات(‪)T/F‬‬ ‫‪.4‬يتم ازلة التكرار فى المرحلة الثانية من التطبيع(‪)T/F‬‬ ‫‪19‬‬ 20

Use Quizgecko on...
Browser
Browser