امروز: جمعه 10 فروردین 1403
دسته بندی محصولات
بخش همکاران
بلوک کد اختصاصی

مقاله ویژگی ها و کاربرد الگوریتم ها

مقاله ویژگی ها و کاربرد الگوریتم ها دسته: ریاضی
بازدید: 6 بار
فرمت فایل: doc
حجم فایل: 79 کیلوبایت
تعداد صفحات فایل: 16

مقاله ویژگی ها و کاربرد الگوریتم ها

قیمت فایل فقط 9,100 تومان

خرید

*مقاله ویژگی ها و کاربرد الگوریتم ها*

چكیده : در این گزارش ما به بررسی ویژگی های الگوریتمهای كنترل همروندی توزیعی كه بر پایه مكانیزم قفل دو مرحله ای(2 Phase Locking)   ایجاد شده اند خواهیم پرداخت. محور اصلی این بررسی بر مبنای تجزیه مساله كنترل همروندی به دو حالت read-wirte و write-write می‌باشد. در این مقال، تعدادی از تكنیكهای همزمان سازی برای حل هر یك از قسمتهای مساله بیان شده و سپس این تكنیكها برای حل كلی مساله با یكدیگر تركیب می‌شوند.

در این گزارش بر روی درستی و ساختار الگوریتمها متمركز خواهیم شد. در این راستا برای ساختار پایگاه داده توزیعی یك سطحی از انتزاع را در نظر می‌گیریم تا مساله تا حد ممكن ساده سازی شود.

1. مقدمه :  كنترل همروندی فرآیندی است كه طی آن بین دسترسی های همزمان به یك پایگاه داده در یك سیستم مدیریت پایگاه داده چند كاربره هماهنگی بوجود می‌آید. كنترل همروندی به كاربران اجازه می‌دهد تا در یك حالت چند برنامگی با سیستم تعامل داشته باشند در حالیكه رفتار سیستم از دیدگاه كاربر به نحو خواهد بود كه كاربر تصور می‌كند در یك محیط تك برنامه در حال فعالیت است. سخت ترین حالت در این سیستم مقابله با بروز آوری های آزار دهنده ای است كه یك كاربر هنگام استخراج داده توسط كاربر دیگر انجام می‌دهد. به دو دلیل ذیل كنترل همروندی در پایگاه داده های توزیعی از اهمیت بالایی برخوردار است:

1.  كاربراان ممكن است به داده هایی كه در كامپیوترهای مختلف در سیستم قرار دارند دسترسی پیدا كنند.

2.  یك مكانیزم كنترل همروندی در یك كامپیوتر از وضعیت دسترسی در سایر كامپیوترها اطلاعی ندارد.

مساله كنترل همروندی در چندین سال قبل كاملا مورد بررسی قرار گفته است و در خصوص پایگاه‌داده‌های متمركز كاملا شناخته شده است. در خصوص این مسال در پایگاه داده  توزیعی با توجه به اینكه مساله در حوزه مساله توزیعی قرار می‌گیرد بصورت مداوم راهكارهای بهبود مختلف عرضه می‌شود. یك تئوری ریاضی وسیع برای تحلیل این مساله ارائه شده و یك راهكار قفل دو مرحله ای به عنوان راه حل استاندارد در این خصوص ارائه شده است. بیش از 20 الگوریتم كنترل همروندی توزیعی ارائه شده است كه بسیاری از آنها پیاده سازی شده و در حال استفاده می‌باشند.این الگوریتمها معمولا پیچیده هستند و اثبات درستی آنها بسیار سخت می‌باشد. یكی از دلایل اینكه این پیچیدگی وجود دارد این است كه آنها در اصطلاحات مختلف بیان می‌شوند و بیان های مختلفی برای آنها وجود دارد. یكی از دلایل اینكه این پیچدگی وجود دارد این است كه مساله از زیر قسمتهای مختلف تشكیل شده است و برای هر یك از این زیر قسمتها یك زیر الگوریتم ارائه می‌شود. بهترین راه برای فائق آمدن بر این پیچدگی این است كه زیر مساله ها و الگوریتمهای ارائه شده برای هر یك را در ی.ك سطح از انتزاع نگاه داریم.

با بررسی الگوریتمهای مختلف می‌توان به این حقیقت رسید كه این الگوریتمها همگی تركیبی از زیر الگوریتمهای محدودی هستند. در حقیقت این زیر الگوریتمها نسخه‌های متفاوتی از دو تكنیك اصلی در كنترل همروندی توزیعی به نامهای قفل دو مرحله ای و ترتیب برچسب زمانی می‌باشند.

همانطور كه گفته شد، هدف كنترل همروندی مقابله با تزاحمهایی است كه در اثر استفاده چند كاربر از یك سری داده واحد برای كاربران بوجود می‌آید است. حال ما با ارائه دو مثال در خصوص این مسائل بحث خواهیم نمود. این دو مثال از محك معروف TPC_A مقتبس شده اند. در این مثالها، یك سیستم اطلاعات را از پایگاه داده ها استخراج كرده و محاسبات لازم را انجام داده و در نهایت اطلاعات را در پایگاه داده ذخیره می‌نماید.

حالت اول را می‌توان بروزآوری از دست رفته نامید. حالتی را تصور كنید كه دو مشتری از دو سیستم مجزا بخواهند از یك حساب مالی برداشت نمایند. در این حالت فرض كنید در غیاب سیستم كنترل همروندی، هر دو با هم اقدام به خواندن اطلاعات و درج اطلاعات جدید در سیستم میكنند. در این حالت در غیاب سیستم كنترل همروندی تنها آخرین درج در سیستم ثبت می‌شود. این حالت در شكل 1 نشان داده شده‌ است.

شكل 1 نمایش حالت بروز آوری از دست رفته

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

  • مشتری 1: بخواهد یك چك 1 میلیونی را به حساب X واریز و از حساب Y برداشت نماید.
  • مشتری 2: بخواهد بیلان حساب مالی X و Y شامل كل موجودی را نمایش دهد.

در غیاب كنترل همروندی همانطور كه در شكل 2 نشان داده شده‌است، تزاحم بین پروسس ها بوجود خواهد آمد. فرض كنید در زمانی كه مشتری 1 اطلاعات را از حساب Y خوانده و اطلاعات حساب X را دریافت نموده و 1 میلیون از حساب Y برداشت نموده ولی هنوز 1 میلیون به حساب X و اریز نكرده مشتری 2 اطلاعات كل دو حساب را دریافت نموده و نتیجه را چاپ نماید. در این حالت مشتری شماره 2 اطلاعاتی را كه به عنوان بیلان نمایش می‌دهد 1 میلیون از مقدار واقعی كمتر است. این حالت یك فرق اساسی با حالت اول دارد و آن این است كه در این حالت نتیجه نهایی در پایگاه داده درست خواهد بود در حالیكه اطلاعات دریافت شده بصورت موقت غلط خواهند بود.

شكل 2 خواندن اطلاعات نادرست از سیستم

مساله كنترل همروندی در پایگاه داده های توزیعی تا حدودی شبیه مساله دوبه‌دو ناسزگاری در سیستم عامل می‌باشد.  در مساله دوبه‌دو ناسازگاری، هماهنگی جهت دسترسی به منابع سیستم ائم از حافظه، ابزارهای ورودی و خروجی و CPU و .... بوجود می‌آید. در این حالت راه حلهای گوناگونی ائم از قفلها، سمافورها، مونیتورها و ... پیشنهاد شده است.

قیمت فایل فقط 9,100 تومان

خرید

برچسب ها : ویژگی ها و کاربرد الگوریتم ها , همروندی توزیع , سیستم , مدیریت , مقاله , ریاضی , کامپیوتر , کنترل همروندی , تزاحم , حساب مالی , دانلود , دانلود مقاله , دانلود تحقیق , دانلود پایان نامه

نظرات کاربران در مورد این کالا
تا کنون هیچ نظری درباره این کالا ثبت نگردیده است.
ارسال نظر