تاریخ بروزرسانی : 1397/08/02
نام بسته درسی : پایگاه داده پیشرفته
————————
فهرست:
فصل اول:مقدمه
سیستم مدیریت پایگاه داده ها
یادآوری تعریف داده
یادآوری تعریف اطلاع
اشاره ای به مفهوم دانش
فصل دوم:پایگاه داده ها و عناصر اصلی محیط آن
پایگاه داده ها چیست؟
مراحل کلی کار در رهیافت فایلینگ
عناصر سیستم پایگاهی
نرم افزار
فصل سوم:مدلسازی معنایی داده ها
مدلسازی با روش ER:
رده بندی صفت
نوع ارتباط
خصوصیات نوع ارتباط
روش دیگر نمایش چندی و وضع مشارکت در نوع ارتباط
مدلسازی با روش EER
تخصیص و تعمیم
مراحل مدلسازی معنایی
آشنایی با روش مدلسازی UML
فصل چهارم:آشنایی با ساختار داده ها
پایگاه دادهها در سطح انتزاعی مبتنی بر مدل داده
عملگر PROJECT (پرتو)
آشنایی با SQL (مقدماتی)
دستورات عملیات ذخیرهسازی
آشنایی با ساختار داده سلسله مراتبی
برخی ویژگیهای ساختار داده سلسله مراتبی
فصل پنجم:معماری پایگاه داده ها
معماری سه سطحی
دید (نمای) داخلی
شرح اجزای دیگر
برخی ویژگیهای زبان داده ای فرعی
فصل ششم:سیستم مدیریت پایگاه داده ها
تعریف
رده بندی سیستم های مدیریت پایگاه داده ها
ارتباط سیستم مدیریت با سایر عناصر نرم افزاری
اسلوبهای عملیاتی
روند اجرای درخواست کاربر توسط سیستم مدیریت
پارامترهای مربوط به توانشها و کارایی سیستم مدیریت
محک زنی (ابزارسنجی) سیستم مدیریت پایگاه داده ها
فصل هفتم:مدیر پایگاه داده ها
تعریف
مسئولیت ها
وظایف
فصل هشتم:مزایا و معایب سیستم پایگاهی
مزایا و معایب سیستم پایگاهی تک کاربری
مزایا و معایب سیستم پایگاهی چندکاربری
فصل نهم:معماری های سیستم پایگاهی
مقدمه
انواع معماری
تعریف پایگاه داده های توزیع شده
معماری با پردازش موازی
سیستم پایگاهی همراه
فصل دهم:مفاهیم اساسی مدل داده رابطه ای
تعریف رابطه
تعریف صوری جدول
تفاوتهای مفهوم رابطه و اصطلاح جدول
انواع رابطه
میدان (دامنه)
رابطه نرمال و غیرنرمال
کلید کاندید
نمودار ارجاع
قاعده جامعیت ارجاعی
کاتالوگ در مدل رابطه ای
فصل یازدهم:جبر رابطه ای_حساب رابطه ای
عملیات در پایگاه داده های رابطه ای
عملگرهای معمولی
عملگرهای خاص
عملگرهای برون پیوند چپ، برون پیوند راست و برون پیوند کامل
عملگر گروه بندی (تلخیص)
کلید کاندید رابطه جواب
آشنایی با حساب رابطه ای
فصل دوازدهم:امکاناتSQL2003
دستورات تعریف داده ها
ایجاد جدول موقت
ایجاد دید موقت: کلاز WITH
عملگرهای اسکالر
کلاز UNIQUE
رویّه ای شدن زبان
ارث بری نوع
استانده ODBC
مدیریت تراکنش
خواص تراکنش
اشاره ای به تکنیکهای کنترل همروندی تراکنشها
فصل سیزدهم:دیدهای رابطه ای
دید در مدل رابطه ای
مزایا و معایب دید
نقش دید در تأمین استقلال داده ای
دیدهای پذیرا
مشکلات مهمتر دیدهای پذیرا
دیدهای ناپذیرا
فصل چهاردهم:طراحی منطقی پایگاه داده ها:روش بالا به پایین
روش طراحی بالا به پایین
روش طراحی ترکیبی
طراحی پایگاه داده های رابطه ای
روشهای طراحی ارتباط IS-A
طراحی پایگاه داده های شیء گرا
فصل پانزدهم:طراحی منطقی پایگاه داده ها نرمالترسازی رابطه ها
ایده اصلی
صورتهای نرمال
معنای (تفسیر) وابستگی تابعی
کاربردهای قواعد آرمسترانگ
پوش کانونیک
شرح صورتهای نرمال
تجزیه بی حشو (بی کاست)
قضیه هیث
تعریف وابستگی پیوندی (JD)
تعریف رابطه DKNF
صورتهای نرمال دیگر
مزایا و معایب متدولوژی نرمالترسازی
دلایل بروز افزونگی
فصل شانزدهم:طراحی فیزیکی پایگاه داده ها و تنظیم سیستم پایگاهی
تحلیل عوامل
ضوابط تعیین بهترین ساختار ذخیره سازی
تنظیم سیستم پایگاهی
اطلاعات لازم در تنظیم سیستم پایگاهی
تکنیک ایجاد رابطه (های) اضافی
اصلاح پرسشها و تراکنشها
فصل هفدهم:بانک اطلاعات
بانک اطلاعات چیست؟
مدلهای بانک اطلاعات
دادگان
امنیت و جامعیت
مفاهیمی دیگر
مراحل طراحی بانک اطلاعات
فصل هجدهم:تصویر ادراکی عام
مدل EER
انواع صفت
مدل NIAM
مدل کلاسها
الگوریتم نگاشت نمودار ER به جداول
فصل نوزدهم:مبانی نطری مدل رابطه ای
مفاهیم
گزینش و پرتو
عملگرهای مجموعهای
حساب رابطهای دامنهای
فصل بیستم:زبان پرس و جویSQL
تعریف دادهها
گروههای بندی دادهها
پرس و جو با قید “همه”
فصل بیست و یکم:وابستگی و نرمالسازی
افزونگی دادهها
وابستگی تابعی
امتیازهای مدل رابطهای
فصل بیست و دوم:کاستی های مدل رابطه ای
کاربردهای سنتی
ارمغانهای مدلهای شیءگرا و شیء رابطهای
ویژگیهای غیرشیءگرایی
ویژگیهای شیءگرایی
مقایسه و نتیجهگیری
منابع و مآخذ
بخش هایی از بسته درسی پایگاه داده پیشرفته
سیستم مدیریت پایگاه داده ها یکی از سیستمهای ذخیره و بازیابی اطلاعات است با توجه به معنای عام سیستم ذخیره و بازیابی اطلاعات: یعنی هر سیستمی که به کاربر برنامهساز یا نابرنامهساز امکان دهد تا اطلاعات خود را ذخیره، بازیابی و پردازش کند و احیاناً اطلاعات جدیدی را تولید نماید.
اصطلاح “ذخیره و بازیابی اطلاعات” از یک دیدگاه ویژسته میتواند معنای دیگری هم داشته باشد: مجموعهای از الگوریتمها و تکنیکها که در ذخیرهسازی، بازیابی و پردازش اسناد، مدارک، متون، تصاویر و اصوات به کار میروند. این گونه دادهها ممکن است ساختمند، نیم ساختمند و یا حتی ناساختمند باشند. این الگوریتمها و تکنیکها نهایتاً در طراحی و تولید یک “سیستم” به کار گرفته میشوند، سیستمی که به کاربر امکان میدهد تا اطلاعات مورد نظرش را ذخیره، بازیابی و پردازش کند.
یادآوری تعریف داده
کلمه data ریشه لاتین دارد و در اصل از کلمهای در لاتین به معنای “دادن” مشتق میشود و مفرد آن datum است.
برخی از تعاریف ارائه شده در متون چنیناند:
داده عبارتست از نمایش ذخیره شده اشیاء فیزیکی، چیزهای مجرد، بودهها (واقعیات)، رویدادها یا موجودیتهای دیگر قابل مشاهده که در تصمیمگیری به کار میآیند [STAN 89].
داده عبارتست از هر جملهای از بودهها [LIPS 92].
بودههای خام که معنای اندکی دارند مگر اینکه به صورتی منطقی سازماندهی شده باشند [ROB 93].
داده عبارتست از کلمه و/ یا عددی که معنای خاصی داشته باشد… [MODE 92].
داده عبارتس از بوده (واقعیت) یا هستِ معلوم که میتوان بوده یا هستِ دیگری را از آن استنباط کرد [DATE 03].
واقعیات شناخته شده که میتواند ذخیره شود و معنای ضمنی دارد [ELMA 03].
یادآوری تعریف اطلاع
برخی از تعریفهای ارائه شده چنیناند:
اطلاع به دادهای اطلاق میشود که توسط یک فرد یا سازمان برای تصمیمگیری به کار میرود [STAN 89].
اطلاع، داده پردازش شده است [LIPS 92].
اطلاع عبارتست از داده آراسته به صورتی معنادار [ROB 93].
اطلاع عبارتست از داده سازمان یافته که شناختی را منتقل میکند. به بیان دیگر اطلاع، دادهای است که سازمان یافته است تا چیزی به ما بگوید [MODE 92]. و عبارات کم و بیش مشابه که به نظر چندان دقیق نمیرسند. اما ببینم ANSI در این مورد چه میگوید. برای این مفهوم، ANSI تعریف زیر را ارائه کرده است:
معنایی که انسان به داده منتسب میکند، از طریق قراردادهای شناخته شدهای که در نمایش داده به کار میروند.
اشارهای به مفهوم دانش
دانش عبارتست از نمایش نمادین جنبههایی از بخشی از جهان واقع (جهان مورد نظر یا محیط مطرح). آنگاه با توجه به این تعریف، یک “تکه دانش” را به مثابه مدلی از جنبهای از بخشی از جهان واقع میبیند. جهان واقع میتواند جهان واقعی یا غیرواقعی مثل آینده، جهان تخیلی و… باشد. سپس مثالهایی از تکه دانش ارائه میکند از جمله:
“الف” و “ب” ازدواج کرده است.
“الف” کارمند شرکت “ش” است.
کارمند “ج” فکر میکند که زندگی خوبی دارد.
پایگاه دادهها چیست؟
اصطلاح پایگاه داده ها اصطلاحی است بسیار رایج و شناخته شده در دانش و تکنولوژی کامپیوتر، اما در تعریف این اصطلاح در متون آکادمیک و تکنیک عبارات یا جملات نه چندان یکسان آمده است. به جملات زیر توجه شود:
پایگاه دادهها عبارتست از مجموعهای از دادهها [SILB 06].
پایگاه دادهها عبارتست از مجموعهای از دادههای منطقاً بهم مرتبط (و توصیف این دادهها) که برای پاسخگویی به نیازهای اطلاعاتی یک سازمان طراحی شدهاند [CONN 05].
پایگاه داده عبارتست از مجموعهای از دادههای بهم مرتبط [ELMA 03].
پایگاه دادهها عبارتست از دادههای نشاندهنده اشیائی از بخشی از جهان واقع و مورد استفاده در یک کاربرد مشخص [GARD 99].
پایگاه دادهها عبارتست از مجموعهای از دادههای پایا (مانا یا ماندگار) که در سیستمهای کاربردی در یک سازمان مورد استفاده قرار میگیرند [DATE 03].
پایگاه دادهها عبارتست از مجموعهای از فقره دادههای نامدار. یک فقره داده، در عمل میتواند کلمهای از حافظه، صفحهای از دیسک، رکوردی از فایل یا حتی فیلدی از یک رکورد باشد [BERN 87].
پایگاه دادهها در اساس چیزی بیش از مجموعهای از اطلاعات نیست که مدت زمان طولانی، حتی چندین سال، میتواند وجود داشته باشد. در بیان عام، اصطلاح پایگاه دادهها به مجموعهای از دادهها اطلاق میشود که توسط یک سیستم مدیریت پایگاه دادهها، مدیریت میشود [ULIM 02].
پایگاه دادهها مجموعهای است از دادهها، نوعاً نشاندهندۀ (توصیفگر) فعالیتهای یک یا چند سازمان بهم مرتبط [RAMA 98].
تعریف پایگاه دادهها
مجموعهای است از دادههای ذخیره شده و پایا، به صورت مجتمع (یکپارچه) (نه لزوماً همیشه بطور فیزیکی، بلکه حداقل بطور منطقی)، بهم مرتبط، حتیالامکان با کمترین افزونگی، (دارای یک ساختار منطقی مبتنی بر یک مدل داده، توصیف شده بویژه در چارچوب همان مدل داده و نیز دارای معماری خاص)، تحت مدیریت یک سیستم کنترل متمرکز، مورد استفاده یک یا چند کاربر از یک (یا بیش از یک) “سیستم کاربردی”، بطور همروند و اشتراکی.
مراحل کلی کار در رهیافت فایلینگ
در این رهیافت اجمالاً اینکه:
نیازهای اطلاعاتی و پردازشی هر قسمت از محیط، که معمولاً بطور جداگانه مورد بررسی و تحلیل قرار گرفته، برآورده شده و مشخصات نیازها تعیین میشود.
مراحل کلاسیک اولیه لازم برای طراحی و تولید یک سیستم کاربردی برای هر قسمت انجام میشود (به طرزی که مثلاً در درس “تحلیل و طراحی سیستمها” یا درس “مهندسی نرمافزار” مطرح میشود).
مشصخات هر سیستم و وظایف آن مشخص میشود (از جمله با انجام تحلیل عملکردی).
تعدادی فایل طراحی میشود.
مجموعهای از برنامههای ایجاد فایلها، کنترل فایلها و پردازش فایلها طراحی و تولید میشود. (مجموعهای از برنامههای کاربردی).
از یک پیکربندی سختافزاری و نرمافزاری مشخص استفاده میشود. بویژه نرمافزار واسط برای ایجاد محیط ذخیرهسازی اطلاعات، یک سیستم فایل (در متن یک سیستم عامل) است و گاه ممکن است از یک (یا بیش از یک) سیستم مدیریت دادهها هم استفاده شود. زبان برنامهسازی معمولاً یک (یا بیش از یک) زبان برنامهسازی متعارف (سطح بالا) و گاه “مجموعه دستوراتی” از یک سیستم مدیریت دادهها است.
تستهای لازم (تست مرحله اول با دادههای تستی و تست مرحله دوم و گاه مرحله سوم، با دادههای واقعی) انجام شده، سیستم کاربردی تنظیم میشود.
نهایتاً برای هر قسمت یک سیستم کاربردی ایجاد و محیط فیزیکی ذخیره و بازیابی اطلاعات و سیستم بهرهبرداری، از آن، خاص همان قسمت برپا میشود. معمولاً واسطهای کاربر پسند هم برای کاربران نابرنامه ساز طراحی و ایجاد میشوند.
در شکل 2-1 رهیافت فایلینگ یا ناپایگاهی دیده میشود. در این شکل میبینیم که:
هرقسمت از دانشگاه سیستم کاربردی خاص و جداگانه خود را دارد: مجموعهای از برنامههای ایجادکننده تعدادی فایل و نیز برنامههای عملکننده در این فایلها و بهرهبرداری از آنها و نیز طبعاً از فایلهای ذخیره شده که محیط ذخیرهسازی را تشکیل میدهند.
فایلهای هر قسمت ساختار، فرمت و استراتژی دستیابی (و تا حدی ضوابط ایمنی (امنیت)) خاص خود را دارند.
در هر سه محیط ذخیرهسازی دادههایی در مورد نوع موجودیت دانشجو وجود دارد و حداقل بخشی از دادههای پایهای در مورد این نوع موجودیت، در هر سه محیط ذخیرهسازی تکرار میشود (افزونگی)، از جمله: شماره، نام، نام خانوادگی، سال تولد، نام پدر، شماره شناسنامه، آدرس، محل تولد، سال ورود، رشته و… و البته در هر یک از سه محیط ذخیرهسازی، دادههای دیگری هم، خاص هر یک از آنها، ذخیره میشود.
معایب رهیافت فایلینگ
حال ببینیم رهیافت فایلینگ چه معایبی دارد؟ برخی از معایب آن عبارتند از:
عدم وجود محیط مجتمع ذخیرهسازی اطلاعات و عدم وجود سیستم یکپارچه
عدم وجود سیستم کنترل متمرکز روی کل دادههای سازمان
تکرار در ذخیرهسازی اطلاعات
عدم امکانِ اعمال مجموعه واحدی از استاندهها (استانداردها) در مراحل مختلف مطالعه و تحلیل، تعیین مشخصات فنی، طراحی، پیادهسازی، تولید، نگهداری، گسترش و بهرهبرداری از سیستمهای کاربردی
عدم وجود ضوابط ایمنی کارا و مطمئن
خطر بروز پدیده ناسازگاری دادهها (در بیان مقدماتی از جمله ناهمخوانی دادهها: مثلاً بروز دادههای متناقض در مورد یک یا چند نمونه موجودیت که خود ناشی از عدم انجام بهنگامسازی منتشر شونده (افزونگی کنترل نشده) و عدم رعایت قواعد و محدودیتهای ناظر به دادههای ذخیره شده است. در اینباره در گفتار دهم و دوازدهم بحث خواهد شد.
عدم امکان اشتراکی شدن دادهها و یا اشتراک دادهها در حد ضعیف (مگر اینکه سیستم کاربردی در محیط سیستم مشتری/ خدمتگزار ایجاد شود. به گفتار نهم مراجعه شود).
مصرف نابهینه امکانات سختافزاری و نرمافزاری
حجم زیاد برنامهسازی و استفاده نابهینه از مهارت و وقت تیمهای برنامهسازی
دشواری در گسترش سیستم کاربردی و ایجاد کاربردهای جدید
و نیز معایبی دیگر که پس از آگاهی از مزایای رهیافت پایگاهی به آنها پی خواهیم برد، از جمله یک عیب بسیار مهم:
وابسته بودن برنامههای کاربردی به محیط ذخیرهسازی دادهها (به فایلها)
مراحل کلی کار در رهیافت پایگاهی (بحث مقدماتی)
در رهیافت پایگاهی اجمالاً اینکه:
نیازهای اطلاعاتی و پردازشی همه قسمتهای مورد نظر مدیریت کل سازمان (در مثال ما، مدیریت دانشگاه) توسط یک گروه مورد مطالعه، بررسی و تحلیل قرار میگیرند (با هدف ایجاد یک سیستم یکپارچه، البته نه لزوماً بطور فیزیکی و جغرافیایی). درواقع شناخت محیط و مهندسی نیازها انجام میشود.
مشخصات سیستم جامع (یکپارچه) کاربردی و وظایف آن تعیین میشود (با انجام تحلیل عملکردی و با استفاده از یک متدولوژی تحلیل و طراحی سیستم).
یک (یا چند) پیکربندی سختافزاری- نرمافزاری انتخاب میشود.
از یک (یا چند) سیستم مدیریت به عنوان سیستم متمرکز استفاده میشود.
دادههای سازمان، به شرحی که خواهیم دید، مدلسازی معنایی میشوند.
طراحی پایگاه دادهها در سطوح لازم انجام میشود (این طراحی بطوریکه خواهیم دید، در سطح منطقی براساس یک ساختار داده (از یک مدل داده) و به منظور تأمین سطوح انتزاعی پایگاه دادهها، و نیز در سطح فیزیکی (طراحی فایلها) انجام میشود.
مجموعهای از برنامههای ایجاد و کنترل پایگاه دادهها طراحی و تولید میشود (موسوم به برنامههای تعریف دادهها و کنترل دادهها).
محیط واحد و مجتمع ذخیرهسازی و مشترک بین کاربران مختلف، ایجاد میشود.
واسطهای کاربرپسند مورد نیاز، طراحی و تولید میشوند.
نوشتههای تازه