في قواعد البيانات العلائقية، يعد التطبيع أسلوبًا منظمًا يستخدم لتنظيم بنية مخطط قاعدة البيانات بطريقة مثالية. ويهدف إلى تقليل تكرار البيانات وعدم اتساقها وتكرارها مع ضمان سلامة البيانات وفرض قيود التكامل المرجعي. تضمن التسوية الصحيحة تخزين كل جزء من البيانات في مكان واحد بالضبط، وبالتالي تقليل الأخطاء والغموض. كما أنه يجعل قاعدة البيانات أكثر كفاءة وقابلية للصيانة ومرونة من خلال إزالة البيانات المتكررة ودمج عناصر البيانات ذات الصلة وتوفير علاقات واضحة بين الكيانات.
تم تقديم التطبيع لأول مرة بواسطة إي إف كود، وهو نفس عالم الكمبيوتر الذي اخترع النموذج العلائقي نفسه. الهدف الرئيسي للتطبيع هو منع المشاكل المختلفة التي يمكن أن تنشأ عن تصميم قاعدة بيانات سيئة التنظيم، مثل الحالات الشاذة ومشكلات التبعية. الحالات الشاذة هي حالات عدم اتساق يمكن أن تحدث عند إضافة البيانات أو تعديلها أو حذفها، في حين أن مشكلات التبعية تجعل الحفاظ على قاعدة البيانات أكثر صعوبة وعرضة للخطأ.
يتم تنفيذ التطبيع في مراحل مختلفة تسمى "الأشكال العادية" (NF)، من النموذج العادي الأول (1NF) إلى النموذج العادي الخامس (5NF). يمثل كل نموذج عادي مستوى معينًا من التسوية، ويوفر كل نموذج عادي لاحق مستوى إضافيًا من التحسين، كما يلي:
1. النموذج العادي الأول (1NF): في 1NF، يجب أن يحتوي الجدول على مفتاح أساسي ويجب أن تحتوي كل سمة على قيم ذرية فقط، مما يعني أنه لا يجب تكرار القيم أو تقسيمها إلى أجزاء متعددة. تتم إزالة السمات المركبة ومتعددة القيم، ويتم تقسيم الجدول إلى جداول متعددة إذا لزم الأمر. تضمن هذه المرحلة أن كل صف في الجدول يمثل حقيقة واحدة حول كيان واحد.
2. النموذج العادي الثاني (2NF): لتحقيق 2NF، يجب أن تكون الجداول في 1NF ويجب أن تعتمد جميع السمات غير الرئيسية بشكل كامل على المفتاح الأساسي. تتم إزالة التبعيات الجزئية، التي تحدث عندما تعتمد سمة غير رئيسية على جزء فقط من المفتاح الأساسي، عن طريق تقسيم الجدول إلى جداول جديدة باستخدام المفاتيح المناسبة.
3. النموذج العادي الثالث (3NF): لكي يكون الجدول في 3NF، يجب أن يكون في 2NF وليس له تبعيات متعدية، مما يعني أن السمات غير الرئيسية يجب ألا تعتمد على سمات أخرى غير أساسية. يتم التخلص من التبعيات المتعدية عن طريق إنشاء جداول منفصلة للسمات المرتبطة بشكل غير مباشر وربطها عبر المفاتيح الخارجية.
4. نموذج Boyce-Codd العادي (BCNF): BCNF هو إصدار أكثر صرامة من 3NF يزيل كل التكرار المتبقي من خلال التأكد من أن كل محدد (مجموعة من السمات التي تحدد سمة أخرى) هو مفتاح مرشح. الجداول التي تلبي متطلبات BCNF موجودة أيضًا في 3NF، لكن العكس ليس صحيحًا دائمًا.
5. النموذج العادي الرابع (4NF): يجب أن يكون الجدول في 4NF في BCNF وليس له تبعيات متعددة القيم (عندما تعتمد مجموعات مستقلة متعددة من السمات على المفتاح الأساسي). يتم تقسيم هذه الجداول إلى جداول أصغر لإزالة التبعيات متعددة القيم.
6. النموذج العادي الخامس (5NF): للوصول إلى 5NF، يجب أن يكون الجدول في 4NF وليس له أي تبعيات ربط (عندما يمكن إعادة بناء الجدول من خلال ضم جداول أخرى). يتم تقسيم الجداول التي لها تبعيات الانضمام إلى جداول أصغر دون أي فقدان للمعلومات.
في حين أن هذه هي النماذج العادية الرئيسية، إلا أن هناك نماذج عادية أعلى مثل النموذج العادي السادس (6NF) والنموذج العادي لمفتاح المجال (DKNF) الذي يعالج مشكلات محددة في قواعد البيانات. ومع ذلك، تتطلب معظم التطبيقات العملية فقط التسوية حتى 3NF أو BCNF.
يعد تطبيق التطبيع في سياق النظام الأساسي AppMaster ذا أهمية كبيرة لأنه يوفر أساسًا لإنشاء واجهات خلفية موحدة وفعالة للخادم لنظام إدارة قواعد البيانات العلائقية (RDBMS) المستخدم داخل النظام الأساسي. يستخدم AppMaster قاعدة البيانات المتوافقة مع Postgresql كمخزن بيانات أساسي، مما يستلزم الحاجة إلى تنفيذ مخططات موحدة للتوافق وقابلية التوسع والأداء العالي.
على سبيل المثال، إذا قام المستخدم بتصميم تطبيق يحتوي على نموذج بيانات معقد مع علاقات متعددة، فإن عملية تطبيع AppMaster ستعمل على تحسين النموذج لمنع التكرار وعدم الاتساق، وتحقيق بنية أكثر قابلية للصيانة. ومن خلال استخدام التطبيع أثناء مرحلة التصميم، يضمن AppMaster أن تكون التطبيقات التي تم إنشاؤها قوية وقابلة للتطوير وسهلة الصيانة، وتلتزم بالممارسات المقبولة في الصناعة في تصميم قاعدة البيانات.
في الختام، التطبيع هو عملية حاسمة في تصميم مخططات قاعدة البيانات العلائقية، وضمان قابلية التوسع، وقابلية الصيانة، والأداء. نظرًا لأن منصة AppMaster no-code تتيح تطوير التطبيقات لمختلف حالات الاستخدام، بدءًا من الشركات الصغيرة ووصولاً إلى المؤسسات، فإن التطبيع يلعب دورًا حاسمًا في إنشاء واجهات خلفية للخادم سليمة هيكليًا وفعالة، مما يضمن أن التطبيقات المنتجة تلبي التوقعات على مستوى المؤسسة والمتطلبات.