A database model is a type of data model that determines the logical structure of a database and fundamentally determines in which manner data can be stored, organized, and manipulated. The most popular example of a database model is the relational model, which uses a table-based format.
ویژگیها :
قدیمی ترین مدل برای طراحی پایگاه اطلاعاتی است.
به آن، مدل درختی یا درختواره نیز می گویند.
هر گره از رختواره می تواند ركوردی حاوی یك نوع موجودیت باشد.
درختواره مجموعه ای از رکوردها با انواع مختلف می تواند باشد.
مسیر منطقی همیشه از سطح بالاتر به سطح پایین تر است .
مسیری از گره سطح پایین تر به گره سطح بالاتر وجود ندارد.
بالاترین ركورد این مدل ریشه آن می باشد.
هر گره فرزند فقط یك گره پدر(والد) در سطح بالاتر دارد.
مجموعه ای از پیوندها را دارد که کلیه انواع رکورد را در ساختار بهم متصل می کند.
حداکثر یک پیوند بین دو نوع رکورد وجود دارد.
اتصالی بین رکوردهای هم نوع وجود ندارد.
نقطه ورود به ساختار همیشه ریشه است.
دو عملگر جداگانه برای یافتن داده ای در ریشه و پرس و جو در فرزندان مورد نیاز است.
تئوری ریاضی در این روش وجود ندارد .
مزایا :
سرعت و کارایی بالا برای جستجو در داده ها
چون داده به صورت یک درختواره سازماندهی می شود، برای داده هایی که ماهیت سلسله مراتبی دارند مناسب است.
برای پایگاههای اطلاعاتی مناسب است كه بین موجودیتهای آن ارتباط یك به یك (1:1) یا یك به چند (M:1) برقرار می باشد.
مناسب جهت نگهداری داده ها در محیط آن.
معایب :
عملگرهای بازیابی به سادگی عملگر مدل رابطه ایی نیست.
مقدار زیادی افزونگی داده دارد.
در بحث ذخیره سازی و بهنگام سازی، این سیستم دارای اشكال است.
ساختار درختی انعطاف پذیر نیست.
نمی توان پیوند افقی و مورب در درخت تعریف کرد.
ارتباط تنها به صورت "تعلق دارد" یا "شامل می شود" کد میشوند.
در عملیات ذخیره سازی دارای آنومالی است.
در این روش كاربر وضوح دارد، اما محیط انتزاعی آن مسطح نیست.
ویژگیها :
در سال ۱۹۶۹ توسط Charles Bachman ارائه شد.
بر پایه دو سازه مهم یعنی مجموعهها و رکوردها ساخته میشود .
بر خلاف روش سلسله مراتبی که از درخت استفاده میکند، گراف را بكار میگیرد.
به آن، ساختار PLEX نیز می گویند.
علاوه بر روابط ساده (1:M) از روابط چند به چند (N:M) نیز حمایت میكند.
موجودیت ها به كمك انواع ركوردها، و ارتباطات به كمك پیوندهای بین ركوردها نمایش داده میشوند.
هر گره فرزند می تواند بیش از یك گره والد داشته باشد.
برای نمایش ارتباطات یك به چند دو سویه مناسب است.
عملیات ذخیره و بازیابی پیچیده تر از مدل سلسله مراتبی است.
متدهائی را برای ساخت و تعریف دوباره پیوندها دارد.
مزایا :
توانایی یكبار ذخیره سازی ركورد در كل پایگاه اطلاعاتی را دارد.
مدلهای ارتباطی طبیعی بیشتری را بین موجودیتها فراهم میکند.
افزونگی داده ها به مراتب كمتر از مدل سلسله مراتبی می باشد.
انعطاف پذیری بیشتری نسبت به سلسله مراتبی دارد.
در عملیات ذخیره سازی آنومالی ندارد.
افزونگی داده را بهتر از سلسله مراتبی نشان میدهد.
بدلیل استفاده از گراف برای ارتباط های چندبه چند مناسب است.
معایب :
پیچیده بودن ساخت، نگهداری، عملیات ذخیره و بازیابی
دشوار بودن عمل پیمایش بدلیل شبكهء پیچیده ای از روابط
عدم وضوح کامل از دید کاربر و مسطح نبودن محیط آن
عملیات پیچیده تری دارد.
پیوند بین رکوردهای یک نوع ممکن نیست.
رعایت عدم اصل وحدت عملگر در یک عمل
ویژگیها :
ارائه توسط E. F. Codd در سال 1970
متداول ترین مدل
یك مدل ریاضیاتی بوده و عملگرهای روی داده، شامل جبر و حساب رابطه ای میشود.
ساختار داده ها و ارتباطات بین آنها به صورت جداول چند گانه است.
برای ساختن آن، تنها نیاز به درك واضحی از اشیاء است.
دارای سه قاعده ی جامعیت درون رابطه ای، جامعیت موجودیتی، جامعیت ارجاعی
دید كاربر بسیار واضح بوده و جدول محیطی مسطح و انتزاعی دارد .
پیمایش جداول یا رابطه ها، مستقل از جداول یا روابط دیگر است.
برای پاسخگویی به پرسش ها جستجو به صورت خطی انجام می شود.
برای طراحی بهینه رابطه ها، قوانین تئوری نرمال سازی وجود دارد .
افزونگی در مدل رابطه ای با توجه به قوانین نرمالسازی قابل حذف است.
عملیات درج و حذف در مدل رابطه ای بسیار آسان است.
ردیفهای تكراری در آن وجود ندارد .
هیچ جدولی دارای سطرهای تكراری نیست.
ترتیب سطرها و ستون ها در هر جدول مهم نیست.
ستون ها اتمیک (Atomic) هستند یعنی مقادیر ستون ها غیر قابل تجزیه اند.
هر مقدار واقع شده در دو رکورد، رابطه ای را بین دو آن رکورد می فهماند.
ارتباط رابطه ها با یکدیگر از طریق صفات خاصه مشترک انجام می گیرد.
ایجاد، دسترسی و توسعه آن آسان است.
مزایا :
این مدل مزایای مدل شبكه ای را دارد، اما از پیچیدگی های موجود در آن فارغ است.
درك مفهوم پایگاههای اطلاعاتی و تهیه نمودار ارتباطات و نگهداری آن به مراتب ساده تر از دیگر مدلهاست.
بازیابی ركورد دلخواه آسان است.
با كمك این مدل می توان روابط پیچیدهء بین داده ها نمایش داد.
مدل داده ها و ارتباط بین آنها با مكانیزم واحدی نشان داده می شوند (جدول)
معایب :
محدودیتهای ناشی از پردازش ركوردی كاربردهای این مدل
عدم وجود مفهوم مالكیت
مدل شی گرا
ویژگیها :
مدل شیء گرا یك رویكرد مفهومی است.
مدل شیء گرا در بررسی جهان، بیش از هر چیز، به شناسایی اشیاء یا موجودیت های مستقل آن دنیا می پردازد .
اعمال تفییرات در طراحی ساده است.
طراحی مدل شیءگرا بر مبنای پنهان سازی اطلاعات است.
بصورت مجموعه ای از حالت اشیاء با حالت اختصاصی خود در نظر گرفته میشود.
در این روش برای هر موجودیت یك كلاس با طبقه ایجاد می شود.
هر شئ برای نمایش رابطه شمولیت غالباً ساختار سلسله مراتبی پیدا می کند.
ذخیره مستقیم اشیاء و بدون تبدیل به سایر فرمتها در پایگاه داده
بین مفاهیم برنامه نویسی شئ گرا و بانک اطلاعات، رابطه ای تو در تویی حاکم است.
موفقیتها :
به افراد اجازه تعریف تجرید را می دهد.
توسعه بعضی از ارتباطات را آسان می کند.
نیاز به کلید های تعریف شده توسط کاربر را از بین می برد.
مجموعه جدیدی از تساوی مستندات را توسعه داده است.
در بعضی موارد نیاز به پیوند را حذف می کند.
در بعضی موارد کارایی بیشتری نسبت به مدل رابطه ای دارد.
برای Versioning (تغییرات چند نسخه ای) وتراکنش بلند مدت پشتیبانی می شود.
در نهایت جبر شیء گرا توسعه یافته است.
مزایا :
فراهم نمودن مسیر انتقال ساده برای كاربران مدل رابطه ای به این مدل، برای گریز از محدودیت های مدل رابطه ای
وجود مفهوم مالكیت نسبت به مدل رابطه ای
اجرای بهتر پرسش و پاسخ ها نسبت به مدل رابطه ای
معایب :
عدم پشتیبانی از نما
نگرانی امنیت
عدم پشتیبانی از تغییرات تعریف کلاس پویا
پشتیبانی محدود از قیود ثابت
امکانات محدود انجام میزان سازی
پشتیبانی اندک از اشیاء مختلط
یکپارچگی محدود با سیستم های برنامه نویسی شیءگرای موجود
بازدهی محدود