التبعية الوظيفية في نظام إدارة قواعد البيانات: ما هي الأنواع والأمثلة
ما هو التبعية الوظيفية؟
التبعية الوظيفية (FD) هو القيد الذي يحدد العلاقة بين سمة واحدة وسمة أخرى في نظام إدارة قواعد البيانات (DBMS). تساعد التبعية الوظيفية في الحفاظ على جودة البيانات في قاعدة البيانات. إنه يلعب دورًا حيويًا في العثور على الفرق بين تصميم قاعدة البيانات الجيد والسيئ.
تتم الإشارة إلى التبعية الوظيفية بواسطة سهم "→". يتم تمثيل التبعية الوظيفية لـ X على Y بواسطة X → Y. دعونا نفهم التبعية الوظيفية في نظام إدارة قواعد البيانات (DBMS) مع المثال.
على سبيل المثال:
رقم الموظف | اسم الموظف | الراتب | المدينة |
---|---|---|---|
1 | دانة | 50000 | سان فرانسيسكو |
2 | فرانسيس | 38000 | لندن |
3 | أندرو | 25000 | طوكيو |
في هذا المثال، إذا عرفنا قيمة رقم الموظف، فيمكننا الحصول على اسم الموظف والمدينة والراتب وما إلى ذلك. وبهذا يمكننا القول أن المدينة واسم الموظف والراتب تعتمد وظيفيًا على رقم الموظف.
الشروط الاساسية
فيما يلي بعض المصطلحات الأساسية للتبعية الوظيفية في قاعدة البيانات:
الشروط الاساسية | الوصف |
---|---|
مسلمة | البديهيات هي مجموعة من قواعد الاستدلال المستخدمة لاستنتاج جميع التبعيات الوظيفية على قاعدة بيانات علائقية. |
تفكيك | إنها قاعدة تقترح أنه إذا كان لديك جدول يبدو أنه يحتوي على كيانين يتم تحديدهما بواسطة نفس المفتاح الأساسي، فيجب عليك التفكير في تقسيمهما إلى جدولين مختلفين. |
تابع | يتم عرضه على الجانب الأيمن من مخطط التبعية الوظيفية. |
مقرر | يتم عرضه على الجانب الأيسر من مخطط التبعية الوظيفية. |
الاتحاد | يقترح أنه إذا كان هناك جدولان منفصلان، وكان PK هو نفسه، فيجب عليك التفكير في وضعهما. معاً |
قواعد التبعيات الوظيفية
فيما يلي أهم ثلاث قواعد للتبعية الوظيفية في قاعدة البيانات:
- القاعدة الانعكاسية - . إذا كانت X عبارة عن مجموعة من السمات وY هي مجموعة فرعية من X، فإن X تحمل قيمة Y.
- قاعدة التعزيز: عندما يتم الاحتفاظ بـ x -> y، وتكون c عبارة عن مجموعة سمات، فإن ac -> bc يتم الاحتفاظ بها أيضًا. وهذا يعني إضافة سمات لا تغير التبعيات الأساسية.
- قاعدة المتعدية: هذه القاعدة تشبه إلى حد كبير القاعدة المتعدية في الجبر إذا كان x -> y ثابتًا وy -> z ثابتًا، فإن x -> z ثابتًا أيضًا. X -> y يُطلق عليه وظيفيًا ما يحدد y.
أنواع التبعيات الوظيفية في نظم إدارة قواعد البيانات
هناك أربعة أنواع رئيسية من التبعيات الوظيفية في أنظمة إدارة قواعد البيانات. وفيما يلي أنواع التبعيات الوظيفية في أنظمة إدارة قواعد البيانات:
- التبعية متعددة القيم
- التبعية الوظيفية التافهة
- التبعية الوظيفية غير التافهة
- التبعية المتعدية
التبعية متعددة القيم في نظم إدارة قواعد البيانات
تحدث التبعية متعددة القيم في حالة وجود عدة سمات مستقلة متعددة القيم في جدول واحد. التبعية متعددة القيم هي قيد كامل بين مجموعتين من السمات في علاقة. تتطلب وجود مجموعات معينة في علاقة. فكر في مثال التبعية متعددة القيم التالي لفهم الأمر.
على سبيل المثال:
طراز السيارة | Maf_year | لون |
---|---|---|
H001 | 2017 | معدني |
H001 | 2017 | أخضر |
H005 | 2018 | معدني |
H005 | 2018 | ازرق |
H010 | 2015 | معدني |
H033 | 2012 | رمادي |
في هذا المثال، maf_year واللون مستقلان عن بعضهما البعض ولكنهما يعتمدان على طراز السيارة. في هذا المثال، يُقال أن هذين العمودين متعددي القيم ويعتمدان على car_model.
يمكن تمثيل هذا الاعتماد على النحو التالي:
car_model -> maf_year
car_model-> اللون
التبعية الوظيفية التافهة في نظم إدارة قواعد البيانات (DBMS).
التبعية التافهة هي مجموعة من السمات التي تسمى تافهة إذا تم تضمين مجموعة السمات في تلك السمة.
لذلك، X -> Y هي تبعية وظيفية تافهة إذا كانت Y مجموعة فرعية من X. دعونا نفهم مع مثال التبعية الوظيفية التافهة.
فمثلا:
Emp_id | اسم_الوظيفة |
---|---|
AS555 | هاري |
AS811 | جورج |
AS999 | كيفن |
خذ بعين الاعتبار هذا الجدول الذي يحتوي على عمودين Emp_id وEmp_name.
{Emp_id, Emp_name} -> Emp_id هي تبعية وظيفية تافهة لأن Emp_id هي مجموعة فرعية من {Emp_id,Emp_name}.
التبعية الوظيفية غير التافهة في نظام إدارة قواعد البيانات (DBMS).
تحدث التبعية الوظيفية والتي تُعرف أيضًا باسم التبعية غير التافهة عندما يكون A->B صحيحًا حيث لا تكون B مجموعة فرعية من A. في العلاقة، إذا لم تكن السمة B مجموعة فرعية من السمة A، فإنها تعتبر غير تافهة الاعتماد.
الشركة | الرئيس التنفيذي | العمر |
---|---|---|
Microsoft | ساتيا Nadella | 51 |
جوجل | ساندر بيتشاي | 46 |
ابل | تيم كوك | 57 |
على سبيل المثال:
(الشركة) -> {CEO} (إذا كنا نعرف الشركة، فإننا نعرف اسم الرئيس التنفيذي)
لكن الرئيس التنفيذي ليس مجموعة فرعية من الشركة، وبالتالي فهو تبعية وظيفية غير تافهة.
التبعية متعدية في نظم إدارة قواعد البيانات
التبعية المتعدية هي نوع من التبعية الوظيفية التي تحدث عندما يتم تشكيل "t" بشكل غير مباشر من خلال تبعيتين وظيفيتين. دعنا نفهم ذلك من خلال مثال التبعية المتعدية التالي.
على سبيل المثال:
الشركة | الرئيس التنفيذي | العمر |
---|---|---|
Microsoft | ساتيا Nadella | 51 |
جوجل | ساندر بيتشاي | 46 |
علي بابا | جاك ما | 54 |
{Company} -> {CEO} (إذا كنا نعرف الشركة، فإننا نعرف اسم مديرها التنفيذي)
{CEO } -> {Age} إذا كنا نعرف الرئيس التنفيذي، فإننا نعرف العمر
لذلك وفقا لقاعدة التبعية المتعدية:
{Company} -> يجب أن يحمل {Age}، وهذا منطقي لأنه إذا عرفنا اسم الشركة، فيمكننا معرفة عمره.
ملحوظة: عليك أن تتذكر أن التبعية المتعدية يمكن أن تحدث فقط في علاقة ثلاث سمات أو أكثر.
ما هو التطبيع؟
التطبيع هو وسيلة لتنظيم البيانات في قاعدة البيانات والتي تساعدك على تجنب تكرار البيانات، والإدراج، والتحديث والحذف الشاذ. إنها عملية تحليل مخططات العلاقات بناءً على تبعياتها الوظيفية المختلفة والمفتاح الأساسي.
التطبيع متأصل في نظرية قاعدة البيانات العلائقية. قد يكون له تأثير تكرار نفس البيانات داخل قاعدة البيانات مما قد يؤدي إلى إنشاء جداول إضافية.
مزايا التبعية الوظيفية
- التبعية الوظيفية تتجنب تكرار البيانات. لذلك لا تتكرر نفس البيانات في مواقع متعددة في ذلك قاعدة بيانات
- يساعدك على الحفاظ على جودة البيانات في قاعدة البيانات
- يساعدك على تحديد معاني وقيود قواعد البيانات
- يساعدك على التعرف على التصاميم السيئة
- يساعدك على العثور على الحقائق المتعلقة بتصميم قاعدة البيانات
الملخص
- التبعية الوظيفية هي عندما تحدد سمة واحدة سمة أخرى في نظام إدارة قواعد البيانات (DBMS)..
- البديهية، التحلل، المعال، المحدد، الاتحاد هي المصطلحات الأساسية للتبعية الوظيفية
- أربعة أنواع من التبعية الوظيفية هي 1) متعددة القيم 2) تافهة 3) غير تافهة 4) متعدية
- تحدث التبعية متعددة القيم في حالة وجود عدة سمات مستقلة متعددة القيم في جدول واحد
- تحدث التبعية التافهة عندما يتم استدعاء مجموعة من السمات تافهة إذا تم تضمين مجموعة السمات في تلك السمة
- تحدث التبعية غير التافهة عندما يكون A->B صحيحًا حيث لا تكون B مجموعة فرعية من A
- المتعدية هي نوع من التبعية الوظيفية التي تحدث عندما يتم تشكيلها بشكل غير مباشر من خلال اثنين من التبعيات الوظيفية
- التطبيع هو أسلوب لتنظيم البيانات في قاعدة البيانات مما يساعدك على تجنب تكرار البيانات