التبعية الوظيفية في أنظمة إدارة قواعد البيانات: أنواع مع أمثلة

⚡ ملخص ذكي

التبعية الوظيفية هي قيد يحدد كيفية ارتباط سمة بأخرى في نظام إدارة قواعد البيانات. وهي تدعم عملية التطبيع من خلال تحديد المحددات والتبعيات، وتصنف إلى تبعيات متعددة القيم، وبسيطة، وغير بسيطة، ومتعدية.

  • ➡️ الفكرة الأساسية: في X → Y، يحدد المحدد X قيمة المتغير التابع Y، والذي يُكتب بسهم.
  • 🏷️ الشروط الرئيسيّة: يصف كل من المحدد، والتابع، والبديهية، والتفكيك، والاتحاد كيفية تسمية التبعيات ومعالجتها.
  • 📐 بديهيات أرمسترونغ: تستنتج الخاصية الانعكاسية والزيادة والتعدي كل تبعية تستلزمها المجموعة منطقياً.
  • 🔀 أربعة أنواع: تصف كل من التبعيات متعددة القيم، والتافهة، وغير التافهة، والمتعدية علاقة سمة مميزة.
  • 🧹 رابط التطبيع: تؤدي التبعيات إلى عملية التطبيع، مما يزيل التكرار ويحدث حالات الشذوذ.
  • 🔑 إغلاق: يكشف إغلاق السمة عن المفاتيح المرشحة وما إذا كانت هناك تبعية قائمة.
  • ✅ الاستفادة: تشير التبعيات الجيدة إلى تصميم جيد وتفصل بين المخططات عالية الجودة والمخططات الرديئة.

التبعية الوظيفية في نظم إدارة قواعد البيانات (DBMS).

ما هو التبعية الوظيفية؟

التبعية الوظيفية (FD) التبعية الوظيفية هي قيد يحدد العلاقة بين سمة وأخرى في نظام إدارة قواعد البيانات. وتساعد هذه التبعية على الحفاظ على جودة البيانات في قاعدة البيانات، كما أنها تلعب دورًا حيويًا في التمييز بين تصميم قواعد البيانات الجيد والسيئ.

يُرمز إلى التبعية الوظيفية بسهم "→". وتُمثل التبعية الوظيفية لـ Y على X بالرمز X → Y. دعونا نفهم التبعية الوظيفية من خلال مثال.

على سبيل المثال:

رقم الموظف اسم الموظف الراتب المدينة
1 دانة 50000 سان فرانسيسكو
2 فرانسيس 38000 لندن
3 أندرو 25000 طوكيو

في هذا المثال، إذا عرفنا قيمة رقم الموظف، يمكننا الحصول على اسم الموظف، والمدينة، والراتب، وما إلى ذلك. وبذلك، يمكننا القول إن المدينة، واسم الموظف، والراتب تعتمد وظيفيًا على رقم الموظف.

الشروط الاساسية

فيما يلي بعض المصطلحات الرئيسية المتعلقة بالتبعية الوظيفية في قاعدة البيانات:

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

قواعد التبعيات الوظيفية (مسلمات أرمسترونج)

فيما يلي أهم ثلاث قواعد للتبعية الوظيفية في قاعدة البيانات. تُعرف هذه القواعد باسم بديهيات أرمسترونغ، ويمكن اشتقاق جميع قواعد الاستدلال الأخرى منها.

  • القاعدة الانعكاسية: إذا كانت X مجموعة من السمات و Y مجموعة جزئية من X، فإن X → Y صحيحة.
  • قاعدة التضخيم: عندما يتحقق الشرط X → Y وتكون C مجموعة سمات، فإن الشرط XC → YC يتحقق أيضاً. إضافة السمات لا تُغير التبعية الأساسية.
  • قاعدة التعدي: على غرار قاعدة التعدي في الجبر: إذا تحققت العلاقة X → Y وتحققت العلاقة Y → Z، فإن العلاقة X → Z تتحقق أيضًا.

تُستمد ثلاث قواعد أخرى من هذه القواعد، ويتم استخدامها باستمرار في الممارسة العملية:

  • حكم النقابة: إذا كان X → Y و X → Z، فإن X → YZ.
  • قاعدة التفكيك: إذا كان X → YZ، فإن X → Y و X → Z.
  • قاعدة التعدي الزائف: إذا كان X → Y و WY → Z، فإن WX → Z.

يؤدي تطبيق هذه القواعد بشكل متكرر على مجموعة من التبعيات إلى إنتاج إغلاق، وهي المجموعة الكاملة من التبعيات التي تتبعها منطقيًا. كما أن إغلاق مجموعة السمات هو الطريقة التي يتم بها العثور على المفاتيح المرشحة، وهو ما يرتبط مباشرة بدراسة مفاتيح نظام إدارة قواعد البيانات.

أنواع التبعيات الوظيفية في نظم إدارة قواعد البيانات

توجد أربعة أنواع رئيسية من التبعية الوظيفية في أنظمة إدارة قواعد البيانات:

  • التبعية متعددة القيم
  • التبعية الوظيفية التافهة
  • التبعية الوظيفية غير التافهة
  • التبعية المتعدية

التبعية متعددة القيم في نظم إدارة قواعد البيانات

يحدث التبعية متعددة القيم عندما توجد عدة سمات مستقلة متعددة القيم في جدول واحد. وهي عبارة عن قيد كامل بين مجموعتين من السمات في علاقة، يتطلب وجود صفوف معينة. انظر المثال التالي.

على سبيل المثال:

طراز السيارة Maf_year لون
H001 2017 قيثاري
H001 2017 أخضر
H005 2018 قيثاري
H005 2018 ازرق
H010 2015 قيثاري
H033 2012 رمادي

في هذا المثال، يُعتبر كل من Maf_year و Color مستقلين عن بعضهما البعض، ولكنهما يعتمدان على Car_model. يُقال إن هذين العمودين يعتمدان على 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}.

التبعية الوظيفية غير البسيطة في أنظمة إدارة قواعد البيانات

يحدث التبعية غير التافهة عندما يكون A → B صحيحًا و B ليس مجموعة جزئية من A. إذا لم تكن السمة B مجموعة جزئية من السمة A، فإن التبعية تعتبر غير تافهة.

الشركة الرئيس التنفيذي العمر
Microsoft ساتيا Nadella 51
Google ساندر بيتشاي 46
ابل تيم كوك 57

على سبيل المثال:

{الشركة} → {الرئيس التنفيذي} (إذا عرفنا اسم الشركة، عرفنا اسم الرئيس التنفيذي). لكن الرئيس التنفيذي ليس جزءًا من الشركة، وبالتالي فهو تبعية وظيفية غير بديهية.

التبعية متعدية في نظم إدارة قواعد البيانات

التبعية المتعدية هي نوع من التبعية الوظيفية تحدث عندما يتم تحديد سمة ما بشكل غير مباشر من خلال تبعيتين وظيفيتين. انظر المثال أدناه.

الشركة الرئيس التنفيذي العمر
Microsoft ساتيا Nadella 51
Google ساندر بيتشاي 46
علي بابا جاك ما 54

{الشركة} → {الرئيس التنفيذي} (إذا كنا نعرف الشركة، فإننا نعرف اسم رئيسها التنفيذي).

{الرئيس التنفيذي} → {العمر} (إذا كنا نعرف الرئيس التنفيذي، فإننا نعرف عمره).

لذلك، وفقًا لقاعدة التبعية المتعدية، يجب أن يتحقق {الشركة} → {العمر}، وهو أمر منطقي لأنه إذا عرفنا اسم الشركة، فيمكننا إيجاد العمر.

ملاحظة: لا يمكن أن تحدث التبعية المتعدية إلا في علاقة تتكون من ثلاثة سمات أو أكثر.

ما هو التطبيع؟

التطبيع هو أسلوب لتنظيم البيانات في قاعدة البيانات، يساعد على تجنب تكرار البيانات واختلالات الإدخال والتحديث والحذف. وهو عملية تحليل مخططات العلاقات بناءً على تبعياتها الوظيفية المختلفة ومفتاحها الأساسي.

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

مزايا التبعية الوظيفية

  • تساهم التبعية الوظيفية في تجنب تكرار البيانات، بحيث لا تتكرر نفس البيانات في مواقع متعددة في قاعدة بيانات.
  • يساعدك ذلك في الحفاظ على جودة البيانات في قاعدة البيانات.
  • يساعدك ذلك في تحديد معاني وقيود قواعد البيانات.
  • يساعدك ذلك في تحديد التصاميم السيئة.
  • يساعدك ذلك في العثور على الحقائق المتعلقة بتصميم قاعدة البيانات.

الأسئلة الشائعة

المحدد هو الخاصية الموجودة على يسار السهم والتي تحدد القيمة. أما التابع فهو الخاصية الموجودة على اليمين والتي يتم تحديد قيمتها. في العلاقة X → Y، يحدد X قيمة Y.

تُحدد التبعية الوظيفية قيمة واحدة للمتغير التابع. أما التبعية متعددة القيم فتسمح بمجموعة من القيم المستقلة، ولذلك فهي تحتاج إلى سمة خاصة بها وتؤدي إلى الشكل الطبيعي الرابع.

احسب إغلاق مجموعة سمات باستخدام التبعيات. إذا كان الإغلاق يشمل كل سمة من سمات العلاقة، فإن تلك المجموعة تُعتبر مفتاحًا فائقًا؛ أما أصغر مجموعة من هذا النوع فتُعتبر مفتاحًا مرشحًا.

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

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

تلخيص هذه التدوينة بـ: