300 likes | 480 Views
Database پا ی گاه داده ها. Shahriar Pirnia http://www.pirnia.net. 1) س ی ر تحول س ی ستمها ی ذخ ی ره و باز ی اب ی اطلاعات (Storage and Retrieval Systems) 1-1) مقدمه : ن ی از هم ی شه انسان به اطلاعات 2-1) تعر ی ف س ی ستم ذخ ی ره و باز ی اب ی اطلاعات
E N D
Databaseپایگاه داده ها Shahriar Pirnia http://www.pirnia.net
1)سیر تحول سیستمهای ذخیره و بازیابی اطلاعات(Storage and Retrieval Systems) 1-1)مقدمه : نیاز همیشه انسان به اطلاعات 2-1)تعریف سیستم ذخیره و بازیابی اطلاعات 3-1) تعریف سیستم واسط ذخیره و بازیابی 4-1) عناصر تشکیل دهنده یک سیستم ذخیره و بازیابی اطلاعات -سخت افزار(Hardware) - نرم افزار(Software) - كاربر(User) - داده(Data) 5-1) تعریف داده و اطلاع 6-1) مروری بر نسلهای تکنولوژی سیستم واسط رئوس مطالب جلسات اول و دوم
2)پایگاه داده ها (Database) 1-2) تعریف 2-2) شرح کلمات مورد استفاده در تعریف - داده هاییکپارچه(Integrated Data) - افزونگی (Redundancy) - ساختار داده ها(Data Structure) 3-2)یک مثال مقدماتی برای درک تعریف پایگاه داده - تعریفناسازگاری داده ها (Data Inconsistency) - تعریفبروز رسانی منتشر شونده(Propagating Updates) - تعریفاستقلال داده ای(Data Independence)
3)عناصر اصلی محیط پایگاه داده ها 1-3)سخت افزار(Hardware) 2-3)نرم افزار (Software) 3-3) کاربر (User) 4-3)داده(Data)
1)سیر تحول سیستمهای ذخیره و بازیابی اطلاعات(Storage and Real-time Systems) 1-1) مقدمه : نیاز همیشه انسان به اطلاعات : شكل 1 – نیاز همیشه انسان به اطلاعات - سیر تحول رسانه ذخیره سازی : - لوحهای سنگی، گلی ، چوبی، پوستی -كاغذ : سیستمهای دستی برای ثبت اسناد و مدارك “دفتر داری” ، “داده داری” ، “ بایگانی” دفترهای مختلفی ایجاد شد. - نوارهای مغناطیسی(Tapes) -دیسكها، RAIDS بازیابیاطلاعات انسان همیشه نیازمند به پردازش اطلاعات ذخیره سازی اطلاعات تولید اطلاعات
2-1)تعریفسیستم ذخیره و بازیابی اطلاعات(Storage and Retrieval System) : به هر سیستمی گفته می شود كه به انسان امكان می دهد تا اطلاعات مورد نظرش را ذخیره و در صورت نیاز بازیابی كند و با تولید اطلاعات جدید بر شناختش از محیط عملیاتی اش بیفزاید . - انواع سیستم ذخیره و بازیابی اطلاعات - سیستم دستی(Manual) - سیستم اتوماتیزه(Automatic) - سیستم دستی در -درج اطلاعات (Insert) -تغییر اطلاعات (Update) -بازیابی اطلاعات (Retrieval) دچار مشكل است .
3-1) تعریف سیستم واسط ذخیره و بازیابی - سیستم ذخیره و بازیابی اتوماتیك (كامپیوتری) بخش اصلی این سیستم نرم افزاری است . در این بحث این بخش نرم افزاری سیستم ، كه خود نوعی سیستم است را سیستم واسط ذخیره و بازیابی اطلاعات می گوییم . انسان برنامه ساز شكل 2 : سیستم ذخیره و بازیابی اطلاعات - محیط فیزیكی ذخیره سازی اطلاعات : شامل داده های ذخیره شده روی رسانه ها و خود رسانه ها می باشد . انسان شكل 3 : سیستم ذخیره و بازیابی اطلاعات محیط فیزیکی ذخیره سازی اطلاعات سیستم واسط ذخیره و بازیابی اطلاعات سیستم عامل محیط فیزیکی ذخیره سازی اطلاعات امکان تماس سیستم واسط
4-1) عناطر تشکیل دهنده یک سیستم ذخیره و بازیابی اطلاعات : -سخت افزار(Hardware) - نرم افزار(Software) - كاربر(User) - داده(Data) - سخت افزار (Hardware) شامل : ملزومات و امكاناتی كه به اصطلاح ((رسانه های ذخیره سازی )) گفته می شود و همچنین خود كامپیوتر.
- نرم افزار (Software) : -نرم افزار خود سیستم واسط ( تهیه كنندگان نرم افزارهای سیستمی ) - نرم افزار تماس با سیستم واسط ( كاربران با مهارتهای برنامه سازی ) - نرم افزار خدماتی : مجموعه ای از واحدهای نرم افزاری كه تماس انسان با سیستم را تسهیل و تسریع می نمایند . از جمله نرمافزارهایی كه شامل فرمهای ورود و تغییر اطلاعات و گزارشات و … می باشند . ذهن انسان مسئله داده تکوین اطلاع شکل 4 : ارتباط بین داده مسئله و اطلاع تصمیم گیری عملیات
كاربر (User): • خود انواعی دارد و طیفی از كاربران با مهارت برنامه سازی تا كاربران فاقد مهارت برنامه سازی را در بر می گیرد. - مروری بر نسلهای تكنولوژی سیستم واسط نسل اول (1957 - 1948) : نسل بدون سیستم واسط نسل دوم (1966 - 1958) : نسل شیوه های دستیابی (Access Methods) نسل سوم (1973 - 1967) : نسل سیستم مدیریت داده ها (Data Management System) نسل چهارم(1980 - 1974) : نسل سیستم مدیریت پایگاه داده ها (Database Management System) نسل پنجم(تاكنون - 1981) : نسل بانكهای معرفت (Knowledge Bases)
- نسل اول(1957-1948) : نسل بدون نرم افزار واسط : - رسانه ذخیره سازی معمولا نوار بود . - نسل فایل های ترتیبی ساده . - ركوردها به ترتیب ورود روی رسانه درج می شوند . - نرم افزار ابتدایی عملیات ورودی و خروجی را بر عهده دارد . - هرگونه تغییر در رسانه های ذخیره سازی یا ساختار فایل منطقی ( فیزیكی ) سبب تغییر در برنامه ایجاد كننده و پردازشگر فایل می شود . - تنها روش پردازش فایلها ، پردازش دسته ای(batch) است . - نسخه های متعددی از یك فایل نگهداری می شود . - نرم افزار تنها عملیات ورودی / خروجی را انجام می دهد و نرم افزار واسطی برای مدیریت پردازش فایلها وجود ندارد . - طراحی ساختار فیزیكی فایلها بر عهده كاربر است . ( در برنامه كاربر ) - داده ها برای كاربرد خاصی طراحی و سازماندهی می شوند . - استفاده از یك داده در چندین كاربرد نادر است ( اشتراك داده ها مطرح نیست ) . -تكرار در ذخیره سازی داده ها در بالاترین حد است .
- نسل دوم: نسل شیوه های دستیابی (1966- 1958) (Access Methods) : - رسانه های با دستیابی مستقیمDisk ها بوجود آمدند . - نرم افزارهایی به نام شیوه های دستیابی ایجاد شدند . تعریف شیوه دستیابی(AM) : نرم افزاری است كه به جنبه های فیزیكی محیط ذخیره سازی و عملیات در این محیط میپردازد ، به نحوی كه دیگر برنامه كاربر نیازی به پرداختن به این جنبه ها را ندارد . - برنامه های كاربردی در قبال تغییرات در سخت افزار ذخیره سازی و طرح نشست فیزیكی فایلها روی رسانه مصونیت یافتند . - مفهوم فایل منطقی ( دید كاربر از ركوردهای ذخیره شده ) از مفهوم فایل فیزیكی ( آنگونه كه ركورده روی رسانه ذخیره می شوند ) متمایز شد . - امكان دستیابی ترتیبی و مستقیم به ركوردها ( نه فیلدها ) بوجود آمد . - پردازش در محیطهای بر خط (Online) و محیطهای بلادرنگ (Real-time) بوجود آمد . - برنامه كاربردی هنوز از محیط فیزیكی مستقل نیست . - روشهای تامین ایمنی و حفاظت دهده ها ابتدایی هستند . - داده ها همچنان برای كاربردهای خاص طراحی می شوند (اشتراك داده ها وجود ندارد) . -تكرار ذخیره سازی هنوز در حد نسبتا بالایی وجود دارد . - نرم افزاری برای مدیریت داده ها وجود ندارد .
مثالهایی از (AM) : VSAM : Virtual Storage Access Method ISAM : Indexed Sequential Access Method Btrieve and now Pervasive.SQL : www.pervasive.com
نسل سوم: نسل سیستم مدیریت داده ها (1973-1967) (Data Management System) (DMS) : - نرم افزاری نسبتا پیچیده بنام سیستم مدیریت داده ها ، واسط است بین برنامه های كاربران و محیط فیزیكی ذخیره سازی . - فایلهای منطقی متعددی می توانند از داده های فیزیكی مشترك بهره برداری كنند . - میزان تكرار ذخیره سازی كاهش می یابد . -داده های مشترك در كاربردهای متنوع بكار می روند . - نشانی دهی داده ها در سطح فیلدامكان پذیر است .
- نسل چهارم: نسل سیستم مدیریت پایگاه داده ها (1980-1974) (Databse Management System) (DBMS) : - نسل جهش در تكنولوژی ذخیره و بازیابی اطلاعات بود . -مستقل شدن برنامه های كاربردی از جنبه ها و خصوصیات محیط فیزیكی ذخیره سازی كه آن را اصطلاحا استقلال داده فیزیكی (Physical Data Independence) می نامند . - نرم افزار پیچیده و جامع موسوم به سیستم مدیریت پایگاه داده ها واسط بین برنامه های كاربران و محیط داخلی فیزیكی ذخیره سازی است . -داده ها به عنوان مهمترین سرمایه های سازمان مطرح شدند . -ایمنی داده ها و دسترس پذیری داده ها (Security and Availability) مطرح شدند .
نسل پنجمنسل بانكهای معرفت و شی گرا (تاكنون-1981) : - Knowledge bases - Object oriented databases - Object relational database
-داده(Data) : - تعریفANSI : عبارت است از نمایش واقعیات ، پدیده ها ، مفاهیم ، معلومات و شناختها به گونه ای صوری و مناسب برای برقراری ارتباط ، تفسیر یا پردازش توسط انسان یا امكانات خودكار . - تعریفاطلاع(Information) : معنایی است كه انسان به داده منتسب می كند . در واقع هنگامی كه داده در یك موقعیت مشخص و در یك بستر خاص و برای حل یك مشكل مشخص مورد تفسیر و ارزیابی قرار گیرد ، اطلاع حاصل می شود . - داده صرفا جنبه نمایش دهندگی دارد ، در حالیكه اطلاع دارای خاصیت ارتباط دهندگی و انتقال دهندگی است . داده باید در معرض تفسیری هوشمندانه قرار گیرد تا اطلاع عاید شود و انسان از اطلاع كه حامل معنا ، مفهوم و شناخت است در حل مسائل (تصمیم گیری) استفاده می كند .
2- پایگاه داده ها (Database) : - تعریف : پایگاه داده ها مجموعه ای است از داده های ذخیره شده ، بطور یكپارچه(integrated) ، حتی الامكان بدون افزونگی(Redundancy) (با افزونگی كنترل شده) ، مبتنی بر یك ساختار داده ای (DS) مشخص ، تعریف شده بطور صوری(Formal) ، تحت مدیریت متمركز(Centralized Management) مورد استفاده یك یا چند كاربر ، بطور اشتراكی و همزمان. - منظور از (Integrated Data) (داده های یكپارچه ) : یعنی یك اتحادی از فایلهای داده ای كه در غیر این صورت فایلهای داده ای مجزا و متمایز بودند ، بطوریكه هر گونه افزونگی میان آن فایلها تماما یا تا حدودی حذف شده است .
مثال مقدماتی (صرفا درک بهتر تعریف) : محیط عملیاتی دانشگاه: زیر محیطها شامل: هر زیر محیط مجموعه نیازهای اطلاعاتی خاص دارد. مثلا: اطلاعات پرسنلی، اطلاعات حقوق و دستمزد کارمندان، اطلاعات امور دانشجویان، اطلاعات خوابگاه ها، اطلاعات تیمها و سالن هه و رشته های ورزشی، ... اداره آموزش اداره بهداشت اداره امور دانشجویی اداره امور مالی سازمان ورزش ...
مجموعه نیازهای اطلاعاتی مجموعه Application Programs : سیستم حقوق و دستمزد، سیستم پرسنلی، سیستم اطلاعات دانشجویی، ... دو مشی کلی برای ایجاد سیستم اتوماتیزه این محیط عملیاتی وجود دارد: - مشی فایلینگ (کلاسیک)(غیر بانکی) (Non database policy) - مشی بانکی (Database policy)
مشی فایلینگ : - هر یک از زیر محیطها بطور جداگانه مورد مطالعه و تجزیه و تحلیل قرار می گیرند. - طراحی تعدادی فایل - تولید تعدادی برنامه ایجاد کننده فایل و برنامه فایل پرداز یا یک مجموعه ازAP ها که نهایتا محیط ذخیره و بازیابی اطلاعات ایجاد شود.
زبان سطح بالا برنامه ایجاد کننده فایل و ارتباط بین فایلها و تغییرات فایل پرداز استفاده می شودDMSدر بهترین حالت از فایلهای محیط فیزیکی خاص U1 سیستم عامل OS Fs اداره آموزش U1 User interface یک مجموعه اطلاعات از جمله در مورد موجودیت دانشجو فایلهای محیط فیزیکی خاص U2 سیستم عامل OS اداره امور دانشجویان U2 Fs App. ها User interface یک مجموعه اطلاعات از جمله در مورد موجودیت دانشجو (نه لزوما همان اطلاعات قبلی)
معایب این سیستم مثالی(Filing): • نا مجتمع بودن (یکپارچه نبودن) داده های ذخیره شده (سیستمهای پراکنده) • درجه قابل ملاحظه ای از افزونگی (Redundancy) در ذخیره سازی • خطر بروز پدیده ناسازگاری داده ها(Data inconsistency) (ناهمخوانی) • عدم امکان اعمال استانداردها (بدلیل وجود سیستمهای پراکنده) • خطر نا ایمن شدن داده ها: عدم وجود سیستم ایمنی کارا در محیط عملیاتی • حجم بالای برنامه سازی: تعداد بیشتر برنامه ها و بالا بودن حجم برنامه ها • وابستگی برنامه های کاربردی به محیط فیزیکی ذخیره سازی اطلاعات.
استانداردها: در مراحل مختلف تجزیه و تحلیل، طراحی، پیاده سازی، تست، نگهداری و بهره برداری، رفع اشکالات احتمالی، استاندارد واحدی وجود ندارد. - کنترل چنین محیط پراکنده ای اگر نه نا ممکن بلکه دشوار است. تمرین: روی چه محورهایی استانداردها وضع می شود ؟ (یا برای چه چیزهایی استاندارد وضع می کنیم؟) (مثلا: مجموعه استانداردها در تولید برنامه ها یا در تولید مستندات)www.ansi.org - وابستگی برنامه های کاربردی به محیط فیزیکی ذخیره سازی اطلاعات (محیط فایلینگ) : یعنی هرگونه تغییری در محیط ذخیره سازی ایجاد شود منجر به تغییر در برنامه می شود. تمرین: چه تغییراتی در محیط فایلینگ پدید می آید؟ جواب: تغییراتی که از سطح فیلد تا ارتباط بین فایلها ممکن است پدید آید از یکسو و تغییرات در رسانه ذخیره سازی از سوی دیگر.
تغییرات در فیلد: • نام فیلد • طول فیلد • مکان فیلد در رکوردها معایب دیگر مشی فایلینگ پس از بررسی مزایای مشی بانکی مشخص خواهد شد.
افزونگی(Redundancy) : از آنجا که داده هاintegrated (یکپارچه یا مجتمع) نیستند، هر Application فایلهای خاص خود را دارد که می تواند منجر به میزان قابل ملاحظه ای افزونگی داده های ذخیره شده گردد که یکی از نتایج آن اتلاف فضای ذخیره سازی است.
ناسازگاری داده ها (Data inconsistency) : اگر این واقعیت که دانشجویی مثلا S1 در گروه مهندسی شیمی درس می خواند، دو بار در فایلهای مختلف ذخیره شده باشد(مثلا برای زیر محیطهای مختلف) وقتی سیستم مدیریت پایگاه داده هایی وجود ندارد و از این دوبار ذخیره سازی مطلع نیست، زمانهایی ممکن است پیش بیاید که دو مجموعه داده وارد شده با هم سازگار نیستند. به عنوان مثال وقتی که فقط یکی از آنها به روز در آمده باشد (update شده باشد)، در چنین مواقعی گفته میشود که: مجموعه داده ها ناسازگار(inconsistence) است. اگر مجموعه داده فوق الذکر (در ارتباط با دانشجوی S1 ) فقط یکبار ذخیره می شد (یعنی افزونگی وجود نداشت) چنین ناسازگاری امکان نداشت رخ دهد. همچنین اگر افزونگی فوق وجود داشت ولی کنترل شده بود (افزونگی کنترل شده) یعنیDBMS ای وجود داشت و از این افزونگی با خبر بود DBMS می توانست. تضمین کند که Database هیچگاه ناسازگار نباشد. به چه ترتیب ؟؟ با تضمین اینکه هر تغییری در هر یک از مجموعه داده مربوط به S1 بطور اتوماتیک به دیگری نیز اعمال شود. این فرآیند Propagating update(به روزرسانی منتشر شونده) نام دارد.
زبان سطح بالا برنامه های تعریف داده ها و کار با داده ها در محدوده ایده آل مشی بانکی (Database Policy) : محیط واحد و مجتمع ذخیره سازی Interconnected files اداره آموزش D B M S محیط فیزیکی پایگاه U1 F S AP ها تعریف جامع داده ها و کار با داده ها دید واحد و جامع نسبت به داده ها اداره امور دانشجویی OS وحدت ذخیره سازی AP ها U2 نرم افزاری که امکان تعریف جامع و واحد را می دهد و فایلها را خودش ایجاد می کند. (فایلهای لازم برای محیط) برنامه تعریف داده و کار با داده ها(توسط تیم طراح)ها محیطهای مختلف با تعدد نیازهای اطلاعاتی و تعداد دیدها. حتی گاهی تا حد تضاد و تغایر در دید کاربران نسبت به داده های ذخیره شدهیا کثرت (تعدد) دیدها