مدل رابطه ای به عنوان یکی از برترین مدلهای بانک اطلاعات در سالهای گذشته شناخته می شد.
این مدل یک مدل ریاضی است که بر پایه مفاهیمی چون منطق گزارهای و نظریه مجموعهها ایجاد شده است.بزرگترین مزیت این مدل آن بود که تنها توسط یک ساختار بنام رابطه قابل ارایه بود که معادل جدول دو بعدی است که برای همگان قابل فهم است.
با وجود قدرتی که مدل رابطه ای نسبت به مدلهای قبلی خود داشت اما نقاط ضعفی هم داشت.
1.در مدل رابطه ای امکان دسترسی به طور همزمان ممکن نیست و در کارهای تیمی استفاده از نتایج دیگران هنگام انجام کار امکان ندارد.
2.در این مدل تنها می توان از انواع داده هایی که تعریف شده اند استفاده کرد و امکان تعریف داده های جدید وجود ندارد.
3.تراکنشهای بلند مدت در مدل رابطه ای وجود ندارد.
4.ارتباط با زبانهای برنامه نویسی سطح بالایی مثل شی گرا دشوار است.
5.پشتیبانی نکردن از پرس و جوهای بازگشتی
6.وجود رابطه های تودرتو
و ...
این مشکلات سبب شد تا متخصصین به فکر ساخت مدلهای جدیدی بیافتند که یکی از بهترین نوع آنها مدل شی گرائی است.
بیشترین قدرت شی گرائی ناشی از قابلیت ان در مدلسازی پدیده های دنیای واقعی می باشد .
مدل بانکهای اطلاعاتی شی گرا ، قدرت زبانهای شی گرا و سیستم های ذخیره و بازیابی اطلاعات را ترکیب کرده و به سیستم های بسیار قدرتمندی تبدیل شده اند.
تعریف مفاهیمی از قبیل کلاس، وراثت ، چند ریختی و ... قدرت فوق العاده ای به آن بخشیده است.
در مدل بانک اطلاعات شئ گرا داده ها فقط به شکل شئ ذخیره می شوند و ارتباط بین داده ها ،صفتها، محدودیت ها، و مسائل زمان و مکان را نیز در بر می گیرد مهمترین انواع انتزاع که در پژوهشهای مختلف پیشنهاد شده اند به قرار زیر است:
*کلاس بندی: که به مفهوم کلاس بر می گردد و رابطه ای تنگاتنگ با تعریف نوع داده دارد کلاس کارگاه تعریف داده و رفتارهای تعدادی پدیده است. هر پدیده باید شناسه ای واحد داشته باشد که در مدت طول عمر آن پدیده تغییر نکند.
در مدل شئ گرا هر پدیده ای مربوط به کلاسی است و خروجی پرس و جو ها ممکن است بخشی از یک شئ یا ترکیبی از چندین شئ باشد.
*گروهبندی : نوع خاصی از این انتزاع وجود دارد که به نام شی مرکب معروف است که از مجموعه چند شئ یک شئ بزرگتر بوجود می آید.
این نوع انتزاع کارائی بالایی دارد و ساختارهایی از قبیل مجموعه و آرایه را می توان با آن پیاده سازی نمود.
*ارث بری: کلاسهایی وجود دارند که صفات خود را از کلاسهای اصلی که ابر کلاس نامیده می شوند به ارث می برند. از یک ابر کلاس می توان چندین زیر کلاس مشتق نمود و هر زیر کلاس به نوبه خود می تواند ابر کلاس سطوح پایین تر باشد.
*ارتباط: این نوع انتزاع، ارتباط بین اشیا مختلف را نشان می دهد.
در واقع طراحی بانک اطلاعات در مدل شئ گرا یعنی ارائه بانک مورد نظر در قالب مکانیزم های ارائه شده توسط این مدل مانند : کلاس،وراثت،گروهبندی و...
داده های بانک اطلاعات در این مدل بصورت اشیایی در می آیند که به طرق مختلف در ارتباط با یکدیگر قرار می گیرند و عملیات گوناگون مانند وارد کردن داده ها، حذف و اضافه و به روز درآوردن آنها و استخراج اطلاعات توسط پیام هایی که بین اشیا رد و بدل می شود قابل انجام است.
یکی از بزرگترین دلایل توفیق بانک اطلاعات شی گرا امکان تعریف نوع داده توسط کاربر است.
مدل شئ گرایی به کاربر امکان می دهد که ضمن استفاده از انواع ساده داده های تعریف شده ، خود نیز به طور دلخواه به تعریف داده بپردازد و آنها را کنترل و پیاده سازی کند. که مفاهیم شی گرایی تعریف شده در این مدل مانند: وراثت ، چندریختی و... به این عمل قدرت فوق العاده ای بخشیده است.
مجردات جدید میتوانند ساختمان داده مورد نیاز برای کارهای پیچیده را تطبیق دهند.
DBMS چنـد کاربره باید امکان دسترسی همزمان به پایگاه داده را به کاربران بدهد. اگر کاربران همزمان بخواهند قسمتی از پایگاه داده را دستکاری کنند سیستم پایگاه داده را از این دسترسی ایمن می کند و کاربری زودتر درخواست کار با پایگاه داده کرده باشد اجازه داده می شود داده ها را دستکاری کند ؛ در طول این عمل ، کاربران دیگر ،به این قسمت از پایگاه داده دسترسی ندارند.در بانکهای اطلاعاتی شی گرا برای رفع این مشکل ،تراکنش بصورت همزمان پیاده سازی شده است بدین صورت که چند کاربر بطور همزمان می توانند به یک قسمت مشخص از پایگاه داده دسترسی داشته باشند.
تقریبا تمام سیستمهای رابطه ای از تراکنش بلند مدت پشتیبانی نمی کند. این مسئله هنگام کار با سیستمهایی که نیاز به دسترسی اطلاعات بصورت بلند مدت را دارد با مشکل مواجه می کند.
برای غلبه بر این مشکل سیستم شی گرا تراکنش بلند مدت را پشتیبانی می کند . بانک شئ گرا بصورت یک سیستم باز تعریف شده است که همواره می توان داده ها، دامنه ها و پردازش های جدیدی را به آن افزود این عمل امکان دسترسی کاربران به مدت طولانی به پایگاه داده را میسر می سازد.
یکی از اهداف بانک اطلاعات شی گرا را می توان یکپارچگی بانک اطلاعات و زبان های برنامه سازی دانست و به همین خاطر در پایگاه داده های شی گرا OQL به جای Sql مطرح شد.
OQL یک زبان رویه ای است که به وسیله آن می توان با یک پایگاده داده شی گرا رابطه برقرار کرد. دستورات OQL مشابه دستورات SQL در پایگاه داده رابطه ای است . این زبان یک زبان تعریفی است و یک زبان صرف محاسباتی نیست و با آن می توان عملیات برنامه نویسی را نیز تا حدود زیادی انجام داد. در این زبان انعطاف پذیری بیشتری نسبت به SQL وجود دارد به طور مثال عملگرهای تعریف شده توسط کاربر و انواع داده ای جدید نیز وجود دارد که تعریف آنها در دست کاربر است.
ضعف های بانک اطلاعات مدل شئ گرا :
انتظار می رود که فناوری شیئ گرا یک پرش کوانتومی در فناوری بانک اطلاعات را بهمراه داشته باشد ولی مدل OODB بخاطر نقاط ضعفی که هنوز در ان هست قادر به انجام ان نیست.
* در OODB فقدان یک طرح پایه که کاربران سیستم های بانک اطلاعات به ان عادت داشته باشند ، به چشم می خورد.و ساختار آن از فهم عمومی بانک اطلاعات متفاوت است.
* کار تئوریک قابل ملاحضه ای نسبت به مدل رابطه ای برای آن انجام نشده است.
* فقدان جبر پرسش استاندارد یکی دیگر از ضعف های اصلی OODB می باشد.
در مدل رابطه ای شباهت نزدیکی بین عملگر های جبر و سیستم فیزیکی سطح پائین وجود دارد. ولی در OODB ها بین این دو هیچ شباهتی وجود ندارد.
اکثر OODB ها از فقدان سهولت پرسش رنج می برند و هیچ شیئ پرسش استانداردی وجود ندارد و هنوز سعی و تلاش زیادی برای مطرح شدن object SQL نیاز می باشد.
* مدل های شی گرا نسبت به مدل رابطه ای در بعضی شرایط از امنیت پایینی برخوردار هستند بعضی از OODB ها نیاز دارند که کاربر صریحا قفل ها را قرار داده و مدیریت کنند ولی در مدل رابطه ای این عمل بصورت خودکار انجام می شود.
این مدل با وجود پیشرفتهایی که نسبت به مدل رابطه ای داشته است اما تمام مشکلات پیشروی پایگاههای داده ها را حل نکرده است و هنوز نقطه ضعفهایی دارد و احتمال دارد که هیچوقت قادر به حل مشکلات پایگاه داده ها نباشد و جای خود را به مدل بهتری دهد. اما آنچه که مسلم است با وجود تمام ضعفها مدل شی گرا موفقترین مدل بانک اطلاعات است که بعد از مدل رابطه ای ارایه شده است.
ورود به سایت