آخرین ارسال ها |
نوار پیام ها |
مدیریت پیام ها |
نمایش موضوع به شکل عادی | |||
اطلاعات نویسنده |
اصول و مفاهیم پایگاه داده
یکشنبه ۲۶ خرداد ۱۳۹۲ ۰۷:۱۰ بعد از ظهر
[#1]
|
||
مدیر انجمن
شماره عضویت :
44
حالت :
ارسال ها :
2792
جنسیت :
تعداد بازدیدکنندگان :
773
دعوت شدگان :
12
اعتبار کاربر :
21876
پسند ها :
2658
تشکر شده : 3464
وبسایت من :
وبسایت من
|
قبل از تعریف پایگاه داده ها لازم است تفاوت میان داده و اطلاع را درک کنیم.
داده ها: مقادیر خامی است که به تنهایی معنی و مفهوم خاصی ندارد. و نمی تواند هیچ تاثیر در تصمیم گیریهای سیستم داشته باشد. بعنوان مثال ، موارد ذیل سه داده در یک سیستم فروشگاه می باشند: شماره فاکتور=1001 تاریخ فاکتور=4/4/83 اطلاعات: نتیجه حاصل از پرداش داده ها را می توان اطلاعات نامید. اطلاعات ، مبنای تصمیم گیری در سازمانها هستند. روش های ذخیره سازی اطلاعات: ا- روش دستی: در این روش اطلاعات در پوشه های جداگانه ذخیره می شد. معایب روش دستی:
2- سیستم فایلینگ
در این نوع سیستم های ذخیره سازی، از اطلاعات مرتبط با یکدیگر در قالب فایل در کامپیوتر ذخیره می شد فایل ها هیچگونه ارتباطی با یکدیگر نداشته و هر کدام به صورت جداگانه تهیه و طراحی می شوند. معایب سیستم فایلینگ:
سیستم های پایگاه داده:
به علت مشکلاتی که سیستم فایل در ذخیره سازی اطلاعات داشتند، به تدریج سیستم های پایگاه داده ها (بانک اطلاعاتی ) به وجود آورند. در سیستم های پایگاه داده کلیه ی اطلاعات به صورت یکپارچه و متمرکز در یک نقطه ذخیره می شوند. در این گونه سیستم ها کاربر به صورت مستقیم با داده ها کار نمی کند و از واسطی به نام DBMS (Data Base Management System) استفاده می شود. کاربر فرامین خود را در قالب یک دستور سطح بالا به DBMS ارسال می کند DBMS دستور کاربر داده ها اعمال کرده و نتایج مجددا به کاربر ارسال می شود. اجزاء یک سیستم پایگاه داده ها: یک سیستم پایگاه داده شامل اجزاء ذیل است:
3- کاربران: کاربران سیستمهای پایگاه داده ها را می توان به پنج دسته ی اصلی تقسیم کرد:
4- پروسیجرها: پروسیجرها شامل دستوراتی هستند که برای اجرای قوانین حاکم برسیستم نوشته می شوند.به عنوان مثال، دریک سیستم فروشگاه به محض صدور فاکتور برای مشتری باید موجودی کالاها خریداری شده توسط مشتری به روز رسانده شود.برای انجام این کار معمولا از یک پروسیجراستفاده می شود.
5- داده ها: داده های یک سیستم پایگاه داده ها شامل داده های مورد نیاز کاربران نهایی و فرراداده ها می باشند.
مهمترین وظایف DBMS: تامین استقلال داده ای و ساختاری: DBMS به طور اتوماتیک یک دیکشنری داده برای پایگاه دادهها تهیه می کند و مشخصات کلیه ی داده ها (اعم از داده های مربوط به موجودیتها و روابط میان موجودیتها) را دراین دیکشنری ذخیره می کند . قبل از رجوع به هر قلم داده ای، DBMS به دیکشنری داده ها رجوع کرده و از مشخصات ساختاری آن آگاه می شود.مثلا اگر کاربر از DBMS بخواهد کلیه ی اطلاعات موجود در جدول در جدول student را استخراج کند، DBMS ابتدا به دیکشنری داده مراجعه کرده، از چند و چون ساختار این جدول مطلع می شود.چنانچه طراح پایگاه داده ها فیلد جدیدی با نام address و طول 50کاراکتر را در جدولstudent اضافه کند،این تغییر در دیکشنری داده ها منعکس می شود.در نتیجه در مراجعات بعدی به جدولstudent، از آنجا که DBMS فیلد address را نیز جزء فیلدهای جدول Student می بیند، می داند چگونه با جدول اصلی که اکنون شامل فیلد address نیز هست برخورد کند.به همین ترتیب اگر طراح فیلد nameاز جدول student را از 20کاراکتر به 30کاراکتر تغییر دهد،این تغییر در دیکشنری داده ها منعکس می شود.در نتیجهDBMS در مراجعات بعدی به جدول Studentو تنها با مشاهده ی دیکشنری داده متوجه می شود که برای فیلدname باید 30 کاراکتر در نظر بگیرد. به این ترتیب، نیازی به تغییر کد برنامه هایی که با جدول studentسرو کار دارند نمی باشد.در واقع،DBMS با ایجاد دیکشنری داده، غالبا باعث مصونیت کدهای برنامه نویسی از تغییرات انجام شده در ساختار های پایگاه داده ها می شود و با این کار خدمت بزرگی در حق برنامه نویسان می کند!!! مدیریت ذخیره سازی اطلاعات: DBMS ساختارهای پیچیده ی لازم برای ذخیره ی داده ها را خود ایجاد کرده و طراحان پایگاه داده ها را از وظیفه ی سنگین تعریف خصوصیات فیزیکی داده ها معاف می کند. اکثر DBMS-های کنونی نه تنها ذخیره سازی داده ها را خود مدیریت می کنند، بلکه ابزارهایی در اختیار کاربران خود قرار می دهند تا فرمهای لازم برای ورود داده ها را طراحی کرده، گزارشات مورد نیاز خود را تعریف کرده، قوانین اعتبارسنجی محیط عملیاتی مورد نظررا تعین کرده(مثلا در محیط دانشگاه، بازه ی قابل قبول برای نمره ی دانشجو عددی بین 0تا20است.طراح پایگاه داده ها به راحتی می تواند این قانون را به DBMSابلاغ کند.پس از تعریف این قانون چنانچه کاربری بخواهد نمره ای خارج از محدوده ی مجاز را وارد کند، DBMS از انجام عمل مورد نظر وی سر باز می زند)، نحوه ورود تصاویر و ویدئوها در پایگاه داده ها را مشخص کند و ... مدیریت امنیت: در سیستمهای پایگاه داده های کنونی امنیت از اهمیت ویژه ای برخوردار است.امنیت در پایگاه داده ها به این معناست که هرکاربر تنها در حوزه ی اختیارات و وظایف خود به داده ها دسترسی داشته باشد. امکان استفاده ی اشتراکی از اطلاعات : DBMSبا استفاده از الگوریتم های پیچیده این امکان را به وجود می آورد که چندین کاربر به صورت همزمان و مشترک ار داده های موجود در پایگاه داده ها استفاده کنند بدون آنکه در پایگاه داده ها ناسازگاری به وجود آید. تهیه خودکار نسخه ی پشتیبان: در سیستمهای پایگاه داده های قدیمی، اپراتور هر قسمت، مسئول تهیه ی نسخه ی پشتیبان بود ولی DBMS-های کنونی این وظیفه را خود بر عهده می گیرند. DBAمی تواند برنامه ی زمانی مورد نظر برای تهیه ی نسخه ی پشتیبان و محل ذخیره شدن آن را برای DBMSمشخص کند. DBMSوظیفه دارد طبق برنامه ی دیکته شده عمل تهیه ی پشتیبان را انجام دهد. مثلا ممکن است DBAاز DBMS بخواهد که ساعت14.00روزهای یکشنبه عمل تهیه ی نسخه ی پشتیبان را انجام دهد و نسخه ی پشتیبان را در مسیرF:\backupذخیره کند. در این صورت، DBMS در زمان مشخص شده و به صورت اتوماتیک عمل تهیه ی نسخه ی پشتیبان را انجام می دهد. تامین جامعیت داده ای: مفهوم جامعیت داده ای شامل دو مفهوم اعتبار داده ها و سازگاری داده ها می باشد.اعتبار داده ها به این معناست که هیچ مقدار نا معتبری در پایگاه داده ها وارد نشود،مثلا نمره ی 22 در سیستمی که بازه ی قابل قبول برای نمره در آن اعداد بین 0 تا20 است، یک داده ی نامعتبر محسوب می شود. سازگاری داده ها به این معناست که در صورت ذخیره ی یک داده در چندین محل، مقدار همه ی آنها یکسان باشد. ایجاد یک سیستم پرس و جوی خودکار: DBMS یک زبان پرس وجو در اختیار کاربران پایگاه داده ها قرار می دهد.زبان پرس و جو، زبانی بسیار ساده است که به کاربران اجازه می دهد دستوری را روی پایگاه داده ها صادر کنند بدون آنکه از چند و چون نحوه ی انجام آن مطلع باشند. DBMS، این دستورات را به کدهای پیچیده ی لازم ترجمه کرده، کدهای بدست آمده را روی پایگاه داده ها اجرا می کند. علاوه براین،DBMSابزارهایی در اختیار طراحان پایگاه داده ها و DBA قرار می دهد تا به راحتی پایگاه داده های مورد نظر خود را ایجاد، پیاده سازی و پشتیبانی کرده، بر عملکرد آن نظارت کنند. شکل زیر یک سیستم فایل را با سیستم پایگاه داده ها مقایسه می کند:
سیستم فایل
سیستم پایگاه داده ها
معماری سیستم های پایگاه داده ها
این نوع سیستم ها از یک معماری سه لایه برای ذخیره و بازیابی اطلاعات استفاده می کنند.
شکل زیر این معماری را نشان می دهد:
در هربرنامه ی کاربردی که با پایگاه داده ها سر و کار دارد از دو دسته زبان استفاده می شود:
زبان فرعی داده ای DSL: از دستورات زبان فرعی داده ای برای کار با داده ها استفاده می شود.این دستورات به سه دسته تقسیم می شوند:
زبان تعریف داده ها یا DDL: این نوع دستورات برای تعریف اشیاء موجود در پایگاه داده استفاده می شود مانند ساخت جداول، ساخت Index و........... زبان دستکاری داده ها یاDML:از این دستورات برای بازیابی ، درج، حذف و اصلاح اطلاعات جداول استفاده می شود. مانند دستوراتSelect،update ،Insert Delete. زبان دستکاری داده ها یاDCL: این دستورات جهت کنترل و مدیریت در سطح پایگاه ها کاربرد دارد. مثل تعیین سطح دسترسی برای هر کاربر. زبان میزبان یا HL: به علت اینکه زبانهای DSL تمامی نیازهای یک سیستم اطلاعاتی را مهیا نمی کند،نیاز به زبان میزبان یا HL می باشد در زبان میزبان یا HL معمولا می توان با دستورات شرطی و حلقه ها مدیریت بهتری بر روی اطلاعات انجام داد. |
||
|