تقريبا بيشتر برنامه های کاربردی امروزه به روش سيستم پايگاه داده طراحی می شوند. پايگاه داده امکان ذخيره سازی مجتمع داده با حداقل افزونگی و استفاده اشتراکی توسط کاربران مختلف تحت يک کنترل متمرکز را می دهد.
داده
اطلاع
موجوديت
پايگاه داده
روش هاي ذخيره داده
سيستم پايگاه داده
عناصر اصلي سيستم پايگاه داده
مزايا و معايب سيستم پايگاه داده
داده
داده (data) دارای تعاريف مختلفی است، به طور کلی داده ها كلمات و ارزش هاي واقعي هستند كه از طريق مشاهده و تحقيق بدست مي آيند، به عبارت ديگر داده نمودي از وقايع، معلومات، رخدادها، پديده ها و مفاهيم مي باشد.
در محاسبات، داده به اطلاعي گفته می شود که به شکلی مناسب براي انتقال و پردازش ترجمه شود. در کامپيوتر و رسانه های ارتباطاتی امروزی داده به شکل باينری تبديل مي شود. بنابراين داده يک نمايش باينری از يک موجوديت منطقي ذخيره شده در حافظه کامپيوتر است.
از نظر ساختاري داده به مقادير صفت خاصه انواع موجوديت ها اتلاق می شود.
ريشه کلمه داده از عبارت لاتين datum گرفته شده که به معنی اطلاع است. و data فرم جمع آن است. اما datum بندرت استفاده می شود و اکثرا ترجيح می دهند data را به صورت يک کلمه مفرد استفاده کنند.
اطلاع
اطلاع (information) مفهومي است که براي گيرنده آن قابل درک بوده و با دانستن آن می تواند برای حل يک مسئله تصميم گيري يا ارزيابی كند.
وقتي اطلاع وارد کامپيوتر شده ذخيره مي گردد به داده تبديل می شود. بعد از پردازش، داده خروجي مجددا به عنوان اطلاع دريافت مي شود.
وقتي اسم صفت خاصه و مقدار منسوب به آن در دست باشند اطلاعي در مورد موجوديت حاصل مي شود.
هنگاميکه اطلاعات در يک بسته خاص قرار می گيرند و براي درک موضوعی يا انجام کاری استفاده مي شود به دانش (knowledge) تبديل می شود.
موجوديت
موجوديت (entity) مفهوم کلي پديده، شيء يا فردي است که در مورد آن مي خواهيم اطلاع داشته باشيم و در کامپيوتر ذخيره کنيم.
هر نوع موجوديت دارای مجموعه اي از صفات خاصه (attribute) است که ويژگي جداکننده يک نوع موجوديت از نوع ديگر محسوب می شود.
مثال. اگر در نظر داريم يك سيستم پايگاه داده براي يك دبيرستان پياده سازي كنيم مواردي چون دانش آموزان، دبيران، دروس، كلاس ها و غيره جزء موجوديت هاي سيستم به شمار مي روند.
مثال. موجوديت دانشجو در سيستم دانشگاه مي تواند داراي صفات خاصه: نام، نام خاوادگي، سن، سال تولد، رشته تحصيلي، سال ورود و ... باشد و يا موجوديت درس صفات خاصه: كد درس، نام درس و تعداد واحد
پايگاه داده
يک بانك اطلاعاتي يا پايگاه داده (database) مجموعه اي سازمان يافته و بدون افزونگي از داده های مرتبط به هم است که مي تواند توسط سيستم هاي کاربردي مختلف به اشتراک گذاشته شود و به راحتي دسترسی، مديريت و بهنگام شود.
وقتی داده به صورت پايگاه داده سازماندهی می شود، کاربر و برنامه نويس نيازي به دانستن جزئيات ذخيره سازي داده ندارند. علاوه براين داده مي تواند بدون تاثير روي اجزاي ديگر سيستم تغيير کند. برای مثال از اعداد حقيقي به صحيح، از يک ساختار فايل به ديگری يا از دستگاه ذخيره سازي نوري به مغناطيسي تغيير کند.
ويژگي هاي داده در پايگاه داده
ويژگی هائی که داده در پايگاه داده بايد داشته باشند در ليست زير آمده است:
1. اشتراکی شدن (shared)
• داده در پايگاه داده بين چندين کاربر و برنامه کاربردی به اشتراک گذاشته می شود.
2. ماندگاري(persistence)
• وقتي داده در پايگاه داده ذخيره شد پايدار است و از بين نمی رود، مگر آنکه توسط سيستم پايگاه داده تغيير کند.
3. امنيت (security)
• داده در پايگاه داده از فاش شدن، تغيير و تخريب بدون مجوز محافظت می شود. مدير سيستم توسط سطوح دسترسي و قيدهای امنيتی نحوه دستيابی به داده را تعريف می کند و اطمينان می دهد که دستیابی از طريق مناسب انجام می شود.
4. اعتبار (validity)
• يا جامعيت (integrity) و يا صحت(correctness) به درستی داده در پايگاه داده نسبت به موجوديت دنياي واقعي معتبر اشاره دارد. مثلا موجودی بانک نبايد منفی باشد.
5. سازگاری (consistency)
• داده در پايگاه داده با مقدار واقعي داده در دنياي خارج سازگار است. وقتی يک فقره اطلاع در بيش از يک نقطه ذخيره شود و لازم باشد بهنگام شود، اگر بهنگام سازی در همه نقاط انجام نشود ناسازگاری ايجاد می شود.
6. کاهش افزونگی (non redundancy)
• داده در پايگاه داده داراي حداقل افزونگي است. افزونگي به اين معناست که هيچ دو فقره داده در بانک معرف يک موجوديت در دنياي خارج نباشد.
7. استقلال (independence)
• تغييردر نمايش فيزيکی، تکنيک های دستيابی و سازماندهی داده تاثيری روی برنامه های کاربردی ندارد.
روش هاي ذخيره داده
دو روش كلي براي ذخيره و بازيابي خودكار داده ها وجود دارد: سيستم فايلی ساده و سيستم پايگاه داده
سيستم فايلی (file system)
در اين روش، داده ها در فايل هاي مجزا قرار گرفته و سيستم های جداگانه ای به نام سيستم پردازش فايل براي استفاده از فايل های داده ای طراحي مي شوند. در اين سيستم ها هر برنامه ي كاربردي تنها به فايل داده ای مربوط به خود می تواند مراجعه مي كند.
اشکالات چنين طراحي در ذخيره داده به طور خلاصه عبارتند:
1. افزونگي و ناسازگاري داده به دليل چندين فرمت فايل و تکرار اطلاعات در فايلهاي مختلف.
2. مشکل در دستيابی داده و نياز به نوشتن برنامه جديدي براي انجام هر کار
3. قيدهای جامعيت به جاي اينکه صريحا بيان شوند در کدبرنامه از نظر پنهان مي شد. اضافه کردن قيدهاي جديد يا تغيير قيدهاي موجود به سختي صورت مي گيرد.
4. ايجاد ناسازگاري به دليل وجود چندين کپي از فقره هاي داده
5. مشکلات امنيتی به دليل دسترسي همروند و بدون کنترل توسط چند کاربر
سيستم پايگاه داده (database system)
در اين روش كليه داده ها به صورت مجتمع در پايگاه داده ذخيره می شود، ولي هر كاربر ديد خاص خود را نسبت به داده ها دارد. كاربران مختلف مي توانند به طور مشترك با پايگاه داده كار كنند. به دليل تجمع داده افزونگي به حداقل ممكن كاهش مي يابد.
نرم افزاری به نام سيستم مديريت پايگاه داده ( DBMS ) به عنوان واسطه بين برنامه هاي كاربردي و پايگاه داده ايفاي نقش مي كند لذا امنيت داده ها در اين روش بيشتر است.
چند نمونه از کاربردهای سيستم پايگاه داده موارد زير هستند:
• انجام کليه تراکنش های بانکداري
• رزرواسيون و زمانبندي خطوط هوائي
• ثبت نام دانشجويان، واحدگيری و ثبت نمرات در مراکز آموزشی
• ثبت اطلاعات مشتريان، محصولات و فاکتورهای خريد و فروش
• پيگيري سفارشات و پيشنهادات در فروش online
• ثبت رکوردهاي کارمندان و محاسبات حقوق، کسورات مالياتي در سازمان ها
عناصر اصلي سيستم پايگاه داده
اجزاء اصلي سيستم بانك اطلاعاتي عبارتند از:
1. داده ها
• شامل داده هائي درباره موجوديت هاي مختلف محيط و ارتباط بين موجوديت ها.
2. سخت افزار
• شامل عناصر پردازشی، رسانه های ذخيره سازی داده، دستگاه هاي جانبي، سخت افزارهای ارتباطی و غيره.
3. نرم افزار
• شامل سيستم عامل و نرم افزارهاي ارتباطي شبکه، نرم افزار سيستم مديريت پايگاه داده و برنامه هاي كاربردي.
4. رويه های عملياتی
• شامل کليه عملياتی که روی پايگاه داده انجام می شود، نظير تهيه پشتيبان، آمارگيری و ...
5. کاربر
• شامل كاربران يا كساني كه به نحوي با سيستم در ارتباط هستند نظير مديرپايگاه داده(DBA)، طراحان پايگاه داده (DBD)، برنامه نويسان پايگاه داده (DBP) و کاربران نهائي(end users).
مزايا و معايب سيستم هاي پايگاه داده
مزاياي مهم سيستم پايگاه داده
1. تجمع، وحدت ذخيره سازي و کنترل متمرکز داده ها
2. كاهش افزونگي. تجمع داده و وحدت ذخيره سازی باعث کاهش افزونگی می شود. مثلا آدرس های مختلف برای يک مشتری در قسمت های مختلف اداره ثبت نمی شود.
3. به اشتراك گذاشتن داده ها. چند كاربر مي توانند در هم زمان به
پايگاه داده دسترسي داشته باشند. برنامه هاي كاربردي موجود قادر
به اشتراك گذاردن داده ها در پايگاه داده بوده و برنامه هاي كاربردي
جديد نيز مي توانند از اين داده ها استفاده كنند.
4. پرهيز از ناسازگاري. با كاهش افزونگي، كنترل متمرکز و جامعيت، سازگاري و يكپارچگي داده ها تضمين مي شود.
5. اعمال محدوديت هاي امنيتي. سيستم هاي امنيتي در پايگاه داده امكان اعمال كنترل هاي مختلف را براي هر نوع دسترسي ( بازيابي،اصلاح، حذف و غيره) بر روي پايگاه داده فراهم مي كند.
6. صحت بيشتر داده و استقلال از برنامه های کاربردی
7. راحتی پياده سازی برنامه های کاربردی جديد
معايب سيستم پايگاه داده
1. طراحی سيستم های پايگاه داده پيچيده تر، دشوارتر و زمان برتر است.
2. هزينه قابل توجهی صرف سخت افزار و نصب نرم افزار می شود.
3. آسيب ديدن پايگاه داده روی کليه برنامه های کاربردی تاثير می گذارد.
4. هزينه زياد برای تبديل از سيستم فايلی به سيستم پايگاه داده نياز است.
5. نيازمند تعليم اوليه برنامه نويسان و کاربران و استخدام کارمندان خاص پايگاه داده است.
6. نياز به تهيه چندين کپی پشتيبان از پايگاه داده می باشد.
7. خطاهای برنامه می توانند فاجعه برانگيز باشند.
8. زمان اجرای هر برنامه طولانی تر می شود.
9. بسياروابسته به عمليات سيستم مديريت پايگاه داده است.
سوالات چندگزينه اي درباره مفاهيم اساسي پايگاه داده