دانلود تحقیق کامل درمورد حافظة اصلی پایگاه داده ها (Main Memory Database)

دانلود تحقیق کامل درمورد حافظة اصلی پایگاه داده ها (Main Memory Database)

لینک پرداخت و دانلود *پایین مطلب*
فرمت فایل:Word (قابل ویرایش و آماده پرینت)
تعداد صفحه: 54

 

Main Memory Database

حافظه اصلی پایگاه داده ها

مقدمه

در اواسط دهه 1980، با نزول قیمت DRAM، این ایده مطرح شد که کامپیوترهای آتی با داشتن حافظه اصلی با ظرفیت بالا، می توانند بسیاری از پایگاه داده ها را درحافظه اصلی داشته باشند. در این شرایط می توان همه I/O ها (که بسیار هزینه بر می باشند) را از پردازش DBMS حذف نمود. بنابراین معماری DBMS دستخوش تغییرات جدی می شود و در یک MAIN MEMORY DBMS(MMDBMS)، مدیریت I/O دیگر نقشی نخواهد داشت.

نکته مهم در یک MMDB، چگونگی انجام تراکنشها و recovery بصورت کارا است. برخی از الگوریتمهای پیشنهادی براساس این فرض عمل می کنند که قسمت کوچکی از حافظه اصلی بصورت ماندگار وجود دارد که اطلاعاتش توسط باطری در صورت قطع برق از بین نخواهد رفت. این قسمت از حافظه اصلی برای نگهداری redo log ها استفاده می شود.

تعداد دیگری از الگوریتمهای پیشنهادی پیش فرض حافظه ماندگار را ندارند و همچنان از عملیات I/O برای نوشتن اطلاعات تراکنش در حافظه ماندگار استفاده می کنند. بنابراین در این الگوریتمها عملیات I/O بطور کامل حذف نمی شود، بلکه تعدادشان بسیار کمتر می شود زیرا  I/Oمربوط به نوشتن اطلاعات صفحات buffer ها، حذف خواهد شد.

در یک MMDBMS، ساختارداده های ساده مانند T-Tree و همچنین bucket-chained hash جایگزین ساختارداده هایی چون B-Tree و linear hash در DBMS های مبتنی بر دیسک می شوند. بنابراین سرعت اجرای پرس و جو(پرس و جو) و بهنگام سازی بسیار افزایش می یابد و هزینه index lookup و نگهداری ،فقط مربوط به  پردازنده و دسترسی به حافظه اصلی خواهد شد.

یکی از مشکلات اصلی در MMDBMS ها بهینه کردن درخواستهاست. عدم وجود I/O به عنوان فاکتور اصلی در هزینه ها به معنای پیچیدگی بیشتر مدل کردن هزینه در یک MMDBMS است زیرا در اینجا یکسری فاکتورهای فازی از قبیل هزینه اجرای  پردازنده ، باید در نظر گرفته شوند. در این حالت باید با استفاده از تعامل روش coding، عوامل سخت افزاری مانند  پردازنده و معماری حافظه و پارامترهای پرس و جو، به یک مدل قابل اطمینان از هزینه اجرا در حافظه اصلی رسید.

در دهه 1990، MMDBMS ها با افزایش سایز دیسکها و سایز مسائل همراه با افزایش ظرفیت DRAM ها، به اوج محبوبیت خود رسیدند. MMDBMS ها اغلب برای برنامه هایی که به پایگاه داده Real Time نیاز دارند (مانند سیستمهای embedded سوئیجهای تلفن) ، استفاده می شود. از آنجایط که سایز حافظه اصلی در کامپیوترها روز به روز در حال افزایش است، این امید وجود دارد که برای بسیاری از پایگاه داده هایی که امروزه امکان قرارگفتن آنها بصورت کامل در حافظه اصلی وجود ندارد، این شرایط مهیا شود.

 

مدلهای هزینه حافظه اصلی

متاسفانه تا کنون تلاشهای اندکی جهت مدل کردن هزینه کارایی MMDBMSها صورت گرفته است. تحقیقات اولیه روی طراحی ماشینهای پایگاه داده ها، بیشتر در زمینه وابستگیهای میان الگوریتمها و دسترسی حافظه صورت می گرفت.در صورتیکه امروزه به دلیل محدود شدن استفاده از MMDBMS ها به کاربرد در پایگاه داده های Real Time(به صورت پرس وجوهای ساده، مانند یک hash lookup در یک جدول)، اینگونه تحقیقات از اهمیت کمتری برخوردارند.

در تحقیقات اخیر در زمینه MMDBMS ها دو نمونه تحقیقاتی Office-By-Example (OBE) مربوط به شرکت IBM و Smallbase مربوط به شرکت HP مسائل ارزشمندی را درمورد بهینه سازی پرس وجو ها و مدلسازی هزینه حافظه اصلی مطرح کرده اند که در ادامه به بررسی این دو نمونه می پردازیم.

 

Office-By-Example (OBE)

OBE یک پایگاه داده در حافظه اصلی است که بسیاری از مفاهیمQuery-by-example(QBE)، را گسترش می دهد. برای بهینه سازی پرس و جو، مبتنی بر هزینه، OBE یک مدل کامل از هزینه را ارائه می دهد. باتوجه به این پیش فرض که داده هایی که پردازش می شوند در حافظه اصلی قرار گرفته اند، عامل اصلی هزینه در پایگاه داده های متداول که همان دسترسی I/O است حذف خواهد شد.

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

راه حل پیشنهادی، استفاده از روشهای تجربی و روشهای تحلیلی در کنار یکدیگر است.

در ابتدا، bottleneck های سیستم با استفاده از یک تحلیلگرِ اجرا شناسایی می شوند. در این روش تنها bottleneck ها، برای مدلسازی هزینه پردازنده بکار می روند.

البته در این مرحله، بسیار مهم است که bottleneck ها تا حد ممکن توسط تلاشهای معقول اصلاح شوند.

مرحله بعد پیدا کردن وزن نسبی هریک از bottleneck ها و مشخص سازی واحد هزینه آنها توسط روشهای تجربی است.

برای OBE، bottleneck ها و واحدهای هزینه بصورت زیر مشخص می شوند :

ارزیابی expression هایی که در predicate ها آمده اند. (واحد هزینه = C1)عملیات قیاسی که برای مشخص کردن خروجی نهایی predicate ها لازم است. (واحد هزینه = C2)بازیابی یک tuple از یک رابطه موجود در حافظه اصلی. (واحد هزینه = C3)واحد عملیاتِ ساختن شاخص (index) ( ساختن شاخص روی رابطه ای که n تا tuple دارد، nLog2n برابر واحد هزینه دارد. واحد هزینه = C4)واحد عملیات در مرتب سازی ،که در شرایط شاخصهای چند ستونی(multi-column index) مورد نیاز است. (واحد هزینه = C5)

جالبترین نتیجه بدست آمده از آزمایشات این است که، هزینه ارزیابی expression های سیستم، بیشترین هزینه از میان هزینه های مطرح شده در OBE می باشد.در حالیکه C2 تا C5 تقریبا یکسان می باشند، C1 به میزان قابل توجهی بیشتر از آنهامی باشد.

در ادامه به بررسی نمونه Smallbase می پردازیم.

 

Smallbase

در smallbase، مدل هزینه حافظه اصلی به سه گروه تقسیم می شود:

Hardware-based  

این مدل بسیار شبیه مدل هزینه مبتنی بر I/O در پایگاه داده های متداول است. به جای شمارش عملیات I/O،  تعداد سیکلهای پردازنده شمارش می شود. علیرغم اینکه این روش بسیار ساده به نظر می رسد، از جهت پیاده سازی مشکلات عمده ای وجود دارد.بعلاوه، portability بسیار محدود خواهد شد زیرا این سیاستها میان معماریهای سخت افزار، متفاوت است. در هر حال این مدل بسیار دقیق و قابل لطمینان می باشد.

 

Application-based

در این روش هزینه ها بر اساس هزینه bottleneck های سیستم بیان می شود.علیرغم اینکه این روش از جهت پیاده سازی بسیار ساده تر از روش hardware-based است، این نوع مدل از عمومیت کمتری برخوردار است.

Bottleneck ها بسیار وابسته به workload ِمورد استفاده برای شناسایی آنها، دارد و بنابراین نمی توان از این روش برای نمایش هزینه های همه انواع پرس و جو استفاده کرد.

در اصل،این مدل نسبت به مدل hardware-based از portability بالاتری (توسط تولید دوباره پروفیل) برخوردار است. به هر حال، این روش نه تنها باعث تفاوت در واحدهای هزینه می شود بلکه مجموعه bottleneck ها هم متفاوت خواهد شد.در این حالت اگر مدل، دستخوش تغییرات شود، هزینه توابعِ هزینه مربوط به عملیات پایگاه داده، باید دوباره بر اساس bottleneck های جدید فرمولسازی شود.

 

Engine-based

این مدل هزینه، مابین مدل hardware-based - که دقیق و پیچیده است- و مدل application-based -که علیرغم سادگی از عمومیت کمتری برخوردار است-، قرار دارد. این مدل بر اساس هزینه عملیات ابتدایی که موتور اجرایی MMDBMS تامین می کند، عمل می کند.

در یک پروسه دو مرحله ای این مدل توضیح داده می شود:

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

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

برای سیستم smallbase ، هزینه های ابتدایی زیرشناسایی شده اند :

Fetch کردن یک ستون ویا مقدار یک پارامترانجام عملیات ریاضی و منطقیاجرای یک عمل مقایسهاجرای expression  ایی که  like  داشته باشدscan کردن جدول، T-tree index، hash index، جدول موقتساخت و از بین بردن T-tree index، hash index، جدول موقتمرتب سازی tuple هاانتخاب tuple های مشخصانجام عمل join (nested loop join، merge join)

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

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

برنامه تست هزینه سپس پارامترهای مربوطه و ارزیابی مدل را با اجرای هر زوج پرس و جو به تعداد مکرر با سایزهای متفاوت جداول انجام می دهد.  

 

ساختارهای شاخص در حافظه اصلی

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

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

چنین روشی چندین مزیت دارد:

با استقاده از اشاره گرِ tuple،شاخص، هم به مقادیر صفات آن tuple دسترسی دارد و هم به خود tuple ،بنابراین اندازه شاخص کاهش می یابد.این روش ، سبب کاهش پیچیدگی در سازماندهیِ رکوردهایی با اندازه های زیاد و متغیر،و روشهای فشرده سازی در شاخص ها می شود.با انجام عملیات بهنگام سازی،شاخص ها نیز باید بهنگام شوند، در این حالت، جابجایی اشاره گرها بسیار ارزان تر از جابحایی مقادیر صقاتِ (معمولاً) طولانی تر می باشد.

این فقط قسمتی از متن مقاله است . جهت دریافت کل متن مقاله ، لطفا آن را خریداری نمایید



خرید و دانلود دانلود تحقیق کامل درمورد حافظة اصلی پایگاه داده ها (Main Memory Database)


دانلود مقاله کامل درباره الگوریتم (پایگاه داده ها)

دانلود مقاله کامل درباره الگوریتم (پایگاه داده ها)

لینک پرداخت و دانلود *پایین مطلب*
فرمت فایل:Word (قابل ویرایش و آماده پرینت)
تعداد صفحه: 27

 

چکیده : در این گزارش ما به بررسی ویژگی های الگوریتم های کنترل همروندی توزیعی که بر پایه مکانیزم قفل دو مرحله ای(2 Phase Locking)   ایجاد شده اند خواهیم پرداخت. محور اصلی این بررسی بر مبنای تجزیه مساله کنترل همروندی به دو حالت read-wirte و write-write می‌باشد. در این مقاله، تعدادی از تکنیکهای همزمان سازی برای حل هر یک از قسمتهای مساله بیان شده و سپس این تکنیکها برای حل کلی مساله با یکدیگر ترکیب می‌شوند.

در این گزارش بر روی درستی و ساختار الگوریتمها متمرکز خواهیم شد. در این راستا برای ساختار پایگاه داده توزیعی یک سطحی از انتزاع را در نظر می‌گیریم تا مساله تا حد ممکن ساده سازی شود.

 

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

مساله کنترل همروندی در چندین سال قبل کاملا مورد بررسی قرار گفته است و در خصوص پایگاه‌داده‌های متمرکز کاملا شناخته شده است. در خصوص این مسال در پایگاه داده  توزیعی با توجه به اینکه مساله در حوزه مساله توزیعی قرار می‌گیرد بصورت مداوم راهکارهای بهبود مختلف عرضه می‌شود. یک تئوری ریاضی وسیع برای تحلیل این مساله ارائه شده و یک راهکار قفل دو مرحله ای به عنوان راه حل استاندارد در این خصوص ارائه شده است. بیش از 20 الگوریتم کنترل همروندی توزیعی ارائه شده است که بسیاری از آنها پیاده سازی شده و در حال استفاده می‌باشند.این الگوریتمها معمولا پیچیده هستند و اثبات درستی آنها بسیار سخت می‌باشد. یکی از دلایل اینکه این پیچیدگی وجود دارد این است که آنها در اصطلاحات مختلف بیان می‌شوند و بیان های مختلفی برای آنها وجود دارد. یکی از دلایل اینکه این پیچدگی وجود دارد این است که مساله از زیر قسمتهای مختلف تشکیل شده است و برای هر یک از این زیر قسمتها یک زیر الگوریتم ارائه می‌شود. بهترین راه برای فائق آمدن بر این پیچدگی این است که زیر مساله ها و الگوریتمهای ارائه شده برای هر یک را در ی.ک سطح از انتزاع نگاه داریم.

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

همانطور که گفته شد، هدف کنترل همروندی مقابله با تزاحمهایی است که در اثر استفاده چند کاربر از یک سری داده واحد برای کاربران بوجود می‌آید است. حال ما با ارائه دو مثال در خصوص این مسائل بحث خواهیم نمود. این دو مثال از محک معروف TPC_A مقتبس شده اند. در این مثالها، یک سیستم اطلاعات را از پایگاه داده ها استخراج کرده و محاسبات لازم را انجام داده و در نهایت اطلاعات را در پایگاه داده ذخیره می‌نماید.

حالت اول را می‌توان بروزآوری از دست رفته نامید. حالتی را تصور کنید که دو مشتری از دو سیستم مجزا بخواهند از یک حساب مالی برداشت نمایند. در این حالت فرض کنید در غیاب سیستم کنترل همروندی، هر دو با هم اقدام به خواندن اطلاعات و درج اطلاعات جدید در سیستم میکنند. در این حالت در غیاب سیستم کنترل همروندی تنها آخرین درج در سیستم ثبت می‌شود. این حالت در شکل 1 نشان داده شده‌ است.

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

مشتری 1: بخواهد یک چک 1 میلیونی را به حساب X واریز و از حساب Y برداشت نماید.مشتری 2: بخواهد بیلان حساب مالی X و Y شامل کل موجودی را نمایش دهد.

در غیاب کنترل همروندی همانطور که در شکل 2 نشان داده شده‌است، تزاحم بین پروسس ها بوجود خواهد آمد. فرض کنید در زمانی که مشتری 1 اطلاعات را از حساب Y خوانده و اطلاعات حساب X را دریافت نموده و 1 میلیون از حساب Y برداشت نموده ولی هنوز 1 میلیون به حساب X و اریز نکرده مشتری 2 اطلاعات کل دو حساب را دریافت نموده و نتیجه را چاپ نماید. در این حالت مشتری شماره 2 اطلاعاتی را که به عنوان بیلان نمایش می‌دهد 1 میلیون از مقدار واقعی کمتر است. این حالت یک فرق اساسی با حالت اول دارد و آن این است که در این حالت نتیجه نهایی در پایگاه داده درست خواهد بود در حالیکه اطلاعات دریافت شده بصورت موقت غلط خواهند بود.

مساله کنترل همروندی در پایگاه داده های توزیعی تا حدودی شبیه مساله دوبه‌دو ناسزگاری در سیستم عامل می‌باشد.  در مساله دوبه‌دو ناسازگاری، هماهنگی جهت دسترسی به منابع سیستم ائم از حافظه، ابزارهای ورودی و خروجی و CPU و .... بوجود می‌آید. در این حالت راه حلهای گوناگونی ائم از قفلها، سمافورها، مونیتورها و ... پیشنهاد شده است.

کنرتل همروندی و دوبه‌دو ناسگاری از این جهت که هر دو دسترسی به منابع مشترک را کنترل میکنند با هم شباهت دارند.  با این حال راه حلی که برای یکی بکار می‌رود قابل بهره برداری برای دیگری نیست. فرض کنید پردازه های P1 و P2 بخواهند از نقاط مختلف کدهای خود به منابع R1 و R2 دسترسی پیدا کنند. در سیستم عامل دسترسی مجزای ذیل قابل قبول است. P2 از R1 استفاده کند، P2 از R1 استفاده کند، P2  از R2 استفاده نموده و سپس P1 از R2 استفاده نماید. در پایگاه داده این روند اجرا مورد قبول نیست و مشکلاتی را ایجاد می‌کند. فرض کنید P1 بخواهد از R1 مبلغی را به R2 انتقال دهد. در این حالت اگر P2 مقادیر R1 وR2  را چک کند مقادیر غیر صحیح را دریافت می‌کند.

مدل پردازش تراکنش: برای اینکه روند اجرای عملیات در سیستمهای پایگاه داده های توزیعی برای خواننده مشخص شود ما در اینجا یک مدل از پایگاه داده‌های توزیعی را ارائه می‌دهیم. سپس نحوه عملکرد مکانیزم کنترل همروندی را در این مدل بیان خواهیم نمود. در این مدل پایگاه داده، یک پایگاه داده توزیعی مجموعه از سایتهاست که توسط یک شبکه به هم متصل شده‌اند. هر سایت یک کامپیوتر است که یکی یا هر دوی برنامه های ذیل را اجرا می‌کند. برنامه‌ها شامل یک مدیر تراکنش یا TM و یک مدیر داده یا DM است. TM مسئول مدیریت تعامل کاربر با پایگاه داده است و DM مسئول نگهداری داده‌ها است. شبکه نیز یک وسیله ارتباطی کامپیوتر – کامپیوتر است. فرض بر این است که شبکه کاملا امن می‌باشد و پیامها را با همان ترتیبی که وارد سیستم می‌شوند به مقصد ارسال می‌شود. فرض بر این است که تعداد داده های موجود در سیستم شامل X ، Y  و Z است که داده های منطقی موجود در سیستم را تشکیل می‌دهند. داده های ذکر شده فقط واحد داده های منطقی هستند و ما با سایز و قالب و جزئیات آنها کاری نخواهیم داشت. هر پایگاه داده در این سیستم یک نسبت دهی مقادیر بصورت منطقی به این داده های منطقی است. هر داده منطقی می‌تواند در یک یا بیشتر از یک DM ذخیره شود. افزونگی داده در اثر ذخیره داده در چندین DM برای افزایش دسترسی به داده‌ها است. هر کپی از داده ذخیره شده آیتم داده نامیده می‌شود. نسخه های متعدد داده X را بصورت  X1,X2,...   نشان داده می‌شوند. کاربران با DDBMS از طریق اجرای تراکنشها تعامل دارند. تراکنشها می‌توانند پرس و جو های on-line باشند که با زبان استاندارد پرس و جو ارسال شده اند. از طرفی تراکنشها می‌توانند عملیاتی باشند که از طریق برنامه های نوشته شده به سیستم داده می‌شوند. الگوریتمهای کنترل همروندی، کاری با نوع تراکنشهای موجود در سیستم ندارند و محاسبات انحام شده در این تراکنشها تاثیری در روند این الگوریتمها ندارد. بر خلاف اینها این الگوریتمها تمام تصمیم گیری های خود را بر اساس داده هایی که این تراکنشها به آنها دسترسی پیدا می‌کنند انجام می‌دهند. دسترسی ها می‌توانند از نوع خواندن یا نوشتن باشند. فرض بر این است که محاسبات در تراکنشها کامل بوده و اگر تراکنش در یک پایگاه داده به تنهایی اجرا شود، پایگاه داده در حالت صحیح و مانا قرار گرفته و نتایج کاملا صحیحی در بر خواهد داشت. مجموعه منطقی خواندنی یک تراکنش مجموعه ای از آیتمهای داده ای است که تراکنش می‌خواند. این امر در شکل 3 نمایش داده شده است.

این فقط قسمتی از متن مقاله است . جهت دریافت کل متن مقاله ، لطفا آن را خریداری نمایید



خرید و دانلود دانلود مقاله کامل درباره الگوریتم (پایگاه داده ها)


دانلود پروژه درباره پایگاه داده ها(عملیاتی- تحلیلی)

دانلود پروژه درباره پایگاه داده ها(عملیاتی- تحلیلی)

لینک پرداخت و دانلود *پایین مطلب*
فرمت فایل:Word (قابل ویرایش و آماده پرینت)
تعداد صفحه: 65

 

پایگاه داده ها(عملیاتی- تحلیلی)

فصل اول

مقدمه

داده

داده (data) دارای تعاریف مختلفی است، به طور کلی داده ها کلمات و ارزش های واقعی هستند که از طریق مشاهده و تحقیق بدست می آیند، به عبارت دیگر داده نمودی از وقایع، معلومات، رخدادها، پدیده ها و مفاهیم می باشد.
در محاسبات، داده به اطلاعی گفته می شود که به شکلی مناسب برای انتقال و پردازش ترجمه شود. در کامپیوتر و رسانه های ارتباطاتی امروزی داده به شکل باینری تبدیل می شود. بنابراین داده یک نمایش باینری از یک موجودیت منطقی ذخیره شده در حافظه کامپیوتر است.
از نظر ساختاری داده به مقادیر صفت خاصه انواع موجودیت ها اتلاق می شود.
ریشه کلمه داده از عبارت لاتین datum گرفته شده که به معنی اطلاع است. و data فرم جمع آن است. اما datum بندرت استفاده می شود و اکثرا ترجیح می دهند data را به صورت یک کلمه مفرد استفاده کنند.

اطلاع

اطلاع (information) مفهومی است که برای گیرنده آن قابل درک بوده و با دانستن آن می تواند برای حل یک مسئله تصمیم گیری یا ارزیابی کند.
وقتی اطلاع وارد کامپیوتر شده ذخیره می گردد به داده تبدیل می شود. بعد از پردازش، داده خروجی مجددا به عنوان اطلاع دریافت می شود.
وقتی اسم صفت خاصه و مقدار منسوب به آن در دست باشند اطلاعی در مورد موجودیت حاصل می شود.
هنگامیکه اطلاعات در یک بسته خاص قرار می گیرند و برای درک موضوعی یا انجام کاری استفاده می شود به دانش (knowledge) تبدیل می شود.

موجودیت

موجودیت (entity) مفهوم کلی پدیده، شیء یا فردی است که در مورد آن می خواهیم اطلاع داشته باشیم و در کامپیوتر ذخیره کنیم.
هر نوع موجودیت دارای مجموعه ای از صفات خاصه (attribute) است که ویژگی جداکننده یک نوع موجودیت از نوع دیگر محسوب می شود.
مثال. اگر در نظر داریم یک سیستم پایگاه داده برای یک دبیرستان پیاده سازی کنیم مواردی چون دانش آموزان، دبیران، دروس، کلاس ها و غیره جزء موجودیت های سیستم به شمار می روند.
مثال. موجودیت دانشجو در سیستم دانشگاه می تواند دارای صفات خاصه: نام، نام خاوادگی، سن، سال تولد، رشته تحصیلی، سال ورود و ... باشد و یا موجودیت درس صفات خاصه: کد درس، نام درس و تعداد واحد ‎

 

پایگاه داده

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

ویژگی های داده در پایگاه داده

ویژگی هائی که داده در پایگاه داده باید داشته باشند در لیست زیر آمده است:

اشتراکی شدن (shared) داده در پایگاه داده بین چندین کاربر و برنامه کاربردی به اشتراک گذاشته می شود. ماندگاری(persistence) وقتی داده در پایگاه داده ذخیره شد پایدار است و از بین نمی رود، مگر آنکه توسط سیستم پایگاه داده تغییر کند. امنیت (security) داده در پایگاه داده از فاش شدن، تغییر و تخریب بدون مجوز محافظت می شود. مدیر سیستم توسط سطوح دسترسی و قیدهای امنیتی نحوه دستیابی به داده را تعریف می کند و اطمینان می دهد که دستیابی از طریق مناسب انجام می شود. اعتبار (validity) یا جامعیت (integrity) و یا صحت(correctness) به درستی داده در پایگاه داده نسبت به موجودیت دنیای واقعی معتبر اشاره دارد. مثلا موجودی بانک نباید منفی باشد. سازگاری (consistency) داده در پایگاه داده با مقدار واقعی داده در دنیای خارج سازگار است. وقتی یک فقره اطلاع در بیش از یک نقطه ذخیره شود و لازم باشد بهنگام شود، اگر بهنگام سازی در همه نقاط انجام نشود ناسازگاری ایجاد می شود. کاهش افزونگی (non redundancy) داده در پایگاه داده دارای حداقل افزونگی است. افزونگی به این معناست که هیچ دو فقره داده در بانک معرف یک موجودیت در دنیای خارج نباشد. استقلال (independence) تغییردر نمایش فیزیکی، تکنیک های دستیابی و سازماندهی داده تاثیری روی برنامه های کاربردی ندارد.

روش های ذخیره داده

دو روش کلی برای ذخیره و بازیابی خودکار داده ها وجود دارد: سیستم فایلی ساده و سیستم پایگاه داده

 

 

سیستم فایلی (file system)

در این روش، داده ها در فایل های مجزا قرار گرفته و سیستم های جداگانه ای به نام سیستم پردازش فایل برای استفاده از فایل های داده ای طراحی می شوند. در این سیستم ها هر برنامه ی کاربردی تنها به فایل داده ای مربوط به خود می تواند مراجعه می کند.
اشکالات چنین طراحی در ذخیره داده به طور خلاصه عبارتند:
1. افزونگی و ناسازگاری داده به دلیل چندین فرمت فایل و تکرار اطلاعات در فایلهای مختلف.
2. مشکل در دستیابی داده و نیاز به نوشتن برنامه جدیدی برای انجام هر کار
3. قیدهای جامعیت به جای اینکه صریحا بیان شوند در کدبرنامه از نظر پنهان می شد. اضافه کردن قیدهای جدید یا تغییر قیدهای موجود به سختی صورت می گیرد.
4. ایجاد ناسازگاری به دلیل وجود چندین کپی از فقره های داده
5. مشکلات امنیتی به دلیل دسترسی همروند و بدون کنترل توسط چند کاربر

سیستم پایگاه داده (database system)

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

عناصر اصلی سیستم پایگاه داده

اجزاء اصلی سیستم بانک اطلاعاتی عبارتند از:

داده ها شامل داده هائی درباره موجودیت های مختلف محیط و ارتباط بین موجودیت ها. سخت افزار شامل عناصر پردازشی، رسانه های ذخیره سازی داده، دستگاه های جانبی، سخت افزارهای ارتباطی و غیره. نرم افزار شامل سیستم عامل و نرم افزارهای ارتباطی شبکه، نرم افزار سیستم مدیریت پایگاه داده و برنامه های کاربردی. رویه های عملیاتی شامل کلیه عملیاتی که روی پایگاه داده انجام می شود، نظیر تهیه پشتیبان، آمارگیری و ... کاربر شامل کاربران یا کسانی که به نحوی با سیستم در ارتباط هستند نظیر مدیرپایگاه داده(DBA)، طراحان پایگاه داده (DBD)، برنامه نویسان پایگاه داده (DBP) و کاربران نهائی(end users).

مزایا و معایب سیستم های پایگاه داده

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

تجمع، وحدت ذخیره سازی و کنترل متمرکز داده ها
2. کاهش افزونگی. تجمع داده و وحدت ذخیره سازی باعث کاهش افزونگی می شود. مثلا آدرس های مختلف برای یک مشتری در قسمت های مختلف اداره ثبت نمی شود.
3. به اشتراک گذاشتن داده ها. چند کاربر می توانند در هم زمان به پایگاه داده دسترسی داشته باشند. برنامه های کاربردی موجود قادر به اشتراک گذاردن داده ها در پایگاه داده بوده و برنامه های کاربردی جدید نیز می توانند از این داده ها استفاده کنند.
4. پرهیز از ناسازگاری. با کاهش افزونگی، کنترل متمرکز و جامعیت، سازگاری و یکپارچگی داده ها تضمین می شود.
5. اعمال محدودیت های امنیتی. سیستم های امنیتی در پایگاه داده امکان اعمال کنترل های مختلف را برای هر نوع دسترسی (‌ بازیابی،اصلاح، حذف و غیره) بر روی پایگاه داده فراهم می کند.
6. صحت بیشتر داده و استقلال از برنامه های کاربردی
7. راحتی پیاده سازی برنامه های کاربردی جدید

 

معایب سیستم پایگاه داده

طراحی سیستم های پایگاه داده پیچیده تر، دشوارتر و زمان برتر است.
2. هزینه قابل توجهی صرف سخت افزار و نصب نرم افزار می شود.
3. آسیب دیدن پایگاه داده روی کلیه برنامه های کاربردی تاثیر می گذارد.
4. هزینه زیاد برای تبدیل از سیستم فایلی به سیستم پایگاه داده نیاز است.
5. نیازمند تعلیم اولیه برنامه نویسان و کاربران و استخدام کارمندان خاص پایگاه داده است.
6. نیاز به تهیه چندین کپی پشتیبان از پایگاه داده می باشد.
7. خطاهای برنامه می توانند فاجعه برانگیز باشند.
8. زمان اجرای هر برنامه طولانی تر می شود.
9. بسیاروابسته به عملیات سیستم مدیریت پایگاه داده است.

نسل اول (1957-1948) : فایل ترتیبی

رسانه خارجی در این نسل نوارهای مغناطیسی بوده اند. این نسل را می توان نسل بدون نرم افزار واسط نامید. مشخصات کلی این نسل عبارتند از:
• ساختار فایل ها ترتیبی است
• ساختار فیزیکی همان ساختار منطقی فایل است
• تنها روش پردازش فایل ها پردازش یکجا (batch processing) است
• برنامه کاربردی تمام عملیات ورودی/خروجی را انجام می دهد و نرم افزار واسطی برای مدیریت پردازش فایل ها وجود ندارد
• طراحی ساختار فیزیکی به عهده کاربر است
• تغییر در ساختار داده منجر به تغییر در برنامه کاربردی می شود
• افزونگی داده حداکثر است
• اشتراک داده مطرح نیست
• نسخه های متعدد از فایل هنگام بهنگام سازی ایجاد می شود

نسل دوم (1966-1958) : شیوه های دسترسی

مهمترین ویژگی این نسل پیدایش نرم افزارهای AM )accessmethod) یا شیوه های دسترسی و همچنین ایجاد رسانه های با دسترسی مستقیم مانند دیسک است.
AM نرم افزاری است که مبتنی بر یک استراتژی دستیابی، به جنبه های فیزیکی محیط ذخیره سازی و عملیات آن می پردازد و جنبه های فیزیکی را تا حدی از دید کاربر مخفی می کند. و برنامه کاربردی دیگر نیازی به پرداختن به آنها ندارد. مشخصات این نسل عبارتند از:
• نرم افزار واسط AM برای ایجاد فایل ها با ساختار گوناگون بین برنامه های کاربردی و محیط ذخیره سازی وجود دارد
• امکان دسترسی ترتیبی و مستقیم به رکورد وجود دارد
• پردازش در محیط های بلادرنگ (Real Time)، برخط (On-Line) و یکجا بسته به نوع سیستم عامل می توانند انجام شوند
• ساختار فیزیکی و منطقی فایل از هم جدا است ولی هنوز برنامه کابردی از محیط ذخیره سازی مستقل نیست
• امکان دسترسی بر اساس چندین کلید وجود ندارد
• روش های ایمنی و حفاظت داده ابتدائی وجود دارد
• داده ها برای کاربردهای خاص طراحی و ذخیره می شوند
• تکرار داده هنوز در حد نسبتا بالائی است
• اشتراک داده ها تا حدی ایجاد شده است

 

پایگاه داده های فصل دوم

پایگاه داده ها (2)

نسل سوم (1973-1967) : سیستم مدیریت داده

در این نسل نرم افزار کامل تری به نام سیستم مدیریت داده (Data Manegement System) به عنوان واسط بین برنامه کاربردی و محیط فیزیکی ایجاد شد.
DMS از AM استفاده می کند و ارتباط بین دید منطقی و فیزیکی را ایجاد می کند. برای بازیابی یک رکورد DMS از AM درخواست می کند و AM رکوردهای موردنظر را از بلاک های فایل بازیابی و در اختیار DMS قرار می دهد تا کل رکورد را به برنامه بدهد
• نرم افزار DMS واسط برنامه کاربردی و داده است.
• فایل های منطقی متعددی می توانند از داده های فیزیکی مشترک بهره ببرند
• میزان تکرار داده کاهش یافته است
• داده های مشترک در کاربردهای متنوع بکار می روند
• صحت داده تا حدی تامین می شود
• نشانی دهی در سطح فیلد یا گروهی از فیلدها ممکن است
• بازیابی بر کمک چند کلید امکان پذیر است
• تسهیلاتی برای پردازش فایل پیش بینی شده است
• ترکیبی از انواع ساختارهای فایل بکار می رود

نسل چهارم(1980-1974): سیستم مدیریت پایگاه داده

این نسل از اواخر دهه 60 شروع شده و هنوز هم ادامه دارد. مهمترین ویژگی آن استقلال داده ای است. نرم افزار پیچیده ای به نام سیستم مدیریت پایگاه داده(DataBase Management System) یا DBMS واسط بین برنامه های کاربردی و محیط فیزیکی است و اجازه می دهد کاربران در یک محیط انتزاعی کار کنند و به داده ها دسترسی پیدا کنند.
• نرم افزار پیچیده و جامع DBMS واسط بین برنامه های کاربردی و محیط فیزیکی است
• برنامه های کاربردی از جنبه های فیزکی مستقل هستند
• کاربران در یک محیط انتزاعی مبتنی بر یک ساختار داده ای کار می کنند
• سرعت دستیابی به داده بالا است
• امکان استفاده اشتراکی از داده ها وجود دارد
• امکان کنترل متمرکز روی کلیه داد های عملیاتی
• ایمنی داده زیاد است
• افزونگی کاهش پیدا کرده است
• مفهوم چند سطحی بودن معماری (داخلی، خارجی، ادراکی) بسط پیدا کرد
• سیستم های پایگاه داده توزیع شده طراحی شده اند

این فقط قسمتی از متن پروژه است . جهت دریافت کل متن پروژه ، لطفا آن را خریداری نمایید



خرید و دانلود دانلود پروژه درباره پایگاه داده ها(عملیاتی- تحلیلی)


دانلود مقاله کامل درباره پایگاه داده ها(عملیاتی- تحلیلی)

دانلود مقاله کامل درباره پایگاه داده ها(عملیاتی- تحلیلی)

لینک پرداخت و دانلود *پایین مطلب*
فرمت فایل:Word (قابل ویرایش و آماده پرینت)
تعداد صفحه: 65

 

پایگاه داده ها(عملیاتی- تحلیلی)

فصل اول

مقدمه

داده

داده (data) دارای تعاریف مختلفی است، به طور کلی داده ها کلمات و ارزش های واقعی هستند که از طریق مشاهده و تحقیق بدست می آیند، به عبارت دیگر داده نمودی از وقایع، معلومات، رخدادها، پدیده ها و مفاهیم می باشد.
در محاسبات، داده به اطلاعی گفته می شود که به شکلی مناسب برای انتقال و پردازش ترجمه شود. در کامپیوتر و رسانه های ارتباطاتی امروزی داده به شکل باینری تبدیل می شود. بنابراین داده یک نمایش باینری از یک موجودیت منطقی ذخیره شده در حافظه کامپیوتر است.
از نظر ساختاری داده به مقادیر صفت خاصه انواع موجودیت ها اتلاق می شود.
ریشه کلمه داده از عبارت لاتین datum گرفته شده که به معنی اطلاع است. و data فرم جمع آن است. اما datum بندرت استفاده می شود و اکثرا ترجیح می دهند data را به صورت یک کلمه مفرد استفاده کنند.

اطلاع

اطلاع (information) مفهومی است که برای گیرنده آن قابل درک بوده و با دانستن آن می تواند برای حل یک مسئله تصمیم گیری یا ارزیابی کند.
وقتی اطلاع وارد کامپیوتر شده ذخیره می گردد به داده تبدیل می شود. بعد از پردازش، داده خروجی مجددا به عنوان اطلاع دریافت می شود.
وقتی اسم صفت خاصه و مقدار منسوب به آن در دست باشند اطلاعی در مورد موجودیت حاصل می شود.
هنگامیکه اطلاعات در یک بسته خاص قرار می گیرند و برای درک موضوعی یا انجام کاری استفاده می شود به دانش (knowledge) تبدیل می شود.

موجودیت

موجودیت (entity) مفهوم کلی پدیده، شیء یا فردی است که در مورد آن می خواهیم اطلاع داشته باشیم و در کامپیوتر ذخیره کنیم.
هر نوع موجودیت دارای مجموعه ای از صفات خاصه (attribute) است که ویژگی جداکننده یک نوع موجودیت از نوع دیگر محسوب می شود.
مثال. اگر در نظر داریم یک سیستم پایگاه داده برای یک دبیرستان پیاده سازی کنیم مواردی چون دانش آموزان، دبیران، دروس، کلاس ها و غیره جزء موجودیت های سیستم به شمار می روند.
مثال. موجودیت دانشجو در سیستم دانشگاه می تواند دارای صفات خاصه: نام، نام خاوادگی، سن، سال تولد، رشته تحصیلی، سال ورود و ... باشد و یا موجودیت درس صفات خاصه: کد درس، نام درس و تعداد واحد ‎

 

پایگاه داده

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

ویژگی های داده در پایگاه داده

ویژگی هائی که داده در پایگاه داده باید داشته باشند در لیست زیر آمده است:

اشتراکی شدن (shared) داده در پایگاه داده بین چندین کاربر و برنامه کاربردی به اشتراک گذاشته می شود. ماندگاری(persistence) وقتی داده در پایگاه داده ذخیره شد پایدار است و از بین نمی رود، مگر آنکه توسط سیستم پایگاه داده تغییر کند. امنیت (security) داده در پایگاه داده از فاش شدن، تغییر و تخریب بدون مجوز محافظت می شود. مدیر سیستم توسط سطوح دسترسی و قیدهای امنیتی نحوه دستیابی به داده را تعریف می کند و اطمینان می دهد که دستیابی از طریق مناسب انجام می شود. اعتبار (validity) یا جامعیت (integrity) و یا صحت(correctness) به درستی داده در پایگاه داده نسبت به موجودیت دنیای واقعی معتبر اشاره دارد. مثلا موجودی بانک نباید منفی باشد. سازگاری (consistency) داده در پایگاه داده با مقدار واقعی داده در دنیای خارج سازگار است. وقتی یک فقره اطلاع در بیش از یک نقطه ذخیره شود و لازم باشد بهنگام شود، اگر بهنگام سازی در همه نقاط انجام نشود ناسازگاری ایجاد می شود. کاهش افزونگی (non redundancy) داده در پایگاه داده دارای حداقل افزونگی است. افزونگی به این معناست که هیچ دو فقره داده در بانک معرف یک موجودیت در دنیای خارج نباشد. استقلال (independence) تغییردر نمایش فیزیکی، تکنیک های دستیابی و سازماندهی داده تاثیری روی برنامه های کاربردی ندارد.

روش های ذخیره داده

دو روش کلی برای ذخیره و بازیابی خودکار داده ها وجود دارد: سیستم فایلی ساده و سیستم پایگاه داده

 

 

سیستم فایلی (file system)

در این روش، داده ها در فایل های مجزا قرار گرفته و سیستم های جداگانه ای به نام سیستم پردازش فایل برای استفاده از فایل های داده ای طراحی می شوند. در این سیستم ها هر برنامه ی کاربردی تنها به فایل داده ای مربوط به خود می تواند مراجعه می کند.
اشکالات چنین طراحی در ذخیره داده به طور خلاصه عبارتند:
1. افزونگی و ناسازگاری داده به دلیل چندین فرمت فایل و تکرار اطلاعات در فایلهای مختلف.
2. مشکل در دستیابی داده و نیاز به نوشتن برنامه جدیدی برای انجام هر کار
3. قیدهای جامعیت به جای اینکه صریحا بیان شوند در کدبرنامه از نظر پنهان می شد. اضافه کردن قیدهای جدید یا تغییر قیدهای موجود به سختی صورت می گیرد.
4. ایجاد ناسازگاری به دلیل وجود چندین کپی از فقره های داده
5. مشکلات امنیتی به دلیل دسترسی همروند و بدون کنترل توسط چند کاربر

سیستم پایگاه داده (database system)

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

عناصر اصلی سیستم پایگاه داده

اجزاء اصلی سیستم بانک اطلاعاتی عبارتند از:

داده ها شامل داده هائی درباره موجودیت های مختلف محیط و ارتباط بین موجودیت ها. سخت افزار شامل عناصر پردازشی، رسانه های ذخیره سازی داده، دستگاه های جانبی، سخت افزارهای ارتباطی و غیره. نرم افزار شامل سیستم عامل و نرم افزارهای ارتباطی شبکه، نرم افزار سیستم مدیریت پایگاه داده و برنامه های کاربردی. رویه های عملیاتی شامل کلیه عملیاتی که روی پایگاه داده انجام می شود، نظیر تهیه پشتیبان، آمارگیری و ... کاربر شامل کاربران یا کسانی که به نحوی با سیستم در ارتباط هستند نظیر مدیرپایگاه داده(DBA)، طراحان پایگاه داده (DBD)، برنامه نویسان پایگاه داده (DBP) و کاربران نهائی(end users).

مزایا و معایب سیستم های پایگاه داده

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

تجمع، وحدت ذخیره سازی و کنترل متمرکز داده ها
2. کاهش افزونگی. تجمع داده و وحدت ذخیره سازی باعث کاهش افزونگی می شود. مثلا آدرس های مختلف برای یک مشتری در قسمت های مختلف اداره ثبت نمی شود.
3. به اشتراک گذاشتن داده ها. چند کاربر می توانند در هم زمان به پایگاه داده دسترسی داشته باشند. برنامه های کاربردی موجود قادر به اشتراک گذاردن داده ها در پایگاه داده بوده و برنامه های کاربردی جدید نیز می توانند از این داده ها استفاده کنند.
4. پرهیز از ناسازگاری. با کاهش افزونگی، کنترل متمرکز و جامعیت، سازگاری و یکپارچگی داده ها تضمین می شود.
5. اعمال محدودیت های امنیتی. سیستم های امنیتی در پایگاه داده امکان اعمال کنترل های مختلف را برای هر نوع دسترسی (‌ بازیابی،اصلاح، حذف و غیره) بر روی پایگاه داده فراهم می کند.
6. صحت بیشتر داده و استقلال از برنامه های کاربردی
7. راحتی پیاده سازی برنامه های کاربردی جدید

 

معایب سیستم پایگاه داده

طراحی سیستم های پایگاه داده پیچیده تر، دشوارتر و زمان برتر است.
2. هزینه قابل توجهی صرف سخت افزار و نصب نرم افزار می شود.
3. آسیب دیدن پایگاه داده روی کلیه برنامه های کاربردی تاثیر می گذارد.
4. هزینه زیاد برای تبدیل از سیستم فایلی به سیستم پایگاه داده نیاز است.
5. نیازمند تعلیم اولیه برنامه نویسان و کاربران و استخدام کارمندان خاص پایگاه داده است.
6. نیاز به تهیه چندین کپی پشتیبان از پایگاه داده می باشد.
7. خطاهای برنامه می توانند فاجعه برانگیز باشند.
8. زمان اجرای هر برنامه طولانی تر می شود.
9. بسیاروابسته به عملیات سیستم مدیریت پایگاه داده است.

نسل اول (1957-1948) : فایل ترتیبی

رسانه خارجی در این نسل نوارهای مغناطیسی بوده اند. این نسل را می توان نسل بدون نرم افزار واسط نامید. مشخصات کلی این نسل عبارتند از:
• ساختار فایل ها ترتیبی است
• ساختار فیزیکی همان ساختار منطقی فایل است
• تنها روش پردازش فایل ها پردازش یکجا (batch processing) است
• برنامه کاربردی تمام عملیات ورودی/خروجی را انجام می دهد و نرم افزار واسطی برای مدیریت پردازش فایل ها وجود ندارد
• طراحی ساختار فیزیکی به عهده کاربر است
• تغییر در ساختار داده منجر به تغییر در برنامه کاربردی می شود
• افزونگی داده حداکثر است
• اشتراک داده مطرح نیست
• نسخه های متعدد از فایل هنگام بهنگام سازی ایجاد می شود

نسل دوم (1966-1958) : شیوه های دسترسی

مهمترین ویژگی این نسل پیدایش نرم افزارهای AM )accessmethod) یا شیوه های دسترسی و همچنین ایجاد رسانه های با دسترسی مستقیم مانند دیسک است.
AM نرم افزاری است که مبتنی بر یک استراتژی دستیابی، به جنبه های فیزیکی محیط ذخیره سازی و عملیات آن می پردازد و جنبه های فیزیکی را تا حدی از دید کاربر مخفی می کند. و برنامه کاربردی دیگر نیازی به پرداختن به آنها ندارد. مشخصات این نسل عبارتند از:
• نرم افزار واسط AM برای ایجاد فایل ها با ساختار گوناگون بین برنامه های کاربردی و محیط ذخیره سازی وجود دارد
• امکان دسترسی ترتیبی و مستقیم به رکورد وجود دارد
• پردازش در محیط های بلادرنگ (Real Time)، برخط (On-Line) و یکجا بسته به نوع سیستم عامل می توانند انجام شوند
• ساختار فیزیکی و منطقی فایل از هم جدا است ولی هنوز برنامه کابردی از محیط ذخیره سازی مستقل نیست
• امکان دسترسی بر اساس چندین کلید وجود ندارد
• روش های ایمنی و حفاظت داده ابتدائی وجود دارد
• داده ها برای کاربردهای خاص طراحی و ذخیره می شوند
• تکرار داده هنوز در حد نسبتا بالائی است
• اشتراک داده ها تا حدی ایجاد شده است

 

پایگاه داده های فصل دوم

پایگاه داده ها (2)

نسل سوم (1973-1967) : سیستم مدیریت داده

در این نسل نرم افزار کامل تری به نام سیستم مدیریت داده (Data Manegement System) به عنوان واسط بین برنامه کاربردی و محیط فیزیکی ایجاد شد.
DMS از AM استفاده می کند و ارتباط بین دید منطقی و فیزیکی را ایجاد می کند. برای بازیابی یک رکورد DMS از AM درخواست می کند و AM رکوردهای موردنظر را از بلاک های فایل بازیابی و در اختیار DMS قرار می دهد تا کل رکورد را به برنامه بدهد
• نرم افزار DMS واسط برنامه کاربردی و داده است.
• فایل های منطقی متعددی می توانند از داده های فیزیکی مشترک بهره ببرند
• میزان تکرار داده کاهش یافته است
• داده های مشترک در کاربردهای متنوع بکار می روند
• صحت داده تا حدی تامین می شود
• نشانی دهی در سطح فیلد یا گروهی از فیلدها ممکن است
• بازیابی بر کمک چند کلید امکان پذیر است
• تسهیلاتی برای پردازش فایل پیش بینی شده است
• ترکیبی از انواع ساختارهای فایل بکار می رود

نسل چهارم(1980-1974): سیستم مدیریت پایگاه داده

این نسل از اواخر دهه 60 شروع شده و هنوز هم ادامه دارد. مهمترین ویژگی آن استقلال داده ای است. نرم افزار پیچیده ای به نام سیستم مدیریت پایگاه داده(DataBase Management System) یا DBMS واسط بین برنامه های کاربردی و محیط فیزیکی است و اجازه می دهد کاربران در یک محیط انتزاعی کار کنند و به داده ها دسترسی پیدا کنند.
• نرم افزار پیچیده و جامع DBMS واسط بین برنامه های کاربردی و محیط فیزیکی است
• برنامه های کاربردی از جنبه های فیزکی مستقل هستند
• کاربران در یک محیط انتزاعی مبتنی بر یک ساختار داده ای کار می کنند
• سرعت دستیابی به داده بالا است
• امکان استفاده اشتراکی از داده ها وجود دارد
• امکان کنترل متمرکز روی کلیه داد های عملیاتی
• ایمنی داده زیاد است
• افزونگی کاهش پیدا کرده است
• مفهوم چند سطحی بودن معماری (داخلی، خارجی، ادراکی) بسط پیدا کرد
• سیستم های پایگاه داده توزیع شده طراحی شده اند

این فقط قسمتی از متن پروژه است . جهت دریافت کل متن پروژه ، لطفا آن را خریداری نمایید



خرید و دانلود دانلود مقاله کامل درباره پایگاه داده ها(عملیاتی- تحلیلی)