هایدی

مرجع دانلود فایل ,تحقیق , پروژه , پایان نامه , فایل فلش گوشی

هایدی

مرجع دانلود فایل ,تحقیق , پروژه , پایان نامه , فایل فلش گوشی

دانلود مقاله تکنیک های ترمیم فاجعه ها در سیستم های پایگاه داده

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

 

 

 

مقدمه
گسترش استفاده از کامپیوتر باعث نفوذ کاربرد کامپیوتر در جنبه های مختلف زندگی انسان از جمله جنبه های حیاتی مانند کنترل ترافیک هوایی ، کنترل خودکار خطوط دریایی ، مدیریت نقطه فروش و حتی سرویس فروش بلیط سینما شده است. داده های ذخیره شده در سیستم های کامپیوتری با ارزش ترین دارایی یک شرکت است که باید به هر قیمت از آن محافظت کنند.
تکنیک های تحمل خطا برای افزایش قابلیت در دسترس بودن سیستم و کاهش خرابی های ناشی از بروز خطا در اجزا گسترش یافتند.[3] داده های حیاتی درون حافظه پایدار ذخیره شده و کپی های اضافی برای ذخیره در حافظه های پایدار تهیه می شوند این روش ها مناسب است ولی در برابر رخ دادن یک حادثه ممکن است نا کارآمد باشد . از جمله این حوادث می توان به زلزله سال 1906 در سان فرانسیسکو اشاره کرد که بیش از نیمی از شهر را ویران کرد .
رویه های وسیع تهیه پشتیبان برای محافظت داده ها در مقابل بروز یک حادثه گسترش یافتند که از جمله آنها می توان به رویه های تهیه پشتیبان به صورت پدر بزرگ – پدر – فرزند، تکنیک¬های رویدادنگاری افزایشی و متد نسخه¬برداری تصویر داده¬ها اشاره کرد.[3] به علاوه، برای نگهداری در برابر از دست رفتن داده، سیستم باید بتواند سرویس عادی خود را پس رخ دادن حادثه ارائه کند. بنابراین همراه با داده سخت افزار کامپیوتر نیز باید جایگزین شوند.

 

تعریف ترمیم
پایگاه¬داده¬ها بالقوه در معرض آسیب است. انواع نقص (عیب) و در نتیجه خرابی ممکن است در پایگاه¬داده-ها بروز کند. سیستم مدیریت پایگاه¬داده¬ها باید بتواند, در صورت بروز خرابی, پایگاه¬داده¬ها را ترمیم و آسیبها و خسارات وارده بر آن را جبران کند. به عبارت دیگر می¬توان بروز خرابی در سیستم را ناشی از بروز اشتباه در سیستم دانست که خود اشتباه ناشی از ایجاد نقص در سیستم است.[2]
به عبارت ساده ترمیم یعنی بازگرداندن پایگاه¬داده-ها به وضع سازگاری که درست قبل از بروز خرابی داشت. به بیان دیگر به آخرین وضع سازگار, به گونه¬ای که اثری از خرابی در آن نباشد.

 


سلسه مراتب خطا
خطاها انواع مختلفی داشته و در منابع مختلف دسته-بندی¬های متفاوتی برای آنها معرفی شده است.
از جمله می¬توان خرابی¬ها را به دو دسته عمده خرابی سیستمی و خرابی رسانه¬ای تقسیم کرد. خرابی سیستمی سبب می¬شود تا حداقل یک و معمولاً تمام تراکنش-های در حال اجرا در سیستم آسیب ببینند ولی داده¬های ذخیره شده در حافظه جانبی دچار خرابی نمی¬شوند. مثل خرابی ناشی از قطع جریان برق. برعکس خرابی¬های رسانه-ای سبب ایجاد خرابی در تمام یا قسمتی از داده¬های ذخیره شده در حافظه مانا می¬شود و حداقل روی آن دسته از تراکنش¬هایی که در حال استفاده از داده¬ها هستند تأثیر می¬گذارد.
بر اساس شدت سختی خطا از کم به زیاد خطاها به چند دسته تقسیم می شوند : زودگذر، Crash، رسانه¬ای، محلی، اپراتور و خطا های بدخواه.[2]
خطاهای گذرا آنهایی هستند که موجب از دست رفتن پیغام ها در سیستم های مبتنی بر شبکه می¬شوند . پروتکل¬ها در لایه داده، لایه شبکه و لایه کاربرد می-تواننند برای رفع و کنترل این گونه خطاها طراحی شوند.
در هنگام رخ دادن یک خطا ی Crash تمام محتویات حافظه و نیز حالات برنامه موجود در پردازنده از بین می¬روند. مکانیسم های استاندارد ترمیم Crash مانند عمل نقطه¬وارسی روی یک حافظه پایدار می¬توانند برای مدیریت این مساله اتخاذ شوند.
خطاهای رسانه¬ای به نقص داده در روش¬های حافظه ماندگار مربوط می شوند. برای مقابله با خطاهای رسانه¬ای نسخه های پشتبان داده وابسته به موقعیت و فرصت باید تهیه شود. این رویه¬های تولید پشتیبان ممکن است دستی یا خودکار باشند. ممکن است روی نوارها، دیسک ها و یا کارتریج¬ها ذخیره شوند. واحد پشتیبان-گیری ممکن است یک نسخه¬برداری کامل پایگاه داده یا یک رکورد ثبت ساده باشد. پس از رخ دادن یک خطای رسانه¬ای نسخه¬های پشتیبان باید برای ترمیم داده¬های از دست¬رفته بازیابی شوند.
خطاهای سایت یا محلی تمام پردازنده های موجود در یک محل را تحت تاثیر قرار می¬دهند. این نوع خطاها ممکن است یک مجموعه از ایستگاه¬های کاری در یک اتاق یا یک مجموعه در یک ساختمان را تحت تاثیر قرار دهند.[2] از آنجایی که این خطاها ماشین¬هایی در محدوده بزرگی را تحت تاثیر قرار می¬دهند این خطا ها می¬توانند اولین نوع خطاهایی باشند که به حادثه یا فاجعه مشهور می¬باشند. طرح¬ها و تسهیلات موجود ترمیم فاجعه می¬توانند برای تحمل خطاهای سایت طراحی شوند. داده¬ها در حافظه-های پایدار و کارتریج¬های پشتیبان ممکن است جبران ناپذیر باشند. جداسازی جغرافیایی سخت افزارهای اضافی و داده¬ها می تواند به ترمیم این گونه از حوادث کمک کند.
اعمال بشر باعث لایه بعدی از حوادث می شوند. به عنوان مثال ممکن است شخصی به صورت تصادفی نسخه¬های جاری و پشتیبان را با هم اشتباه کرده و آخرین نتیجه نوشته شده را دوباره بنویسد. بر عکس خطاهای محلی، مشخص کردن محدوده خطاهای اپراتور و تشخیص داده¬های خوب از داده¬های بد کار ساده ای نمی¬باشد. رویه های ترمیم معمولاً وقت¬گیر هستند. خطاهای اپراتور را می¬توان بوسیله محدودسازی اختیارات کاربرهای کم تجربه و تهیه حافظه¬های پشتیبان کافی به حداقل رساند.[1]
بدترین نوع خطا، خطاهای بدخواه یا رومی است که می¬توانند تمام قطعات اطلاعات را نابود سازند. یک نمونه از آنها ویروس کامپیوتری مثل Michelangelo است که قادر است پردازنده¬های اولیه و پشتیبان ونیز نوارهای پشتیبان را آلوده سازد. این نمونه از خطاها می¬توانند بوسیله وادارسازی پروتکل¬ها به توسعه خود بوسیله کنترل¬های ایمنی بسیار سخت و تهیه تعداد نسخه¬های پشتیبان کافی کاهش داد.[1]

 

معماری سیستم و طبقه بندی ترمیم¬ها
معماری اصلی سیستمی که ما در نظر می¬گیریم شامل یک سایت اولیه و یک سایت پشتیبان است (شکل 1). سایت اولیه ممکن است یک سیستم پایگاه¬داده درست یا یک واحد دیسک تنها را ارایه کند. در موارد گذشته، یک واحد پردازش یک کامپیوتر همه منظوره همراه با چندین دیسک و نوار است و در موارد اخیر، یک واحد پرداش یک کنترل کننده دیسک است که هیچگونه نواری در سایت ندارد. به موازات سایت اولیه، سایت پشتیبان نیز شامل واحد پردازش، دیسک و نوار است که اطلاعات کافی در آن ذخیره می¬شود تا در صورتی که سایت اولیه از کار افتاد اطلاعات موجود در پشتیبان برای ترمیم داده¬های از دست رفته در سایت اولیه مورد استفاده قرار گیرد. بنابراین پشتیبان فقط هنگام خطا مورد استفاده قرار می گیرد.[1]

شکل 1

 

بسته به اینکه سایت پشتیبان چگونه عمل می کند ما سیستم های قابل ترمیم را به دو دسته ترمیم داده و ترمیم سرویس تقسیم می¬کنیم. یک سیستم ترمیم داده هنگامی که یکی از اجزا سیستم از کار افتاد، فقط داده ها را ترمیم یا به حالتی سازگار باز می¬گرداند. سیستم ممکن است سرویس دهی خود را تا زمان تعمیر اجزا متوقف کند. در سیستم ترمیم سرویس, داده¬ها در حین ارایه سرویس¬ها پیوسته ترمیم می¬شوند. تقسیم بندی بالا در شکل 2 به صورت روشن¬تری نمایش داده شده است.[1]
ترمیم داده به همزمان سازی داده، تکرار داده و خوشه¬بندی واحدهای عمل تقسیم می¬شود. همزمان سازی داده که برقراری سازگاری بین داده و پشتیبان را شامل می-شود به دو صورت بدون تاخیر و با تاخیر صورت می¬گیرد. همزمان¬سازی بدون تاخیر هنگامی که سیستم اولیه در حال ارائه سرویس است صورت می¬گیرد در حالی که همزمان سازی با تاخیر هنگامی که سیستم های اولیه داده¬ها را تغییر نمی¬دهند صورت می¬پذیرد. به عنوان مثال یک پایگاه¬داده بانکداری پشتیبان سازی داده¬ها را در شب هنگامی که تراکنش¬ها در حال پردازش نیستند انجام می دهد. به صورت مشهور، نسخه¬های پشتیبان سیستم¬های دسته¬ای به وسیله یک متد با تاخیر که سایت¬های داغ نامیده می-شوند صورت می¬پذیرد.[2] یک سایت پشتیبان عادی پایگاه-داده را بر اساس آخرین کپی پایگاه داده بایگانی شده و با استفاده از تغییرات فایل ثبت که تا آن زمان به پایگاه داده اعمال شده اند دوباره سازی می نماید.
پشتیبان بدون تاخیر از کپی¬های پایگاه¬داده به روز شده¬تر در تهیه نسخه پشتیبان استفاده می¬کند. تغییرات در سایت اولیه برای انجام اعمال فوری در پایگاه¬داده پشتیبان به سایت پشتیبان تحویل داده می¬شود. برای حذف هرگونه تفاوت در سایت¬های اولیه وپشتیبان، هر دو سایت واحدهای عملیاتی خود را در روشLok-step انجام می¬دهند بدین معنی که هر عملیاتی در سایت اولیه باید با عملیات متناظر خود در سایت پشتیبان همزمان شود. این روش هزینه ارتباط بالایی می¬طلبد و نیز پرداش واحدهای عملیاتی در سایت اولیه پایین می¬آورد. به عنوان یک مصالحه، سایت¬های اولیه و پشتیبان به صورت سستی با هم هم¬زمان می¬شوند. سایت اولیه واحدهای عملیاتی را که باید اجرا شود به سایت پشتیبان می¬فرستد ولی منتظر اجرای ‌آنها بوسیله سایت پشتبان نمی¬ماند. این عمل باعث ایجاد اختلاف اندکی بین پایگاه داده اولیه و پشتیبان می¬شود که بسته به تاخیر ارتباط و سرعت پردازش سایت¬ها متفاوت است.[3]

شکل 2 - تقسیم بندی سیستم های ترمیم پذیر

 

تکرار داده به دو صورت انفعالی و فعال تقسیم بندی می¬شوند. در تکرار داده انفعالی، اقلام داده ای تکرار شده به ثانویه ها ارسال شده و بدون پرداش در وسایل حافظه سخت افزاری ذخیره می شوند. در تکرار داده فعال ، اقلام داده تکرار شده به ثانویه ها ارسال شده و سپس برخی پروتکل های تکرار در ثانویه ها اجرا می شوند
ریزدانه¬گی واحدهای عملیات نیز باید در سیستم های ترمیم پایگاه داده در نظر گرفته شوند. برخی سیستم¬ها واحدهای کوچکی از عملیات مانند خواندن و تغییر اجزای داده را پشتیبانی می¬کنند. عملیات به صورت ضمنی اتمیک هستند. [2]این ایده برای سسیستم های پردازش تراکنش که در آنها عملیات ها به صورت یک تراکنش گروه بندی می شوند استفاده می شود. اتمیک بودن اجرای تراکنش تضمین می شود: تمام عملیات یا باید به طور کامل اجرا شوند یا اصلا نباید اجرا شوند.
در سیستم¬های ترمیم سرویس، پشتیبان, داده¬ها را پس از رخ دادن نقص در سایت اولیه ترمیم کرده و سپس یک سایت اولیه جدید می¬گیرند. پس از اینکه سایت اولیه اصلی ترمیم شد، سایت ترمیم شده یا به عنوان سایت اولیه به فعالیت خود ادامه می¬دهد یا خود را به عنوان سایت پشتیبان معرفی می¬کند. یک سیستم ترمیم داده در صورتی که اجزای سخت افزاری تکرار شده کافی در سایت پشتیبان با مد خرابی غیر وابسته داشته باشد می تواند به یک سیستم ترمیم سرویس ارتقا یابد.
اگر سایت پشتیبان یک سیستم ترمیم سرویس قبل از گرفتن سایت اولیه جدید منتظر ترمیم داده باشد ، کاربر مدت زیادی معطل خواهد شد. بنابراین بعضی از سیستم ها برای پذیرفتن سرویس جدید درخواست شده از سوی کاربر در حالی که داده¬ها در حال ترمیم هستند طراحی می¬شوند. به سیستم با این ویژگی سیستم بدون وقفه می گویند.یک نمونه سیستم های بدون وقفه جفتی هستند.[2]
روش تکرار داده انفعالی برای مقاومت در برابر خطاهای گذرا، خطا های رسانه¬ای وCrash کردن پردازنده طراحی شده است. روش های عادی تکرار انفعالی شامل روش دیسک منعکس شده، RAID، دیسک منعکس شده دور و روش سایت اولیه است.
روش دیسک منعکس شده فقط یک خطای رخ داده در دیسک ها را تحمل می کند که این کار را با داشتن دو دیسک یکسان که به صورت همزمان در سرتاسر یک کنترلر دیسک عادی تغییر می یابند انجام می دهد. هر کدام از دیسک-های در حال کار برای سرویس دهی به درخواست داده کافی می باشند. این سیستم دیسک بسیار گران بوده و در مقابل رخ دادن یک فاجعه (disaster) غیر قابل ترمیم است.[1]
روش RAID یک گروه از G دیسک داده به اضافه یک دیسک توازن که به کنترلر دیسک عادی متصل است می باشد. بلاک توازن ، exclusive-or G بلاک داده¬ی متناظرش را ذخیره می¬کند. خواندن یک بلاک داده از RAID به خواندن بلاک از یک دیسک داده مناسب برگردانده می¬شود. نوشتن یک بلاک داده به دیسک شامل نوشتن بلاک داده به دیسک به علاوه تغییر بلاک توازن متناظر آن است. روش RAID می تواند عمل خود را با وجود رخ دادن یک خرابی دیسک ادامه دهد. عمومی ترین روش RAID سطح 5 نامیده می¬شود. در این روش بلاک¬های داده و بلاک¬های توازن بین دیسک¬هایی که بار کار را به صورت مساوی پخش کرده و تنگراه¬ها به دیسک توازن را برداشته¬اند تقسیم می¬شوند. هم دیسک منعکس شده و هم RAID در مقابل فجایع (disaster) قابل ترمیم نیستند.
روش دیسک منعکس شده دور یک بسط از روش دیسک منعکس شده است. تغییرات به دیسک منعکس شده¬ای که در سایتی دور در طول یک شبکه قرار دارند به صورت غیر همزمان اعمال می¬شوند. این روش در مقابل حادثه¬ای که در سایت اولیه رخ می دهد قابل ترمیم است هر چند که داده¬های منتشر نشده به سایت دور از بین می¬روند. روش دیسک منعکس شده دور می¬تواند با استفاده از بیش از یک نسخه پشتیبان به روش سایت اولیه تعمیم پیدا کند. تغییرات در سایت اولیه انجام شده و سپس به سایت ثانویه به صورت غیر همزمان منتشر می¬شوند. برای ترمیم خطای رخ داده شده در سایت اولیه، یکی از سایت¬های ثانویه به عنوان اولیه جدید انتخاب می¬شود.
در روش تکرار داده فعال ، سایت¬های پشتیبان به اندازه کافی قدرت پردازشی و منابع مورد نیاز برای تسهیم بار کاری سایت اولیه را دارا هستند. در روش توافق اکثریت ، یک عمل تنها وقتی که اکثریت سایت ها با انجام آن موافق باشند قابل انجام است. بازده این روش بالاتر است ولی هزینه عمل خواندن و نیز نوشتن متوسط است. توافق اکثریت می تواند به روش توافق حد نصاب تعمیم پیدا کند . به جای گرفتن رضایت اکثریت سایت ها برای یک عمل خاص ، فقط رضایت یکسری سایت مرتبط که به نام حد نصاب یا quorum هستند نیاز است . پروتکل های توافق حد نصاب در سایز quorum ها ،overhead و تحمل پذیری خطا متفاوت هستند.

 

فرمت این مقاله به صورت Word و با قابلیت ویرایش میباشد

تعداد صفحات این مقاله   15 صفحه

پس از پرداخت ، میتوانید مقاله را به صورت انلاین دانلود کنید


دانلود با لینک مستقیم


دانلود مقاله تکنیک های ترمیم فاجعه ها در سیستم های پایگاه داده
نظرات 0 + ارسال نظر
برای نمایش آواتار خود در این وبلاگ در سایت Gravatar.com ثبت نام کنید. (راهنما)
ایمیل شما بعد از ثبت نمایش داده نخواهد شد