تفاوت RDBMS و OODBMS چیست؟
در این نوشته به بررسی دو تکنولوژی OODBMS و RBDMS میپردازیم و تفاوتها و شباهت آنها را بررسی خواهیم کرد.
تفاوت RDBMS و OODBMS چیست؟
RDBMS چیست؟
RDBMS که مخفف کلمات Relational Database Management System است یک سیستم مدیریت پایگاه داده است که مبتنی بر مدل رابطهای است یعنی دادهها و روابط توسط مجموعهای از جداول مرتبط به یکدیگر نمایش داده میشوند. RDBMS یک DBMS است که کاربر را قادر میسازد تا یک پایگاه داده رابطهای ایجاد، به روز رسانی، مدیریت و تعامل کند. RDBMS پایهای برای SQL و برای همه سیستمهای پایگاه داده مدرن مانند MS SQL Server ،IBM DB2 ،Oracle ،MySQL و Microsoft Access است.
OODBMS چیست؟
OODBMS مخفف کلمات Object-Oriented Database Management System است. RDBMS یک DBMS است که دادهها به صورت اشیا objects نمایش و ذخیره میشود، همانطور که در برنامه نویسی شی گرا استفاده میشود. OODB مفاهیم شی گرا مانند کلاس اشیا، هویت شی object، چند ریختی، کپسول سازی و وراثت را پیاده سازی میکند. یک پایگاه داده شی گرا دادههای پیچیده را در مقایسه با پایگاه داده رابطهای ذخیره میکند. برخی از نمونههای OODBMS عبارتند از: Versant Object Database، Objectivity / DB، ObjectStore، Caché و ZODB است.
تفاوت RDBMS و OODBMS
تفاوت های RDBMS و OODBMS به شرح زیر است:
- RDBMS مخفف کلمات Relational Database Management System است و OODBMS مخفف کلمات Object-Oriented Database Management System است.
- روش ذخیره سازی دادهها در RDBMS به این شکل است که دادههای موجود در موجودیتها را به عنوان جداول ذخیره میکند و در OODBMS دادهها به صورت اشیا ذخیره میشوند.
- در RDBMS دادههای ساده ذخیره میشوند و در OODBMS دادههای بزرگتر و پیچیدهتر ذخیره می شوند.
- نوع نهادها در RDBMS به صورت موجودیتها است و تعریف مشترکی دارند اما در OODBMS کلاسها گروهی از اشیا را توصیف میکنند که روابط و رفتارهای مشترکی دارند و همچنین دارای خصوصیات مشابه هستند.
- در RDBMS تنها داده ذخیره میشوند اما در OODBMS دادهها و روش استفاده از آنها ذخیره میشود.
- در RDBMS دادهها مستقل از مدل هستند اما در OODBMS دادهها با هم کپسوله سازی میشوند.
- در RDBMS یک کلید به عنوان کلید اصلی جداول ذخیره میشود ولی در OODBMS شناسه شی (OID) که موجودیت شی را ذخیره میکند.
پیشنهاد نویسنده: دانلود کتاب پایگاه داده پیشرفته
اگر سوالی در ارتباط با تفاوت RDBMS و OODBMS در بخش نظرات همین نوشته برای ما بنویسید.



















OODBMS چقدر با مفاهیم ORM در برنامهنویسی شیگرا مرتبط هست؟
OODBMS به طور مستقیم با مفاهیم ORM در برنامهنویسی شیگرا مرتبط است، زیرا هر دو به دنبال تسهیل نگاشت دادهها بین ساختارهای شیگرا و پایگاه داده هستند.
آیا در OODBMS میشه دادهها رو به شکل رابطهای هم دید یا فقط اشیا؟
در OODBMS، دادهها به صورت اشیاء ذخیره میشوند و نمایش رابطهای به شکل سنتی RDBMS وجود ندارد، اما میتوان با استفاده از کوئریهای خاص به دادهها دسترسی پیدا کرد.
در پروژههای وب، استفاده از OODBMS باعث پیچیدگی بیشتر نمیشه؟
بله، در پروژههای وب، استفاده از OODBMS ممکن است پیچیدگیهایی را به همراه داشته باشد، اما برای دادههای پیچیده و روابط عمیق، مزایایی نیز دارد.
آیا میشه دادههای RDBMS رو به OODBMS منتقل کرد؟
بله، انتقال دادهها از RDBMS به OODBMS امکانپذیر است، اما معمولاً نیاز به تبدیل و نگاشت دادهها دارد.
آیا OODBMS برای پروژههای کوچک هم مناسب هست؟
OODBMS بیشتر برای پروژههای بزرگ و پیچیده که نیاز به ذخیرهسازی دادههای ساختاریافته و روابط پیچیده دارند، مناسب است.