RDBMS در مقابل ORDBMS
سیستم مدیریت پایگاه داده رابطه ای (RDBMS) یک سیستم مدیریت پایگاه داده (DBMS) است که بر اساس مدل رابطه ای است. محبوب ترین DBMS هایی که در حال حاضر استفاده می شوند RDMS هستند. پایگاه داده شی-رابطه ای (ORDBMS) همچنین یک DBMS است که RDBMS را برای پشتیبانی از کلاس وسیع تری از برنامه ها گسترش می دهد و تلاش می کند تا پلی بین پارادایم های رابطه ای و شی گرا ایجاد کند.
همانطور که گفته شد، RDBMS قبلی بر اساس مدل رابطه ای است و داده ها در یک RDMS در قالب جداول مرتبط ذخیره می شوند. بنابراین، یک پایگاه داده رابطه ای را می توان به سادگی به عنوان مجموعه ای از یک یا چند رابطه یا جدول با ستون ها و ردیف ها مشاهده کرد.هر ستون مربوط به یک ویژگی از رابطه و هر ردیف مربوط به رکوردی است که از مقادیر داده برای یک موجودیت تشکیل شده است. RDMS ها با گسترش مدل های سلسله مراتبی و شبکه که دو سیستم پایگاه داده قبلی بودند، توسعه می یابند. عناصر اصلی یک RDMS مفاهیم یکپارچگی رابطه و عادی سازی هستند. این مفاهیم بر اساس 13 قانون برای یک سیستم رابطه ای است که توسط تد کاد توسعه یافته است. زیر سه اصل مهم باید توسط یک RDMS دنبال شود. در مرحله اول، تمام اطلاعات باید در قالب یک جدول نگهداری شوند. ثانیاً، هر مقداری که در ستون های جدول یافت می شود نباید تکرار شود و در نهایت از زبان استاندارد پرس و جو (SQL) استفاده شود. بزرگترین مزیت RDBMS ها سهولت آن برای کاربران در ایجاد دسترسی و گسترش داده است. پس از ایجاد پایگاه داده، کاربر می تواند دسته بندی داده های جدید را بدون تغییر برنامه موجود به پایگاه داده اضافه کند. برخی محدودیت های قابل توجه در RDBMS ها نیز وجود دارد. یکی از محدودیت ها عدم کارایی آنها هنگام کار با زبان های دیگر غیر از SQL و همچنین این واقعیت است که تمام اطلاعات باید در جداولی باشد که در آن روابط بین موجودیت ها با مقادیر تعریف می شود.علاوه بر این، RDMS ها فضای ذخیره سازی کافی برای مدیریت داده هایی مانند تصاویر، صداهای دیجیتال و ویدئو ندارند. در حال حاضر اکثر DBMS های غالب مانند خانواده DB2 IBM، Oracle، Microsoft Access و SQL Server در واقع RDMS هستند.
همانطور که قبلا ذکر شد ORDBMS یک حد وسط بین RDMS و پایگاه های داده شی گرا (OODBMS) فراهم می کند. شما به سادگی می توانید بگویید که ORDBMS یک قسمت جلویی شی گرا روی یک RDBMS قرار می دهد. هنگامی که یک برنامه کاربردی با یک ORDBMS ارتباط برقرار می کند، معمولاً طوری عمل می کند که گویی داده ها به عنوان اشیا ذخیره می شوند. سپس ORDBMS اطلاعات شی را به جداول داده با سطرها و ستون ها تبدیل می کند و داده ها را همانطور که در یک RDBMS ذخیره شده است، مدیریت می کند. علاوه بر این، هنگامی که داده ها بازیابی می شوند، یک شی پیچیده ایجاد شده با جمع آوری مجدد داده های ساده را برمی گرداند. بزرگترین مزیت ORDBMS این است که روش هایی برای تبدیل داده ها بین فرمت RDBMS و فرمت OODBMS فراهم می کند، به طوری که برنامه نویس برای تبدیل بین دو فرمت نیازی به نوشتن کد ندارد و دسترسی به پایگاه داده از طریق یک زبان شی گرا آسان است.
اگرچه RDBMS و ORDBMS هر دو DBMS هستند، اما در نحوه تعامل آنها با برنامه ها متفاوت هستند. برنامه هایی که از RDBMS استفاده می کنند باید هنگام ذخیره داده های پیچیده کار بیشتری انجام دهند در حالی که ORDBMS ذاتاً از این پشتیبانی می کند. اما به دلیل تبدیل داخلی بین فرمت های داده، عملکرد ORDBMS ها می تواند کاهش یابد. بنابراین انتخاب یکی بر دیگری بستگی به داده هایی دارد که باید ذخیره یا مدیریت شوند.