2-1- اهمیت الگوریتم‌های کنترل همروندی پایگاه داده‌ها……………………… 7

2-2- برخی از انواع پایگاه داده‌ها……………………… 8

2-3- انواع روش‌های پیاده‌سازی و مدل‌سازی الگوریتم‌های کنترل همروندی…………….. 9

2-3-1- پیاده‌سازی در مقیاس کوچک………………………… 9

2-3-2- مدل‌سازی و شبیه‌سازی توسط مدل مارکف………………………… 11

2-3-3- مدل‌سازی و شبیه‌سازی توسط شبکه‌های پتری……………………….. 12

2-4- پارامترهای ارزیابی……………………….. 14

2-4-1- پارامترهای منابع سیستم………………………. 14

2-4-2- پارامترهای حجم کاری……………………….. 15

2-5- پارامترها و آزمایش‌های انجام شده……………………… 16

2-6- برخی از مزایا و معایب روش‌های مدل‌سازی و شبیه‌سازی……………………….. 18

2-7- لزوم انجام تحقیق……………………….. 20

فصل سوم: تکنیک‌های کنترل همروندی

مقدمه………………………. 22

3-1- تکنیک‌های کنترل همروندی و انواع آن‌ها ………………………22

3-2- تکنیک‌های قفل‌گذاری و انواع آن‌ها……………………… 23

3-2-1- تعریف قفل……………………….. 24

3-2-2- اندازه‌های واحد قفل‌شدنی……………………….. 24

3-2-3- ساختار قفل……………………….. 25

3-2-4- مثالی برای لزوم قفل‌گذاری……………………….. 26

3-2-5- مدیر قفل و مراحل انجام شده برای قفل‌گذاری……………………….. 27

3-2-6- نحوه در اختیار قرار دادن قفل توسط مدیر قفل……………………….. 28

3-2-7- قفل چند اسلوبی……………………….. 28

3-2-7-1- ماتریس همایندی یا سازگاری قفل‌های چند اسلوبی……………………….. 28

3-2-7-2- پروتکل قفل چند اسلوبی برای یک تراکنش…………………………. 29

3-2-7-3- تغییر قفل……………………….. 30

3-2-7-4- قفل چند اسلوبی و توالی‌پذیری……………………….. 30

3-2-7-5- خصوصیات قفل چند اسلوبی……………………….. 30

3-2-8- تکنیک قفل‌گذاری دو مرحله‌ای مبنایی……………………….. 30

3-2-8-1- مشکلات تداخل کنترل نشده ………………………31

3-2-8-2- خصوصیات و مشکلات 2PL مبنایی……………………….. 32

3-2-8-3- تغییر قفل در پروتکل 2PL………………………..

3-2-8-4- تأثیرعملیات درج در کنترل همروندی……………………….. 33

3-2-8-5- تأثیرعملیات حذف در کنترل همروندی……………………….. 33

3-3- بن‌بست………………………… 34

3-3-1- راه حل‌های مشکل بن‌بست………………………… 35

3-3-2- تکنیک‌های زمان‌مهر………………………. 36

3-3-2-1- الگوریتم WD………………………..

3-3-2-2- الگوریتم WW…………………………

3-3-2-3- خصوصیات الگوریتم WD و WW…………………………

فصل چهارم: شبکه‌های پتری

مقدمه………………………. 39

4-1- مختصری در مورد شبکه‌های پتری……………………….. 39

4-2- تفاوت UML و پتری……………………….. 39

4-3- تاریخچه شبکه‌های پتری……………………….. 40

4-4- ویژگی‌های شبکه‌های پتری……………………….. 40

4-5- اجزای شبکه‌ی پتری……………………….. 40

4-5-1- تعریف اجزای شبکه‌ی پتری………………………. 41

4-5-2- وظایف اجزای شبکه‌ی پتری……………………….. 41

4-6- تعریف چهارگانه شبکه‌های پتری……………………….. 42

4-7- گراف شبکه پتری……………………….. 42

4-8- چند مثال از گراف شبکه پتری……………………….. 43

4-9- رفتار شبکه‌های پتری……………………….. 43

4-10- گذار توانا……………………… 44

4-11- مثالی از اجرای یک شبکه پتری……………………….. 44

4-12- قوانین مربوط به فایر شدن گذار، در شبکه پتری……………………….. 45

4-13- شبکه‌های پتری به بن‌بست رسیده، زنده و غیر زنده……………………… 46

4-14- انواع شبکه‌های پتری و نحوه‌ی نشانه‌گذاری آن‌ها……………………… 47

4-15- فلوچارت‌ها و شبکه‌های پتری……………………….. 47

4-16- انواع پتری……………………….. 48

4-16-1- شبکه پتری رنگی……………………….. 48

4-16-2- شبکه پتری زمانی……………………….. 49

4-16-3- شبکه پتری سلسله مراتبی……………………….. 50

فصل پنجم: نحوه‌ی مدل‌سازی مکانیزم‌های 2PL، WW و WD با پتری رنگی

مقدمه………………………. 52

5-1- مختصری در مورد مدل‌سازی مکانیزم‌های 2PL، WW و WD………………

5-1-1- مدل 2PL………………………..

5-1-2- مدل‌های WW و WD………………………..

5-2- مجموعه‌های رنگ………………………… 53

5-2-1- مجموعه‌های رنگ در مدل 2PL………………………..

  برای دانلود متن کامل پایان نامه ها اینجا کلیک کنید

5-2-2- مجموعه‌های رنگ در مدل‌های WW و WD………………………..

5-2-3- توضیحات مجموعه‌های رنگ………………………… 55

5-3- نشانه‌گذاری اولیه………………………. 58

5-3-1- نشانه‌گذاری اولیه در مدل 2PL………………………..

5-3-2- نشانه‌گذاری اولیه در مدل‌های WW و WD………………………..

5-3-3- توضیحات نشانه‌گذاری اولیه………………………. 59

5-4- متغیرها……………………… 61

5-4-1- متغیرهای مدل 2PL………………………..

5-4-2- متغیرهای مدل‌های WW و WD………………………..

5-5- شرح توابع مدل و عملکردهای آن‌ها……………………… 62

5-5-1- شرح توابع مشترک بین مدل‌های 2PL، WW و WD………………………..

5-5-2- شرح توابع مدل 2PL………………………..

5-5-3- شرح توابع مدل‌های WW و WD………………………..

5-6- اولویت‌های معین شده برای تعیین فایر شدن گذار مورد نظر از بین گذارهای فعال…….. 72

5-7- نحوه‌ی مدل‌سازی‌ها……………………… 73

5-7-1- نحوه مدل‌سازی مدل 2PL………………………..

5-7-2- نحوه مدل‌سازی مدل‌های WW و WD………………………..

فصل ششم: ارزیابی مدل‌های 2PL، WW و WD

مقدمه………………………. 79

6-1- مختصری در مورد اهمیت ارزیابی پایگاه داده‎ها……………………… 79

6-2- پارامتر تعداد تراکنش‌های وارد شونده به سیستم………………………. 80

6-2-1- بررسی مدل 2PL………………………..

6-2-2- بررسی مدل WW………………………..

6-2-3- بررسی مدل WD………………………..

6-2-4- مقایسه‌ی مدل‌های 2PL، WW و WD براساس پارامتر تعداد تراکنش‌ها…….. 82

6-3- پارامتر تعداد دستورات هر تراکنش…………………………. 83

6-3-1- بررسی مدل 2PL………………………..

6-3-2- بررسی مدل WW…………………………

6-3-3- بررسی مدل WD………………………..

6-3-4- مقایسه مدل‌های 2PL، WW و WD براساس پارامتر تعداد دستورات تراکنش‌ها ……..86

6-4- پارامتر تعداد داده‌های مشترک و غیر مشترک تراکنش‌ها ………………………88

6-4-1- بررسی مدل 2PL………………………..

6-4-2- بررسی مدل WW…………………………

6-4-3- بررسی مدل WD………………………..

6-4-4- مقایسه مدل‌های 2PL، WW و WD براساس پارامتر تعداد داده‌های مشترک و غیر مشترک تراکنش‌ها….. 91

6-5- پارامتر تعداد داده‌های مشترک در تراکنش‌هایی بدون داده غیر مشترک……………. 92

6-5-1- بررسی مدل 2PL………………………..

6-5-2- بررسی مدل WW…………………………

6-5-3- بررسی مدل WD………………………

6-5-4- مقایسه مدل‌های 2PL، WW و WD براساس پارامتر تعداد داده‌های مشترک در تراکنش‌هایی بدون داده غیر مشترک…. 96

6-6- نتیجه‌گیری……………………….. 97

6-7- پیشنهادات……………………….. 100

مراجع……………………….. 102

چکیده:

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

در این پایان‌نامه ابتدا الگوریتم‌های کنترل همروندی قفل‌گذاری دو مرحله‌ای مبنایی و همچنین تکنیک‌های زخمی کردن-منتظر گذاشتن و منتظر گذاشتن-میراندن که جزء تکنیک‌های پیش‌گیری از بن‌بست هستند، مدل‌سازی شده‌اند. از آنجا که شبکه پتری رنگی قابلیت‌های مدل‌سازی بالایی دارد و یکی از بهترین روش‌ها برای تحلیل مکانیزم‌های کنترل همروندی است؛ مدل‌سازی‌ها با استفاده از پتری رنگی و نرم‌افزار CPN Tools ارائه شده‌اند. یک مطالعه موردی ساده به عنوان مثال برای درک بهتر ارائه گردیده که مثال ذکر شده شامل سه تراکنش و دو منبع است. سپس الگوریتم‌های ذکر شده ارزیابی گردیده‌اند. ارزیابی بر اساس پارامترها و معیارهایی مثل تعداد تراکنش‌های وارد شونده به سیستم، تعداد دستورات هر تراکنش، تعداد داده‌های مشترک و غیر مشترک بین تراکنش‌ها و تعداد داده‌های مشترک در تراکنش‌هایی بدون داده غیر مشترک، صورت گرفته است.

آزمایش‌ها چندین بار تکرار و نتایج میانگین‌گیری شدند. با مقایسه و انجام بررسی‌ها، این نتیجه به دست آمد که در حالت کلی الگوریتم زخمی کردن-منتظر گذاشتن نسبت به دو الگوریتم دیگر زمان اجرای بهتری دارد. الگوریتم منتظر گذاشتن-میراندن از نظر زمان اجرا با اختلاف زیادی در سطح بدتری نسبت به دو الگوریتم دیگر قرار دارد و الگوریتم قفل‌گذاری دو مرحله‌ای مبنایی به دلیل امکان رخ دادن بن‌بست، مشکلات فراوانی دارد.

فصل اول: مقدمه

1-1- مقدمه

اجرای همروند تراکنش‌ها در پایگاه داده‌ها با مشکلات بسیاری مواجه است. مکانیزم‌های کنترل همروندی، برای حفظ انزوا و عدم دخالت اجرا در میان تراکنش‌های متعارض و حفظ سازگاری پایگاه داده‌ها استفاده می‌شوند (a-Pashazadeh, 2012)، (b-Pashazadeh, 2012) و (Shu, and Young, 2002). به عبارت دیگر الگوریتم‌های کنترل همروندی، الگوریتم‌هایی هستند که باعث می‌شوند اجرای همروند چند تراکنش و اجرای متوالی آن معادل شود. مسئله‌ی کنترل همروندی در پایگاه داده‎ها امری ضروری و با اهمیت می‎باشد (Shu, and Young, 2002). در این زمینه مطالعات و تحقیقات فراوانی صورت گرفته است که نتیجه‌ی آن، به وجود آمدن الگوریتم‌های متنوع کنترل همروندی می‎باشد. همچنین با توجه به گسترش روزافزون انواع پایگاه داده‌ها در سراسر جهان، نیاز به بررسی پروتکل‌های کنترل همروندی پایگاه داده‌ها، بیشتر نمایان می‌شود.

مدل‌سازی رسمی[1] از الگوریتم‌های کنترل همروندی در مطالعه ویژگی‌های مختلف آن‌ها بسیار مفید است (a-Pashazadeh, 2012) و (b-Pashazadeh, 2012). بررسی‌ها نشان می‌دهد که شبکه‌های پتری (PNs)[2] روش مناسبی برای مدل‌سازی رسمی مکانیزم‌های کنترل همروندی می‌باشند. شبکه‌های پتری انواع مختلفی دارند که یکی از آن‌ها شبکه‌ پتری رنگی (CPN)[3] است. شبکه‌های پتری رنگی یکی از بهترین ابزارها برای مدل‌سازی الگوریتم‌های کنترل همروندی هستند (a-Pashazadeh, 2012) و (b-Pashazadeh, 2012). به همین دلیل در این پایان‌نامه نیز از این روش برای مدل‌سازی‌ها استفاده خواهد شد.

یکی از اصلی‌ترین مکانیزم‌های کنترل همروندی تکنیک قفل‌گذاری دو مرحله‌ای مبنایی (2PL)[4] است. این تکنیک کنترل همروندی از طریق قفل‌گذاری روی داده‌ها انجام می‌شود. قفل‌گذاری روی داده‌ها به تدریج که نیاز به

موضوعات: بدون موضوع  لینک ثابت


فرم در حال بارگذاری ...