X
تبلیغات
پایگاه داده ها و تجزیه و تحلیل سیستم ها - پایگاه داده ها (جلسه ی دوم)قسمت اول

پایگاه داده ها و تجزیه و تحلیل سیستم ها

پایگاه داده ها (جلسه ی دوم)قسمت اول

سيستم مديريت پايگاه داده

سيستم مديريت پايگاه داده يا به طور خلاصه (DataBase Management System) DBMS مهمترين نرم افزاري در سيستم پايگاه داده است كه به عنوان رابط بين پايگاه داده و كاربر و برنامه ها ی کاربردی عمل مي نمايد.

كليه فايل هاي پايگاه داده فقط در اختيار اين نرم افزار قرار گرفته و دستيابي به آنها تنها از طريق DBMS امکان پذير است.

DBMS سرويس هائي جهت دسترسي داده در پايگاه داده فراهم مي کند به نحوی که از کليه خواص داده محافظت شود.

تراکنش

تراکنش (transaction) یک برنامه فعال است که دنباله ای از دستورات را شامل می شود و به طور خاص بعضی عمليات آن روی پایگاه داده است.

سه عمل تراکنشی خاص وجود دارد: start که نشان می دهد يک تراکنش دارد شروع می شود، commit که دلالت بر اتمام عادی تراکنش دارد و abort که بيان کننده پايان يافتن تراکنش به دليل سقط آن است و کليه اثرات ترکنش سقط شده بايد rollback يا بی اثر شود. وقتی تراکنش commit می شود تاثیرش روی پايگاه داده بايد دائمی شود.

هر تراکنش باید پايگاه داده را از یک حالت سازگار به حالت سازگار بعدی ببرد. تراکنش بايد دارای خواص ACID باشد تا پايگاه داده را در حالت سازگار باقی نگهدارد. خواص ACID حروف اول چهار خاصيت زير می باشند:

1. اتميسيته (Atomicity)

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

2. سازگاری (Consistency)

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

3. ايزوله بودن (Isolation)

تراکنشی که در حال اجراست و هنوز به پايان نرسيده تاثیرش از بقيه مخفی است مگر اینکه commit شده باشند. اجرای همروند تراکنش ها باید به صورتی باشد که انگار پشت سرهم اجرا شده اند. حفظ اين خاصيت بر عهده کنترل همروندی است.

4. ماندگاری (Durability)

از وقتی تراکنشی commit شد تاثیرش دائمی است؛ حتی اگر سیستم خراب شود داده در حالت درست خود باقی می ماند.


اجزای سیستم مدیریت پایگاه داده

وظایف DBMS توسط تعدادی مولفه نرم افزاری انجام می شود. هر كدام از این مولفه ها ممكن است مركب از چند واحد كوچكتر باشند. تعدادی از سرویس های که توسط مولفه های DBMS داده می شوند در زیر لیست شده است:

1. پردازش تراکنش (Transaction Processing)

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

2. کنترل همروندی (Concurrency Control)

مدیریت اجرای همروند تراکنش ها روی پایگاه داده در حین برقراری سازگاری را به عهده دارد.

3. ترمیم (Recovery)

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

4. مدیریت ثبت احوال(Log Management)

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

5. واسطه زبانی (Language Interface)

دستوراتی را برای تعریف داده، کار کردن با آن دراختیار کاربران و برنامه های کاربردی قرار می دهد.

6. تحمل پذیری خطا(Fault Tolerancy )

توانائی ارائه سرویس های قابل اطمینان توسط DBMS حتی در صورت بروز نقص را تحمل پذیری خطا می گویند. انواع خطاهائی که ممکن است پیش بیاید عبارتند از:
       • خطای منطقی : تراکنش موفق نمی شود مثلا به دلیل ورودی بد، سرریزی
       • خطای سیستمی : تراکنش موفق نمی شود مثلا به دلیل بن بست
       • سقط سیستم : قطع برق، پاک شدن حافظه اصلی، پر شدن دیسک
       • ناتوانی دیسک : خرابی هد، خرابکاری عمدی، آتش سوزی، 

7. کاتالوگ داده (Data Catalog)

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

8. امنیت (Security)

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

9. مدیریت ذخیره سازی (Storage Management)

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

10. مدیریت قفل (Lock Management)

هنگام استفاده اشتراکی از داده انواع مختلفی از قفل روی داده گذاشته می شود (مثل Read Lock و Write Lock).

11. مدیریت بن بست (Deadlock Management)

بن بست وقتی اتفاق می افتد که تراکنش ها برای بدست آوردن منابع در یک دایره بسته قرار گیرند یعنی هر یک منبعی در اختیار دارد که مورد تقاضای دیگری است و درخواست منبعی را می کند که در اختیار تراکنش منتظر منبع است. در پایگاه داده منابع رکوردها هستند. مديريت منبع مسئول رفع اين مشکل هستند.

 

معماری پايگاه داده

معماری ANSI/SPARC سه سطح مجزا را برای توصيف داده در يک پايگاه داده تعيين می کند:

• سطح خارجی(external level)
• سطح ادراکی (
conceptual level)
• سطح داخلی(
internal level)

هدف معماری سه سطحی اين است که امکاناتی را فراهم کند تا کاربران بتوانند با ديدگاه های شخصی خود به داده موردنياز دسترسی پيدا کنند. يعنی هر کاربری بتواند به داده مشترک دسترسی پيدا کند اما ديد خاص خود را داشته باشد.

از طرف ديگر فاصله بین سطح داخلی از سطح خارجی دلالت بر این دارد که کاربر نیازی به دانستن جزئیات فیزیکی داده ذخیره شده در پایگاه داده ندارد. این تفکیک سطح اجازه تغییر ساختار ذخیره سازی پایگاه داده را بدون تاثیر روی دیدهای کاربران می دهد. لازمه اين استقلال سطوح از همديگر است به نحوی که تغييرات روی يک سطح روی بقيه تاثير نگذارد.

http://www.upsara.com/images/tal3r0bv80tyq2xxmcpq.gif



+ نوشته شده در  دوشنبه یازدهم مهر 1390ساعت 12:45  توسط احمد هادی  |