تحقیق بانک اطلاعاتی توزیع شده ۴۸ ص

تحقیق بانک اطلاعاتی توزیع شده ۴۸ ص

تحقیق بانک اطلاعاتی توزیع شده ۴۸ ص

تحقیق-بانک-اطلاعاتی-توزیع-شده-48-صلینک دانلود و خرید پایین توضیحات
دسته بندی : وورد
نوع فایل :  word (..doc) ( قابل ویرایش و آماده پرینت )
تعداد صفحه : ۴۹ صفحه

 قسمتی از متن word (..doc) : 
 

۲
‏دانشگاه آزاد اسلامی
‏نام تحقیق :
‏بانک اطلاعاتی توزیع شده
۴
‏بانکهای اطلاعاتی توزیع شده
‏(گزارش شماره ‏۱‏)
‏در این گزارش مباحثی کلی در مورد بانکهای اطلاعاتی توزیع شده، معماریهای آنها و مسائل و مشکلاتی که هنگام حرکت از بانکهای اطلاعاتی متمرکز به سمت بانکهای اطلاعاتی توزیع شده با آنها روبرو هستیم صحبت شده و تعدادی از کارهای جدیدی که در زمینه برطرف شدن مشکلات مربوطه انجام شده شرح داده شده است. از جمله یک کار جدیدی که در زمینه سنکرون کردن داده های کپی شده انجام شده در انتهای این گزارش شرح داده شده است.
‏فهرست مطالب این گزارش :
‏۱. ذخیره اطلاعات به صورت توزیع شده‏
‏۲. تراکنشهای توزیع شده
‏۳. مدیریت همزمانی در بانکهای اطلاعاتی توزیع شده
‏۴. مدیریت بن بست
‏۵. سنکرون کردن اطلاعت کپی شده
‏۶. منابع
‏مقدمه
‏بانک های اطلاعاتی توزیع شده متشکل از سایتهایی غیر وابسته هستند که هیچ منبعی را به صورت فیزیکی به اشتراک نمی گذارند. هر سایت می تواند در اجرای تراکنشی که منجر به دستیابی به اطلاعات یک یا تعداد بیشتری سایت دیگر می شود شرکت نماید. تفاوت اصلی مابین بانکهای اطلاعاتی متمرکز و توزیع شده این است که در بانکهای اطلاعاتی متمرکز همه اطلاعات در یک نقطه متمرکز شده است در حالی که در بانکهای اطلاعاتی توزیع شده ممکن است قسمتهای مختلف اطلاعات در نقاط مختلف توزیع شده باشند و یا اینکه کپی های مختلفی از اطلاعات در نقاط مختلف نگهداری شوند[۱]‏.
‏۱. ذخیره اطلاعات به صورت توزیع شده
‏ذخیره اطلاعات به صورت توزیع شده به دو روش Replication‏ یا Fragmentation‏و یا ترکیبی از این دو روش انجام می گیرد. در روش Replication‏ دقیقا یک کپی فیزیکی از اطلاعات در نقاط مختلف سیستم یعنی سایر سایتها ذخیره می گردد ولی در روش Fragmentation‏‌‏ اطلاعات به چند بخش یا پارتیشن تقسیم می شود و هر بخش در یکی از سایتها نگهداری می شود. در روش ترکیبی اطلاعات به چند بخش تقسیم می شوند و از تعدادی از بخشها و یا همه آنها کپی هایی در سایتهای مختلف نگهداری می شود. روش Fragmentation‏ به دو طریق عمودی و افقی صورت می گیرد. در روش عمودی تقسیم بندی یک Relation‏ روی فیلدها صورت می گیرد. یعنی هر بخش از اطلاعات مشتمل بر تعدادی از فیلدهای Relation‌‏ است ولی در روش افقی تقسیم بندی روی رکوردهای
۵
Relation‌‏ صورت می گیرد. برای مثال رکوردهای مربوط به ماه خرداد در یک بخش و رکوردهای مربوط به ماه تیر در بخش دیگری ذخیره می گردند. در روش عمودی برای دستیابی به Relation‏ اولیه باید بین بخش های مختلف join‌‏ بزنیم و در روش افقی برای دستیابی به آن باید از اجتماع استفاده نماییم.
‏محاسن روش Replication ‏عبارتند از:
‏در دسترس بودن :‏‌‏ در شرایطی که یکی از سایتها بنا به دلیلی از بیفتد حداقل یک سایت دیگر وجود دارد که می تواند دسترسی به اطلاعات سایت از کار افتاده را امکان پذیر سازد. پس اگر درخواست دسترسی به اطلاعاتی که مربوط به یک سایت از کار افتاده است، صادر شود، پاسخگویی به این درخواست از طریق سایت دیگری که replication‏ ای از سایت از کار افتاده را در اختیار دارد امکان پذیر می شود.
‏افزایش توانایی موازی سازی : در صورتی که چندکپی از اطلاعات در سایتهای مختلف وجود داشته باشد در هنگام درخواست خواندن این اطلاعات می توان به صورت موازی بخشی از اطلاعات را از یک سایت و بخشهای دیگر آن را از سایتهای دیگر خواند و به این طریق عمل خواندن حجم زیادی از اطلاعات را به صورت موازی و با هزینه ای کمتر انجام داد.
‏معایب روش Replication‏ :
‏افزایش سربار بروزرسانی اطلاعات :‏‌‏ به دلیل اینکه از یک داده کپی های مختلفی در سایتهای مختلف وجود دارد در هنگام تغییر دادن این داده باید همه کپی های آن را نیز تغییر داد تا سازگاری در کل سیستم حفظ شود که این کار سرباز زیادی به همراه دارد.
‏پیچیدگی در مدیریت همزمانی :‏‌‏ به دلیل اینکه از یک داده چند کپی وجود دارد مدیریت Lock‏ در این روش پیچیدگی بیشتری را نسبت به روش متمرکز به همراه خواهد داشت.
‏به طور کلی روش Replication‏ بازدهی عمل خواندن را بالا برده و در دسترس بودن ایجاد می کند ولی برای عمل نوشتن بهینه نیست و سربار اضافی دارد.
‏۲. تراکنشهای توزیع شده
‏هر سایتی یک مدیر تراکنش دارد که وظیفه آن حفظ خصوصیت های ACID‏ در همان سایت است. همچنین هر سایت یک هماهنگ کننده تراکنش (Transaction Coordinator‏) دارد که وظیفه آن این است که در مورد تراکنشهایی که از آن سایت شروع می شوند:
‏تراکنش را شروع کند
‏تراکنش را به تعدادی زیر تراکنش تقسیم کند و آنها را بین مدیران تراکنش سایتهای مربوطه توزیع کند.
‏تراکنش را به پایان برساند یعنی یا آن را commit‏ کند و یا در صورت commit‏ نشدن تراکنش را در همه سایتهای شرکت کننده در آن Abort‏‌‏ کند.
‏علاوه بر مشکلاتی که در سیستمهای متمرکز به وجود می آید مانند خطای نرم افزاری، خطای سخت افزاری، خطای دیسک و … نوع دیگری از خطاها در سیستم های توزیع شده وجود دارد که از این دست می توان به از کار افتادن یک سایت، گم شدن پیغامها، قطع شدن یک لینک ارتباطی و یا تقسیم شدن شبکه به دو بخش نا متصل اشاره نمود.
۵
‏در سیستم توزیع شده ممکن است یک پیغام گم شود و یا خراب شود که برای رفع این مشکل از پروتکل های انتقالی مانند TCP‏ استفاده می شود.
‏۳. مدیریت همزمانی در بانکهای اطلاعاتی توزیع شده
‏همانطور که در یک سیستم متمرکز برای برقراری همزمانی مابین فراروندها از یک پروتکل Lock‏‌‏ استفاده می کنیم در سیستمهای توزیع شده نیز از یک پروتکل Lock ‏استفاده می کنیم با این تفاوت که این پروتکل برای سیستم های توزیع شده طراحی شده است. برخی از این پرتکل ها عبارتند از Single Lock Manager‏، Primary Copy‏، Majority Protocol‏، Biased Protocol‏ و …
‏در Single Lock Manager‏ یکی از سایتها را Lock Manager‏‌‏ می کنیم. هر کس که بخواهد Lock‏ یا Unlock‏ بکند از این سایت درخواست می کند. وقتی سایتی درخواست Lock‌‏ می کند اگر بتواند Lock‏ را به آن می دهد و در غیر این صورت آن را در صف آن Lock ‏قرار می دهد.
‏محاسن این روش عبارتند از : سادگی پیاده سازی و مدیریت Deadlock‏ همانند روش متمرکز.
‏معایب این روش عبارتند از :‏‌‏ تبدیل سایتی که مدیر Lock‏ روی آن قرار دارد به گلوگاه سیستم و از کار افتادن کل سیستم در صورت از کار افتادن مدیر Lock‏.
‏در Primary Copy‌‏ به ازای هر داده ای که از آن چند کپی در سیستم وجود دارد یک Primary Copy‌‏ داریم و زمانی که می خواهیم Lock ‏را بگیریم به سراغ Primary Copy ‌‏ می رویم.
‏عیب این روش این است که ممکن است سایتی که Primary Copy‌‏ را در اختیار دارد از کار بیفتد ولی کپی آن موجود باشد. در این شرایط به دلیل اینکه Lock‏ فقط باید روی Primary Copy‌‏ گرفته شود لذا امکان تغییر داده وجود نخواهد داشت در حالی که باید بتوان داده را در کپی های آن در سایت های سالم تغییر داد.
‏در Majority Protocol‏ باید برای گرفتن Lock ‏از داده ای که n‏ کپی از آن وجود دارد حد اقل به سراغ n/2+1‏ کپی از آن برویم و از آنها Lock‏‌‏ بگیریم.
‏عیب این روش این است که ممکن است در حین Lock‏ گرفتن روی یک داده هم بن بست به وجود بیاید. فرض کنید می خواهیم روی داده ای Lock ‏بگیریم که ۴ کپی از آن وجود دارد. اگر از دوتا از کپی ها Lock‏ بگیریم و قبل از گرفتن Lock‌‏ از سومی پروسه دیگری از دوتای دیگر Lock‏ بگیرد در این شرایط دو پروسه منتظر همدیگر می مانند و برای دسترسی به یک داده بن بست به وجود می آید. این در حالی است که حتی در سیستم های متمرکز نیز برای دستیابی به یک داده به تنهایی به این شکل هیچگاه بن بست به وجود نمی آید.
‏در Biased Protocol‌‏ بین خواندن و نوشتن تفاوت قائل می شویم. برای خواندن گرفتن Lock‌‏ از هر کدام از سایتها کافی است اما برای نوشتن باید از تمام کپی ها

 

دانلود فایل

 

0
افکار شما را دوست داریم، لطفا نظر دهید.x