مدل رابطه‌ای

مدل رابطه‌ای (به انگلیسی: The Relational Model) یکی از انواع مدل‌های انتزاعی پایگاه داده‌ها و امروزه معمول‌ترین آن‌هاست. مدل رابطه‌ای در یک مقاله تحصیلی توسط ادگار کاد در سال ۱۹۷۰ ارائه گشت. این مدل یک مدل ریاضی است که بر پایه مفاهیمی چون منطق گزاره‌ای و نظریه مجموعه‌ها ایجاد شده‌است.

تعریف

به مجموعه‌ای از چند مقدار که یک گزاره نما را تبدیل به یک گزاره درست می‌کنند تاپل گفته می‌شود. برای مثال سیاره x به دور ستاره y می‌چرخد یک گزاره نماست (گزاره پارامتری) که تاپل {خورشید=yناهید=x} یک گزاره صحیح در آن به وجود می‌آورد.
رابطه دو بخش دارد بدنه و عنوان. بدنه رابطه مجموعه‌ای متناهی از تاپل هاست. عنوان رابطه مجموعه‌ای از چند ویژگی است که هر ویژگی دارای یک نام و یک نوع است. برای مثال در رابطه فوق عنوان دارای دو ویژگی است اولی به نام ستاره و از نوع کاراکتر (یا از نوع ستاره‌های عالم) و دومی سیاره و از نوع کاراکتر (یا نوع سیاره‌های عالم) به تعداد تاپل‌های رابطه کاردینالیتی، به تعداد ویژگی‌های عنوان درجه رابطه گفته می‌شود. از آنجا که این مفاهیم بر اساس نظریه مجموعه‌ها تعریف شده‌اند عضو تکراری (تاپل تکراری در بدنه و نام ویژگی تکراری در عنوان) غیرممکن است و ترتیب آن‌ها هم هیچ اهمیتی ندارد.

کلید

به تعدادی از ویژگی‌ها (زیر مجموعه‌ای از عنوان) که مقدار متناظر با آن در هر تاپل منحصر به فرد باشد کلید گفته می‌شود. مثلاً اگر در رابطه دانشجویان یک ویژگی به نام شماره دانشجویی وجود داشته باشد که مقدار آن برای هر دانشجو منحصر به فرد باشد آنگاه شماره دانشجویی کلید رابطه خواهد بود.
کلید خارجی زیرمجموعه‌ای است از عنوان که مقدار تمامی تاپل‌ها در آن بایستی با مقادیر موجود در رابطه‌ای دیگر تناظر داشته باشد. مثلاً در لیست وام‌های گرفته شده توسط دانشجویان فیلد شماره دانشجویی یک کلید خارجی است که بایستی با شماره‌های دانشجویی موجود در لیست دانشجویان تناظر داشته باشد.

تهی

برخی ویژگی‌های هر تاپل می‌توانند تهی باشند. تهی با کاراکتر بلانک یا رشته‌ای به طول صفر فرق دارد و نشان دهنده این است که این فیلد هم‌اکنون وجود ندارد یا اینکه مقدار فعلی آن برای ما نامعلوم است.

جبر رابطه‌ای

از آنجا که رابطه خود یک مقدار است می‌توان بر روی آن عملگرهایی را تعریف نمود عملگرهای اصلی یک عملوندی رابطه‌ای عبارتند از: گزینش و پرتو و عملگرهای دو عملوندی عبارتند از اجتماع، اشتراک، تفاضل، ضرب، پیوند و تقسیم.

قیدهای جامعیت

هر قانونی که سیستم مدیریت پایگاه داده‌ها به منظور حفظ سلامت داده‌ها بر کاربر تحمیل نماید قید جامعیت نامیده می‌شود. دو قید اصلی جامعیت به صورت سنتی وجود دارند:
قید جامعیت وجودی: مقدار موجود در کلید اصلی برای هیچ‌یک از تاپل‌ها نمی‌تواند تهی باشد.
قید جامعیت ارجاعی: مقدار موجود در کلید اصلی بایستی در رابطه مرجع وجود داشته باشد یا تهی باشد.

نرمال سازی

یکی از اصول علم پایگاه داده‌ها از بین بردن افزونگی است. افزونگی به این معناست یک اطلاع خاص در چند محل مختلف پایگاه ذخیره شود. این امر موجب می‌شود که این خطر بالقوه به وجود آید که داده‌ها هر لحظه با هم در تضاد قرار گیرند و استخراج واقعیت از آن‌ها غیرممکن شود.
نرمال سازی مجموعه قوانینی است که رعایت آن‌ها حذف افزونگی (یا در مواردی نادر به حداقل رساندن آن را) تضمین می‌کند. در تمامی طراحی‌ها نرمال سازی تا سطح نرمال BCNF بایستی رعایت شود.

تعاریف ریاضی یا تعاریف ساده

برخی کتاب‌ها به جای تعاریف ریاضی مبتنی بر نظریه مجموعه‌ها و گزاره‌ها، تعریف‌های ساده‌تری را ارائه نموده‌اند. مثلاً: سطر به جای تاپل، تعداد سطرها به جای کاردینایتی، نام ستون به جای ویژگی، تعداد ستون‌ها به جای درجه و از همه مهم‌تر جدول به جای رابطه.
این تعاریف در برخی موارد کارساز است و فهم مطلب را آسان‌تر می‌کند ولی موارد بسیاری هم هست که بر اساس تعریف جدولی و بردن فراگرفتن مفاهیم ریاضی غیرقابل انجام است. این کار بدان می‌ماند که برای آشنایی با یک کوه، به جای سفر به آن از تصویر همان کوه استفاده شود. برای شناسایی شکل کوه و راه‌های منتهی به قله تصویر بسیار کارسازتر از خود کوه است ولی اگر کسی که می‌پندارد کوه همین تصویر است بخواهد جنس سنگ‌ها را بشناسد ممکن است تکه‌ای کاغذ را به جای قطعات سنگ به آزمایشگاه بسپارد.

ارائه مدل رابطه‌ای سنتی

مدل رابطه‌ای به همراه عملگرهای جبری و اصول رابطه‌ای در دهه هفتاد میلادی توسط ادگار کاد ارائه شدند. کاد به خاطر این کار جایزه تورینگ دریافت کرد که معادل جایزه نوبل در علم رایانه است.
مدل‌های داده‌ای قبل از مدل رابطه‌ای در سطح پایینی از انتزاع قرار داشتند و وجود اشاره گرهایی که توسط طراح پایگاه سازماندهی می‌شدند کار طراحی را بسیار مشکل می‌کرد ولی با این وجود تنها راه دستیابی به کارایی مناسب حین پردازش انبوه داده‌ها بودند. مدل رابطه‌ای در ابتدا به دلیل بار پردازشی بالا مورد استقبال سازندگان DBMS قرار نگرفت ولی به تدریج و با قوی تر شدن کامپیوترها استقبال از آن بیشتر شد و امروزه تقریباً تمامی DBMSها بر اساس آن ساخته می‌شوند.

گذار از مدل رابطه‌ای سنتی به مدرن

در مورد آینده دو دیدگاه وجود دارد. عده‌ای معتقدند دوران مدل رابطه‌ای بالاخره سر خواهد آمد و مدل‌های دیگر مانند مدل شی گرا جایگزین آن خواهند شد. در مقابل عمده پژوهشگران معتقدند مدل رابطه‌ای بر گزاره‌ها استوار است و همان‌طور که منطق گزاره‌ای از چند هزار سال قبل تا امروز دوام آورده‌است مدل رابطه‌ای نیز برای همیشه مدل پایگاه داده‌ها باقی خواهد ماند.
در راس این گروه سی‌جی دیت و هیو دارون قرار دارند که ضمن اعتقاد به اصول مدل رابطه‌ای فکر می‌کنند این مدل بایستی در طول زمان اصلاح شود. سی‌جی دیت همکار و دوست ادگار کاد سعی دارد پس از مرگ وی راهش را ادامه دهد. این دو نفر در کتابی تحت عنوان بیانیه (مانیفست) سوم آخرین دیدگاه‌های خود را برای اصلاح این مدل بیان کرده‌اند که عمده‌ترین آن‌ها عبارت است از:

تهی غیرمجاز است

تهی یکی از پایه‌های مدل رابطه‌ای بود که توسط کاد ارائه شد. با این وجود دلایلی وجود دارد که مبتنی بر آن‌ها اجازه خالی ماندن فیلدها به‌طور کلی باید لغو شود. در پی حذف تهی قیدهای جامعیت دچار تحول جدی خواهند شد.

مرابطه در کنار رابطه

رابطه یک مقدار ثابت است که عنوان و بدنه آن مشخص هستند (مانند عدد ۴). در مقابل مرابطه (متغیر رابطه‌ای) دارای عنوانی ثابت و بدنه‌ای است که هر لحظه تغییر می‌کند (مانند متغیر x که یک لحظه ۴ و لحظه‌ای دیگر ۱۱ را در خود دارد). در تعریف کاد هر دو این مفاهیم رابطه نامیده شده بودند.

کنترل قیود، بعد از هر دستور

کنترل قیود هم‌اکنون بعد از تراکنش صورت می‌گیرد. به بیان دیگر دستورات داخلی تراکنش‌ها می‌توانند قیود را زیر پا بگذارند. این امر رد شده‌است.