Database S12 Lecture 7 2024 PDF
Document Details
Uploaded by Deleted User
2024
DR. Hany Hamdy Hussien
Tags
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