بخشی از مقاله
چکیده
پایگاه داده، مجموعه ای است از داده های ذخیره شده به صورت مجتمع و مبتنی بر یک ساختار تعریف شده به صورت صوری، با حداقل افزونگی، تحت کنترل متمرکز که مورد استفاده همزمان و اشتراکی یک یا چند کاربر قرارگیرد. سیستم های مدیریت پایگاه داده متداول ابتکار عملی در هنگام رخ دادن شرایط خاص در سیستم ندارند. درحالیکه بسیاری از برنامه های کاربردی نیاز به نظارت خودکار دارند تا در صورت وقوع رویداد خاصی، سیستم مدیریت پایگاه داده واکنش مقتضی را انجام دهد. برای این منظور باید سیستم پایگاه داده ای طراحی شود تا امکان تعریف رویدادهای مورد نظر و واکنش های متناظر آن ها در آن پایگاه داده وجود داشته باشد، به چنین سیستمی، سیستم پایگاه داده ی پویا گفته می شود. رفتار واکنشی سیستم پایگاه داده ی پویا بوسیله ی یک سری قوانین پویا سازماندهی می شوند. این قوانین وضعیتهای مختلف پایگاه داده که باید تحت کنترل قرارگرفته و واکنش لازم نسبت به آنها انجام شود را تعیین می کنند.
کلمات کلیدی: پایگاه داده، الگوریتم Redo، الگوریتم Undo
.1 مقدمه
سیستم مدیریت پایگاه داده ها باید بتواند, در صورت بروز خرابی, پایگاه داده ها را ترمیم و آسیبها و خسارات وارده بر آن را جبران کند . بروزعیب در سیستم سبب بروز اشتباه می شود و اشتباه خود منجر به بروز خرابی در سیستم می شود. خرابی اشتباه عیب ترمیم ، فرایندی است که در صورت بروز خرابی ، پایگاه داده ها را به وضع صحیح برمی گرداند. سازگاری پایگاه داده با صحت آن یکسان نیست. سازگاری یعنی وضعی که تمام قواعد جامعیت اعمال شده باشد. صحت یعنی پایگاه داده نشان دهنده وضعیت درست جهان واقع باشد.
2. اجزای زیرسیستم مدیریت ترمیم
-1-2 مدیر ترمیم - واحد نرم افزاری -
-2-2 امکاناتی برای ترمیم
✓ حافظه مانا
✓ حافظه نامانا
✓ فایل ثبت
✓ ایجاد نقطه وارسی
✓ لیستهای کاری
✓ نسخه پشتیبان
3. وظیفه مدیر ترمیم پس از وقوع نقض سیستمی :
-1-3 فاز تحلیل :
بررسی وضیعت بافرهای نهان جهت شناسایی:
صفحات تغییر یافته تراکنش های فعال در لحظه بروز خرابی صفحه تغییر یافته ، صفحه ای است که تغییرات اعمال شده در آن توسط یک تراکنش ، هنوز روی دیسک منتقل نشده اند .
-2-3 بعد از فاز تحلیل:
یکی یا هردو عمل زیر بسته به الگوریتم ترمیم انجام می شود:
عمل REDO
- تکرار عملیات انجام شده توسط تراکنش تثبیت شده - عمل UNDO - خنثی کردن اثر اجرای ناقص تراکنش طرد شده و رفع تاثیرات بروز نقص در پایگاه داده ها - برای انجام این اعمال از فایل ثبت - log file - استفاده می شود. عملیات ترمیم توسط مدیر ترمیم صورت می گیرد و کاربر دخالتی در آن ندارد اما اخیرا پیشنهاداتی ارائه شده که بخشی از اعمال ترمیم و به ویژه عمل UNDO به صورت تعاملی با کاربر ، انجام شود.
.4امکانات ترمیم
-1-4 حافظه مانا:
فایل ثبت
پایگاه داده ها
نسخه های پشتیبان
-2-4 حافظه نامانا :
بافر نهان
.5 حافظه مانا
حافظه ای است صفحه بندی شده که در آن عمل نوشتن یک صفحه ، انجام می شود. درقبال نقص سیستمی از آسیب مصون است.
حافظه مانا
✓ حافظه مانای برخط - دیسک -
✓ حافظه مانای برون خط - نوار مغناطیسی -
6. ثبت با نوشتن پیشرس در بهنگام سازی با تأخیر
در این روش رکورد ثبت حاوی پسا تصویر وسایر اطلاعات لازم - و نه پیش تصویر - قبل از انتقال پسا تصویر به پایگاه ، در فایل ثبت نوشته می شود . وقتی که تراکنش به تثبیت می رسد، یک رکورد تثبیت نیز در فایل ثبت نوشته می شود. حال اگر یک خرابی یا نقص سیستمی بعد از رسیدن تراکنش به مرحله تثبیت وقبل از انتقال نتیجه بهنگام سازی به پایگاه مانا پیش آید ،سیستم پساتصویر را از فایل ثبت میخواند و عمل REDO را انجام می دهد. اگر تراکنش طرد شود نیازی به عمل UNDO نخواهد بود و تنها یک رکورد طرد برای تراکنش در فایل ثبت نوشته می شود.
.7 ثبت با نوشتن پیشرس در بهنگام سازی بلافاصله در این روش ، پیش از آنکه داده در حافظه نهان بهنگام در آید، پیش تصویر در بافر فایل ثبت نوشته می شود و وقتی تراکنش به مرحله تثبیت برسد، پیش تصویر باید در فایل ثبت نوشته شود و سپس پسا تصویر به پایگاه مانا انتقال یابد. وقتی که خرابی بروز کند سیستم با خواندن فایل ثبت، پیش تصویر را یافته و عمل Undo را انجام میدهد و طبعاً رکورد طرد هم برای تراکنش در فایل ثبت نوشته می شود.
.8 عملیاتUNDO
.9عملیاتREDO
.10 لیستهای کاری مدیر ترمیم ، برای ترمیم پایگاه داده ها ، تعدادی لیست کاری هم آماده میکند. که عبارتند از:
-1-10 لیست تراکنش های فعال:
این لیست در زمان ایجاد نقطه وارسی آماده می شودو گاه آدرس آن و یا خود لیست که حاوی شناسه تراکنش های فعال در لحظه ایجاد نقطه وارسی است،در رکورد نقطه وارسی در فایل ثبت ذخیره می شود.
-2-10 لیست UNDO
این لیست حاوی شناسه ترکنش هایی است که باید در فرایند ترمیم ، UNDOشوند.
-3-10 لیست REDO
در این نوع لیست شناسه تراکنشهایی قرار داد که باید در فرایند ترمیم ، REDO شوند.
.11 روشهای ترمیم خرابی سیستم
الگوریتم های ترمیم اساسا بر دو عمل UNDO,REDO مبتنی هستند.