النموذج العادي الثالث

النموذج العادي الثالث (3NF) هو نهج تصميم مخطط قاعدة البيانات لقواعد البيانات العلائقية والذي يستخدم مبادئ التطبيع لتقليل تكرار البيانات، وتجنب البيانات الشاذة، وضمان التكامل المرجعي، وتبسيط إدارة البيانات. تم تعريفه في عام 1971 بواسطة إدجار كود، عالم الكمبيوتر الإنجليزي الذي اخترع النموذج العلائقي لإدارة قواعد البيانات.

يُقال أن علاقة قاعدة البيانات (مثل جدول قاعدة البيانات) تلبي معايير النموذج العادي الثالث إذا كانت جميع السمات (مثل أعمدة قاعدة البيانات) تعتمد وظيفيًا على المفتاح الأساسي فقط. عرّف كود هذا على أنه علاقة في الشكل العادي الثاني حيث تعتمد جميع السمات غير الأولية فقط على مفاتيح المرشح وليس لها تبعية متعدية على مفتاح آخر.Codd, E. F. "Further Normalization of the Data Base Relational Model", p. 34.

سيكون المثال الافتراضي للفشل في تلبية النموذج العادي الثالث هو قاعدة بيانات المستشفى التي تحتوي على جدول للمرضى والذي يتضمن عمودًا لرقم هاتف طبيبهم. رقم الهاتف يعتمد على الطبيب وليس المريض، وبالتالي من الأفضل تخزينه في جدول الأطباء. النتيجة السلبية لمثل هذا التصميم هي أنه سيتم تكرار رقم الطبيب في قاعدة البيانات إذا كان لديهم العديد من المرضى، مما يزيد من فرصة حدوث خطأ في الإدخال وتكلفة ومخاطر تحديث هذا الرقم في حالة تغييره (مقارنةً بالرقم العادي الثالث نموذج بيانات متوافق مع النموذج يخزن رقم الطبيب مرة واحدة فقط على طاولة الطبيب).

أدرك كود لاحقًا أن 3NF لم يقضي على جميع البيانات الشاذة غير المرغوب فيها وطور نسخة أقوى لمعالجة هذا في عام 1974، تُعرف باسم نموذج Boyce-Codd العادي.

 تعريف النموذج العادي الثالث 
النموذج العادي الثالث (3NF) هو نموذج عادي يستخدم في تسوية قاعدة البيانات. تم تعريف 3NF في الأصل بواسطة E.F Codd في عام 1971.Codd, E. F. "Further Normalization of the Data Base Relational Model". (Presented at Courant Computer Science Symposia Series 6, "Data Base Systems", New York City, May 24–25, 1971.) IBM Research Report RJ909 (August 31, 1971). Republished in Randall J. Rustin (ed.), Data Base Systems: Courant Computer Science Symposia Series 6. Prentice-Hall, 1972.

ينص تعريف Codd على أن الجدول موجود في 3NF إذا وفقط إذا كان كلا الشرطين التاليين صحيحين:

 العلاقة R (الجدول) في الشكل العادي الثاني (2NF).
 كل سمة غير أساسية لـ R تعتمد بشكل غير عابر على كل مفتاح من R.

سمة غير الرئيسية للR هي السمة التي لا تنتمي إلى أي مفتاح مرشح من R.Codd, p. 43. A متعدية التبعية هو التبعية الوظيفية التي X → Z (X يحدد Z) بشكل غير مباشر، بحكم X → Y و Y → Z (حيث لا يكون الأمر كذلك أن Y → X).Codd, p. 45–46.

تم تقديم تعريف 3NF الذي يعادل كود، ولكن تم التعبير عنه بشكل مختلف، من قبل كارلو زانيولو في عام 1982. وينص هذا التعريف على أن الجدول في 3NF إذا وفقط إذا لكل من التبعيات الوظيفية X → A، واحد على الأقل من الشروط التالية يحمل:Zaniolo, Carlo. "A New Normal Form for the Design of Relational Database Schemata". ACM Transactions on Database Systems 7(3), September 1982.Abraham Silberschatz, Henry F. Korth, S. Sudarshan, Database System Concepts (5th edition), p. 276–277. 

 X تحتوي على A (أي، A هي مجموعة فرعية من X ، وهذا يعني أن X → A هي تبعية وظيفية تافهة)،
 X هو مفتاح خارق،
 كل عنصر من A \ X ، الفرق المحدد بين A و X ، هو سمة أولية (على سبيل المثال، كل سمة في A \ X موجودة في مفتاح مرشح).

يعطي تعريف زانيولو إحساسًا واضحًا بالفرق بين 3NF والشكل العادي الأكثر صرامة من Boyce-Codd (BCNF). يلغي BCNF ببساطة البديل الثالث («كل عنصر من A \ X ، الفرق المحدد بين A و X ، هو سمة أساسية.»).

 «لا شيء سوى المفتاح» 
قدم بيل كينت تقريبًا لتعريف كود لـ 3NF ، بالتوازي مع التعهد التقليدي بتقديم دليل حقيقي في محكمة قانونية: «[كل] [سمة] غير رئيسية يجب أن تقدم حقيقة حول المفتاح، المفتاح بأكمله، ولا شيء سوى المفتاح».Kent, William. "A Simple Guide to Five Normal Forms in Relational Database Theory", Communications of the ACM 26 (2), Feb. 1983, pp. 120–125.  هناك تباين شائع يكمل هذا التعريف بالقسم: «لذا ساعدني Codd».The author of a 1989 book on database management credits one of his students with coming up with the "so help me Codd" addendum. Diehr, George. Database Management (Scott, Foresman, 1989), p. 331.

طلب وجود «المفتاح» يضمن أن الجدول موجود في 1NF ؛ إن اشتراط أن تكون السمات غير الرئيسية تعتمد على «المفتاح بالكامل» يضمن 2NF ؛ يتطلب أيضًا أن تكون السمات غير الرئيسية معتمدة على «لا شيء سوى المفتاح» يضمن 3NF. في حين أن هذه العبارة مفيدة للذاكرة، فإن حقيقة أنها تذكر مفتاحًا واحدًا فقط تعني أنها تحدد بعض الشروط الضرورية ولكنها ليست كافية لتلبية الشكلين العاديين الثاني والثالث. يهتم كل من 2NF و 3NF بالتساوي مع جميع المفاتيح المرشحة للجدول وليس أي مفتاح واحد فقط.

يشير كريس ديت إلى ملخص كينت على أنه «توصيف جذاب بشكل حدسي» لـ 3NF ويلاحظ أنه مع تعديل طفيف يمكن أن يكون بمثابة تعريف لصيغة Boyce-Codd العادية الأقوى قليلاً: «يجب أن تمثل كل سمة حقيقة حول المفتاح، الكل مفتاح، ولا شيء سوى المفتاح».Date, C. J. An Introduction to Database Systems (7th ed.) (Addison Wesley, 2000), p. 379. يعد إصدار 3NF من التعريف أضعف من تباين BCNF الخاص بالتاريخ، حيث إن الأول معني فقط بضمان أن السمات غير الرئيسية تعتمد على المفاتيح. يجب ألا تعتمد السمات الأولية (وهي مفاتيح أو أجزاء من المفاتيح) وظيفيًا على الإطلاق؛ يمثل كل منهما حقيقة حول المفتاح بمعنى توفير جزء أو كل المفتاح نفسه. (تنطبق هذه القاعدة فقط على السمات التابعة وظيفيًا، حيث إن تطبيقها على جميع السمات من شأنه أن يحظر ضمنيًا مفاتيح الترشيح المركبة، نظرًا لأن كل جزء من أي مفتاح من هذا القبيل ينتهك بند «المفتاح الكامل».)

مثال على جدول 2NF الذي فشل في تلبية متطلبات 3NF هو:
+الفائزون بالبطولة المسابقة عام الفائز تاريخ ميلاد الفائز إنديانا دعوة 1998 آل فريدريكسون 21 يوليو 1975 كليفلاند المفتوحة 1999 بوب البرتسون 28 سبتمبر 1968 دي موين ماسترز 1999 آل فريدريكسون 21 يوليو 1975 إنديانا دعوة 1999 تشيب ماسترسون 14 مارس 1977
نظرًا لأن كل صف في الجدول يحتاج إلى إخبارنا بمن فاز في دورة معينة في عام معين، فإن المفتاح المركب {البطولة، السنة} هو مجموعة صغيرة من السمات المضمونة لتعريف الصف بشكل فريد. وهذا يعني أن {البطولة، السنة} هو مفتاح مرشح للطاولة.

يحدث خرق 3NF لأن السمة غير الأولية (تاريخ ميلاد الفائز) تعتمد بشكل انتقالي على مفتاح المرشح {البطولة، السنة} من خلال السمة غير الأولية الفائز. حقيقة أن تاريخ ميلاد وينر يعتمد وظيفيًا على وينر يجعل الجدول عرضة للتناقضات المنطقية، حيث لا يوجد ما يمنع الشخص نفسه من الظهور بتواريخ ميلاد مختلفة في سجلات مختلفة.

من أجل التعبير عن نفس الحقائق دون انتهاك 3NF ، من الضروري تقسيم الجدول إلى قسمين:
+ الفائزون بالبطولة المسابقة عام الفائز إنديانا دعوة 1998 آل فريدريكسون كليفلاند المفتوحة 1999 بوب البرتسون دي موين ماسترز 1999 آل فريدريكسون إنديانا دعوة 1999 تشيب ماسترسون+ تواريخ ميلاد الفائز الفائز تاريخ الولادة تشيب ماسترسون 14 مارس 1977 آل فريدريكسون 21 يوليو 1975 بوب البرتسون 28 سبتمبر 1968
لا يمكن أن تحدث الانحرافات المحدثة في هذه الجداول، لأنه بخلاف ما سبق، أصبح الفائز الآن مفتاحًا مرشحًا في الجدول الثاني، مما يسمح بقيمة واحدة فقط لتاريخ الميلاد لكل فائز.

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

 اشتقاق شروط زانيولو 
تم إثبات تعريف 3NF الذي قدمه كارلو زانيولو في عام 1982، والمقدم أعلاه، بالطريقة التالية: دع X → A يكون FD غير بديهي (أي واحد حيث لا يحتوي X على A) ودع A يكون سمة غير مفتاح. اسمح أيضًا أن يكون Y مفتاحًا لـ R. ثم Y → X.

 التطبيع وراء 3NF 
معظم جداول 3NF خالية من التحديث والإدراج والحذف الشذوذ. تتأثر أنواع معينة من جداول 3NF ، نادرًا ما يتم تلبيتها في الممارسة العملية، بمثل هذه الحالات الشاذة؛ هذه هي الجداول التي إما تقصر عن النموذج العادي لـ Boyce-Codd (BCNF) أو، إذا كانت تتوافق مع BCNF ، فإنها تقل عن الصيغ العادية الأعلى 4NF أو 5NF .

 اعتبارات للاستخدام في بيئات التقارير 
في حين أن 3NF كانت مثالية لمعالجة الماكينة، إلا أن الطبيعة المجزأة لنموذج البيانات يمكن أن يصعب على المستخدم البشري استهلاكها. غالبًا ما يتم تسهيل التحليلات عبر الاستعلام والتقارير ولوحات المعلومات من خلال نوع مختلف من نماذج البيانات التي قدمت تحليلًا محسوبًا مسبقًا مثل خطوط الاتجاه، وحسابات الفترة حتى تاريخه (من شهر إلى تاريخ، ومن ربع إلى تاريخ، وسنة- حتى الآن)، والحسابات التراكمية، والإحصاءات الأساسية (المتوسط، والانحراف المعياري، والمتوسطات المتحركة) ومقارنات الفترة السابقة (منذ عام، قبل شهر، قبل أسبوع) على سبيل المثال نمذجة الأبعاد وما وراء النمذجة الأبعاد، وتسطيح النجوم عبر Hadoop وعلوم البيانات.

انظر أيضا

 نظام السمة والقيمة

 المراجع 

 قراءة متعمقة 

 روابط خارجية 

 نصائح ليت: التطبيع
 أساسيات تطبيع قاعدة البيانات بواسطة مايك تشابل (About.com)
 مقدمة إلى تسوية قواعد البيانات بواسطة مايك هيلير.
 برنامج تعليمي حول النماذج الثلاثة الأولى بواسطة فريد كولسون
 وصف أساسيات تطبيع قاعدة البيانات بواسطة Microsoft
 النموذج العادي الثالث مع أمثلة بسيطة من خلال ExploreDatabase

تصنيف:تسوية قاعدة البيانات