تماس درباره   صفحه اصلی
  پايگاه داده > مدل داده  
 
 

مدل داده


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

عناصر مدل داده
انواع مدل های داده
مدل سلسله مراتبی
مدل شبکه ای
پايگاه داده XML


مدل کردن داده (data modeling) تحلیل و توصيف داده های محیط عملیاتی و ارتباط بین آنها و شرح معنی و قیدهای داده است.

یک مدل داده قالب قراردادی برای ساخت و کارکردن با داده دراختیار می گذارد.

يک مدل داده پديده های دنيای واقعی را توصيف می کند و ساختار داده مورد نیاز برای حل مسئله خاص و ارتباط درونی بین ساختارها را تعریف می کند. دیاگرام ER مثالی از این نوع است که بیشتر توسط طراحان و تحلیل گران سیستم به کار می رود.

علاوه براين مدل داده تعیین می کند یک DBMS چگونه داده را درون خود، به کاربران و برنامه های کاربردی نمایش دهد. مدل رابطه ای مثالی برای این نوع از مدل داده است.


عناصر مدل داده

هر مدل داده باید جنبه های زیر را دارا باشد و نمادهائی برای بیان آنها داشته باشد:

• ساختمان های داده. که راهی برای سازماندهی داده های محيط عملياتی است و به DBMS می گوید چگونه داده نمایش داده می شود.
• جامعیت. برای تضمین سازگاری و اعتبار داده در پايگاه داده است و به DBMS می گوید چگونه مانع ورود داده نامعتبر به پايگاه داده بشود.
• عملیات. مجموعه روش هایی که امکان کار با داده را می دهند مانند عمليات اضافه، حذف، اصلاح و بازیابی داده.

ساختمان های داده

لازمه هر مدل داده ای وجود یك ساختار داده ای است. ساختار های داده نحوه سازماندهی داده های محيط عملياتی و نمايش داده در DBMS را تعيين می کند.

هر مدل داده بايد شامل نمادهائی برای تعريف انواع موجوديت، انواع صفات خاصه و انواع ارتباط بين موجوديت ها باشد.

جامعیت

در هر مدل داده بايد امکان تعريف قيدهای جامعيت وجود داشته باشد. قيدها قوانينی را برای تضمین سازگاری و اعتبار داده در پايگاه داده است وضع می کنند و به DBMS می گویند چگونه مانع ورود داده نامعتبر به پايگاه داده بشود.

عملیات

یک مدل داده علاوه بر ساختمان داده، مجموعه عملیاتی را تعریف می کند که می تواند روی داده انجام شود.

عمليات امکان کار با داده را می دهند مانند اضافه، حذف، اصلاح و بازیابی داده.

البته این عملیات ممکن است صریحا در زبان پرس و جو خاصی نباشند. بلکه اساسی را فراهم کنند که بر پایه آن زبان پرس و جو ساخته می شود.


انواع مدل های داده

مدل موجودیت-ارتباط
مدل سلسله مراتبی
مدل شبکه ای
مدل هاي داده شیء گرا
مدل داده نیمه ساختیافته (XML)
مدل رابطه ای


مدل سلسله مراتبی

قديمی ترين مدل برای طراحی پايگاه داده مدل سلسله مراتبی ( hierarchical model) است، که در اوایل دهه 60 توسط IBM برای سازماندهی دنیای تجارت به شکل سلسله مراتبی پيشنهاد شد.

در مدل سلسله مراتبی داده ها و ارتباط بین آنها به كمك یك درختواره نمایش داده می شوند.

درختواره گرافی است دارای یك ریشه و تعدادی گره که بین هر دو گره پیوندی وجود دارد. پيوند یك مسیر منطقی را از يک گره در سطح بالا به يک گره دیگر در سطح پايين برقرار می كند. مسیری از گره سطح پایین تر به گره سطح بالاتر وجود ندارد.

مدل اجازه تکرار اطلاعات را توسط ارتباطات والد/فرزند می دهد؛ یعنی هر گره در هر سطح می تواند تعدادی گره وابسته یا فرزند داشته باشد که بعنوان والد آنها محسوب می شود. هر گره فرزند تنها دارای يک گره والد است.


مثال. شرکتی چند شعبه دارد. هر شعبه احتیاج به چندین قطعه برای ساخت محصولاتش دارد. هر قطعه از چند تهیه کننده تهيه می شود.

در ساختار سلسله مراتبی دو نوع رکورد قطعه و موجوديت به صورت زير تعريف می شوند:

Product ( P#, Pname, Color, Weight, City)
Supplier (S#, Sname, Status, City, QTY)

Hierarchical model Example

خواص مدل

• هر گره درختواره حاوی کليه صفات خاصه يک نوع رکورد تحت يک نوع موجوديت است.
• درختواره مجموعه ای از رکوردها با انواع مختلف می تواند باشد.
• مجموعه ای از پیوندها را دارد که کلیه انواع رکورد را در ساختار بهم متصل می کند.
• حداکثر یک پیوند بین دو نوع رکورد وجود دارد بنابراین پیوندها نامگذاری نمی شوند.
• هر رکورد تنها والد در سطح بالاتر در درخت وجود دارد.
• اتصالی بین رکوردهای هم نوع وجود ندارد. بین رکوردهای هم سطح نمی توان حرکت کرد مگر اینکه والدشان یکی باشد.
• نقطه ورود به ساختار هميشه ريشه است و مسير منطقی هميشه از بالا به پايين است.
• دو عملگر جداگانه برای يافتن داده ای در ريشه و پرس و جو در فرزندان مورد نياز است.

مزایا و معایب

• چون داده به صورت يک درختواره سازماندهی می شود برای داده هایی که ماهيت سلسله مراتبی دارند مناسب است.
• ساختار سلسله مراتبی برای مدل کردن ارتباطات یک به چند مناسب است.
• ساختار درختی انعطاف پذیر نبوده و برقراری پیوندهای جدید بین رکوردها بعد از ايجاد درخت امکان ندارد. علاوه براين پيوندهای عمودی هستند و نمی توان پیوند افقی و مورب در درخت تعریف کرد.
• ارتباط تنها می تواند به صورت "تعلق دارد" یا "شامل می شود" کد شوند.
• در عمليات ذخیره سازی يعنی درج، حذف و بهنگام سازی دارای آنومالی است (درمثال امکان ذخيره تهيه کننده S4 تا زمانيکه ندانيم چه قطعه ای توليد می کند وجود ندارد).
• رويه های پاسخ به پرس و جوهای قرينه متقارن نيستند( برای مثال رويه جستجو برای "شماره تهيه کنندگانی که P2 را تهيه می کنند" متفاوت از رويه جستجوی "شماره قطعاتی که توسط S1 تهيه شده است").
• در نمايش افزونگی داده ناتوان است (در مثال اگر بخواهيم شهر S1 را تغيير دهيم در همه نمونه رکوردهایی که S1 ظاهر شده باید انجام شود دغير اينصورت ناسازگاری رخ می دهد).


مدل شبکه ای

درمقايسه با مدل سلسله مراتبی که ساختمان های داده ای به صورت درختی از رکوردها سازماندهی می شود و هر رکورد آن يک والد و چند فرزند دارد، مدل شبکه اجازه رکوردهائی با چند والد و چند فرزند را می دهد که در نتيجه يک ساختار مشبک را می سازد.

به مدل شبکه ساختار Plex هم گفته می شد.

درمقايسه با مدل سلسله مراتبی که درختی از رکوردها سازماندهی می شود و هر رکورد آن يک والد و چند فرزند دارد، مدل شبکه اجازه رکوردهائی با چند والد و چند فرزند را می دهد که در نتيجه يک ساختار مشبک را می سازد.

عمليات در مدل شبکه به صورت پيمايشی است از يک رکورد به ديگری با دنبال کردن ارتباطاتی که رکورد درآنها سهيم است دنبال می شود.


مثال. ارتباط دو سويه قطعه و تهيه کننده را دنظر بگيريد. هر قطعه توسط چند تهيه کننده تهيه می شود و هر تهيه کننده چند قطعه را عرضه می کند.

Network model Example

خواص مدل

• در این ساختار موجودیت ها به كمك انواع ركوردها، و ارتباطات به كمك پیوندهای بین ركوردها نمایش داده می شوند.
• هر گره فرزند می تواند بیش از یك گره والد داشته باشد.
• برای نمايش ارتباطات یك به چند دو سويه مناسب است.
• عملیات ذخیره و بازیابی پیچیده تر از مدل سلسله مراتبی است.
• برای پرس و جوهای قرینه رویه پاسخگوئی قرینه دارد ولی پیچیده است.
• متدهائی را برای ساخت و تعریف دوباره پیوندها دارد.
• ساختارهای فیزیکی مناسب برای ارتباطات شبکه ای ساختار چندحلقه است.

مزایا و معایب

• اجازه مدل کردن طبيعی تر ارتباطات مابين موجوديت ها را می دهد.
• مدل شبکه انعطاف پذیری بیشتری نسبت به سلسله مراتبی دارد.
• در عملیات ذخیره سازی آنومالی ندارد.
• مدل شبکه می تواند افزونگی داده را بهتر از سلسله مراتبی نشان بدهد.
• از دید کاربر وضوح کامل ندارد
• عمليات پيچيده تری دارد
• پیوند بین رکوردهای یک نوع ممکن نیست.
• اصل وحدت عملگر در یک عمل رعایت نمی شود.


پايگاه داده XML

يک پايگاه داده XML سيستم نرم افزاری است که اجازه می دهد داده در فرمت XML وارد، پردازش و ارسال شود.

دو دسته اصلی پايگاه داده XML وجود دارد:

1. XML-enabled . پايگاه داده ای که مستند XML را به عنوان ورودی گرفته به يک پايگاه داده ديگر نظير رابطه ای تبديل می کند و پس از انجام عمليات آنرا مجددا به XML بر می گردند.
2. Native XML (NXD). مدل داخلی چنين پايگاه داده ای بر پايه XML است و مستندات XML را به عنوان منبع ذخيره سازی مستقيما استفاده می کند.

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


سوالات چند گزينه ای مدل های داده


 


 


صفحه اصلی| PDF| درباره| تماس