بخشی از مقاله

چکیده

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

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

-1   مقدمه 

-2   مروری بر پایگاه داده های توزیع شده

از سالهای گذشته، پایگاهدادههای توزیع شده در زمینه تحقیقات پایگاهداده بسیار مهم بوده است. دادههای توزیع شده، به منظور افزایش دسترسی به دادهها، بهبود عملکرد را از طریق پرس و جو و تعادل بار فراهم میکنند. در دنیای تکنولوژیک امروزی، پردازش اطلاعات کارآمد، تقریبا برای هر سازمان علمی، یک مشکل اساسی و حیاتی است. گسترش یک سیستم پایگاهداده توزیع شده کارآمد و انتشار امن آن ضروری است

همچنین مهم است که بر روی هر موضوع مرتبط با امنیت مانند کنترل دسترسی چند سطحی، محرمانه بودن، قابلیت اطمینان، یکپارچگی و بهبود مشکلات مربوط به سیستم پایگاهداده توزیع شده، تاکید شود .[2] بطورکلی، همزمانسازی مربوط به انجام بیش از یک پردازش همزمان در یک سیستم پایگاهداده، مشترک است. کنترل همگانی شامل مدیریت عملیات همزمان در یک پایگاهداده برای جلوگیری از تداخل دسترسی به پایگاهداده توسط دو کاربر میباشد

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

پایداری بدان معنی است که وقتی یک تراکنش انجام می-شود، پایگاهداده در وضعیت سازگار است و زمانی که سیستم را ترک میکند، پایگاهداده باید در وضعیت سازگار باشد و همچنین نتیجه حاصل از آن باید صحیح باشد 

این مشکل در پایگاهدادههای توزیع شده پیچیده خواهد بود زیرا دادهها در یک مکان ذخیره نمیشوند. کاربر میتواند به دادهها از هر سایتی دسترسی پیدا کند و کنترل مکانیزم ممکن است آن را بلافاصله در سایر سایتها تحقق ندهد. در یک سیستم پایگاهداده توزیع شده، یک تراکنش ممکن است به دادههای ذخیره شده در بیش از یک سایت دسترسی داشته باشد .[2] اکثر الگوریتمهای کنترل همزمانی توزیع شده، از سه کلاس اصلی زیر تشکیل شدهاند .

در اینجا، با نگاهی به پایگاهدادههای توزیع شده و نحوه دسترسی و انعطافپذیری آنها در هنگام دسترسی به انواع دادهها، در مورد چند الگوریتم کنترل همروندی بحث شده است.

در ابتدا یک مدل پایگاهداده توزیع شده در این قسمت توضیح داده شده است. شکل - 1 - ساختار مشترک یک مدل را نشان میدهد. هر سایت در این مدل دارای چهار بخش است. منبعی که تراکنشها را تولید میکند و سطح اطلاعات تراکنش را برای سایت حفظ میکند. مدیر تراکنشی که رفتار اجرایی تراکنشها را مدل می کند. یک مدیر کنترل همزمان که جزئیات یک الگوریتم کنترل همزمان و یک - اداره کننده منابع - 1 را که مدل CPU و 2I/O را برای سایت طراحی میکند، پیادهسازی میکند. علاوه بر این، این مدل همچنین دارای مدیر شبکه-ای است که رفتار ارتباطی شبکه را مدل میکند

شکل : - 1 - ساختار مدل پایگاهداده توزیع شده

-1-2  مدیر تراکنش

هر تراکنش در - بار کاری - 3، فرآیند4 مربوط به Master-Slave برخی از گروههای همتا و Update کنندهها را دارد. - فرآیند اصلی - 5 ، سایتی را که تراکنشی در آن ارائه شده، اشغال میکند. هر دسته از گروهها خواندن یا نوشتن درخواست6 را به یک یا چند فایلی که در این سایت ذخیره شدهاند ارسال میکنند. تراکنشی که از مجموعه یا گروهی از همتایان تشکیل شده، در هر سایتی که نیاز به دسترسی به دادهها دارد، وجود دارد .[11] هنگامیکه گروههای همتا مجوز نوشتن دادههای تکراری و بهروزرسانیهای7 آنها را میدهند، به Update کنندههای خود متصل میشوند. تراکنشی که مربوط به الگوریتم کلاس تراکنش است، میتوان معادل یا موازی انجام داد

-2-2  مدیر منابع

- مدیر منابع - 8 برای سایتی که منابع فیزیکی آن شامل پردازنده و دیسک است میتواند بعنوان یک مدل عملیاتی فرض شود. مدیر منابع خدمات پردازنده و ورودی/خروجی - I/O - را برای مدیر تراکنشها و مدیر کنترل همروندی و همچنین برای ارائه خدمات تحویل پیام که از منابع CPU استفاده میکند، فراهم مینماید .[1,4] مدیر منابع از منابع CPU و I/O برای خواندن و نوشتن یک دیسک و نیز ارسال پیام استفاده میکند و مدیر کنترل همروندی از پردازشگر برای پردازش درخواستها9 و ارسال پیامها استفاده میکند
-3   مدل پردازش تراکنش توزیع شده

به منظور درک چگونگی کار الگوریتم کنترل همروندی، یک مدل ساده مدیریت پایگاهداده توزیع شده در شکل - 3 - نشان داده شده است. یک سیستم پایگاهداده توزیع شده مجموعهای از سایتهایی است که از طریق یک شبکه به یکدیگر متصل هستند

-3-2  مدیر شبکه

مدیر شبکه مدل اتصال شبکه را تعویض میکند. مدل شبکه بسیار ساده است و برای مسیریابی پیامها از یک سایت به سایت دیگر، تنها بر روی یک سوئیچ عمل میکند. خواص شبکه در این مدل جدا شدهاند

-4-2  مدیر کنترل همروندی

مدیر کنترل همروندی، به معنی کنترل همزمانی و مدلی است که فقط باید از یک الگوریتم به الگوریتم دیگر تغییر کند و مسئول حمایت از درخواستهای کنترل همروندی ساخته شده توسط مدیر تراکنشها شامل درخواستهای خواندن10 و نوشتن11 میباشد. درخواستها عبارتند از مجوز انجام یک تراکنش .[1,6,7] در شکل - 2 - نگاه دقیق-تری روی یک مدل بانک اطلاعاتی توزیع شده انجام شده است

شکل : - 2 - مثالی از مدل پایگاهداده توزیع شده

شکل : - 3 - مدل پردازش تراکنش توزیع شده 

در این شکل TM یک مدیر تراکنش و DM یک مدیر داده است. در اینجا داشتن یک اتصال شبکه امن مهم است. این بدان معنی است که اگر سایت A پیامی به سایت B ارسال کند، آن باید بدون هیچ خطایی به مقصد فرستاده شود .[2] در شکل - 4 - یک سناریوی سیستم پایگاهداده توزیع شده نشان داده شده است.

شکل : - 4 - سناریویی از یک پایگاهداده توزیع شده [2]

-1-3 الگوریتمهای کنترل همروندی در سیستمهای پایگاهداده توزیع شده

-1-1-3 پروتکل توزیع شده Two Phase Locking

در متن اصلی مقاله به هم ریختگی وجود ندارد. برای مطالعه بیشتر مقاله آن را خریداری کنید