تریگر های فازی در پایگاه داده فعال
فـرمت: DOC
تعداد صفحات: ۱۰۰ صفحه
رشتــه : کامپیوتر
بصورت کامل ، مرتب ، قابل ویرایش و آماده چاپ میباشد.
توضیحات:
مقدمه
با ایجاد سیستمهای مدیریت پایگاه داده عمده مشکلات ساختار، پشتیبانی و مدیریت دادههای حجیم در سیستمهای فایلی برطرف شد اما توجهی به جنبههای رفتاری پایگاه داده نشد. به این معنا که با استفاده از قیود جامعیت شاید بتوان از منفی شدن مبلغ حقوق کارمندان جلوگیری نمود اما نمیتوان مانع از بیشتر شدن حقوق آنها از مدیرانشان شد. در چنین مواردی کاربران پایگاه داده با اجرای یک پرس و جو موارد نقض محدودیتهایی از این قبیل را پیدا نموده و خود اقدام به اصلاح آنها مینمایند.
مواردی این چنین و نیز گزارشات مدیریتی در آغاز ماه از جمله کارهای مشخص و دارای ضابطهای میباشند که انجام آنها تکراری و قابل تفویض به سیستم است.
کاربران غیرمجاز با استفاده از یک سری گزارشات، غیرمستقیم به اطلاعات کلیدی دست یافته و اقدام به تغییر آنها مینمایند. پیدا نمودن چنین تغییراتی که معمولاً بعد از گزارشات اتفاق میافتند، به راحتی امکانپذیر نیست. همانطور که مشاهده میشود در یک پایگاه داده معمولی ردیابی رویدادهایی که در سیستم اتفاق افتادهاند (رخدادها) نیز ممکن نبوده و نیاز به یک سیستم با پشتیبانی جنبههای رفتاری میباشد.
یک پایگاه داده فعال نظیر Oracle قادر به تشخیص رویدادهای نظیر اضافه، حذف و تغییر مقادیر در پایگاه داده میباشد. به عبارت دیگر این سیستمها با ایجاد تغییر در یک قلم داده عکسالعمل نشان میدهند.
پایگاه داده فعال با افزودن قوانین به پایگاههای داده امکان تعامل (کنش و واکنش) بین سیستم و پایگاه داده را ایجاد نمود. این نوع پایگاه داده دارای دو بخش مدیریت داده و مدیریت قوانین میباشد. بخش مدیریت داده مسئول حفظ خواص پایگاه داده در سیستمهای کاربردی بوده و بخش دوم با مدیریت قوانین مسئول واکنش به رویدادهای سیستم میباشد. در این نوع پایگاه داده طراحان سیستم قادرند با تعریف قوانین که نزدیکترین بیان به زبان طبیعی میباشد، سیستم را وادار به عکسالعمل مناسب در مقابل رویدادهای مهم نمایند [۱۳].
پایگاه داده فعال با استفاده از قوانین قادر به «پشتیبانی گستردهتر قیود جامعیت و سازگاری دادهها، واکنش در مقابل رخدادهای سیستم کاربردی، عدم اجرای تقاضاهای مشکوک، ردیابی رویدادها، گزارشات ماهانه و…» میباشد.
همانطور که گفته شد آنچه که به طور معمول باعث میشود یک پایگاه داده را فعال بدانیم، عکسالعمل سیستم در مقابل وضعیتهایی است که در پایگاه داده و یا حتی خارج از آن به وجود میآید. این وضعیتها میتواند شامل یک حذف غیرمجاز و یا تغییر وضعیت پایگاه داده باشد. باید توجه داشت که داشتن تعامل برای یک پایگاه داده لازم اما کافی نیست. بسیاری از سیستمهای پایگاه داده با رعایت اصول پایهای که در زیر به آن اشاره میشود به طور عام پایگاه داده فعال نامیده می شوند [۱۴].
اینگونه سیستمها باید یک پایگاه داده باشند، یعنی در صورتی که کاربر فراموش کرد، سیستم مورد نظر پایگاه داده فعال است بتواند از آن به عنوان یک پایگاه داده معمولی استفاده نماید (در صورت لزوم بتوان به عنوان یک پایگاه داده معمولی از آن استفاده نمود).
در اینگونه سیستمها باید امکان تعریف و مدیریت قوانین وجود داشته باشد. این قوانین در پایگاه داده فعال دارای سه جزء رویداد، شرط و واکنش میباشند.
این سیستمها باید دارای یک مدل اجرایی باشند. به این ترتیب که با بروز رویداد و صحت شرط، واکنش قانون اجرا شود. یک پایگاه داده فعال باید قادر به آشکارسازی رویدادها و بررسی شرط قوانین فعال و اجرای فرامین واکنش باشد.
علاوه بر موارد فوق، بهتر است در این سیستمها محیط مناسبی برای تعریف و امکان کامپایل کردن قوانین فراهم شود که به کاربر در تعریف قوانین کمک کند.
فازیسازی پایگاههای داده فعال با هدف نزدیکتر نمودن زبان بیان قوانین به زبان طبیعی طراحان مطرح شد. اغلب تقاضاهای کاربران پایگاه داده فعال، فازی میباشد. به عنوان نمونه در تقاضاهایی نظیر عدم تعلق پاداش به کارمندان «کمکار»، «افزایش» فشارخون، محاسبه حقوق کارمندان در «پایان» هر ماه و… از کلمات فازی استفاده شده است که عدم پشتیبانی مفاهیم فازی و به کار بردن مقادیر دقیق منجر به حصول نتایج نامطلوب در برخی سیستمهای کاربردی میشود.
تفاوت اصلی در فازیسازی پایگاه داده فعال با سایر سیستمهای فازی، در نوع تعریف قوانین میباشد. به این ترتیب که در تعریف قوانین در اینجا از سه جزء اصلی رویداد، شرط و واکنش استفاده میشود در صورتی که سیستمهای مبتنی بر قانون عموماً از دو جزء شرط و واکنش تشکیل شدهاند اما فازی نمودن شرط و واکنش قوانین در پایگاههای داده فعال تفاوت چندانی با شرط و واکنش فازی در سیستمهای مبتنی بر قانون ندارد و در فازی نمودن رویداد نیز میتوان از همان سیاق رویدادهای فازی استفاده نمود این بحث توسط ولسکی و بوازیز در [۷] مطرح شده است.
در این پایاننامه سعی شده است بحثهای مطرح شده در پایگاههای داده فعال فازی بطور خلاصه بررسی شود. همچنین در ادامه با معرفی عمل رونوشت برداری و بکارگیری قوانین فازی(تریگرهای فازی) در عمل رونوشت برداری روش بهبود یافته جدیدی معرفی می شود.
فهرست مطالب
بخش اول: مفاهیم و تعاریف، کارهای انجام شده
فصل اول: کلیات
۱-۱ مقدمه
۱-۲ مروری بر فصول پایاننامه
فصل دوم: پایگاه داده فعال
۲-۱ مدیریت داده
۲-۲ مدیریت قوانین
۲-۲-۱ تعریف قانون
رویداد
شرط
واکنش
۲-۲-۲ مدل اجرایی
اولویت اجرایی در قوانین
معماری پایگاه داده فعال
آشکارساز رویداد
ارزیابی شرط
زمانبندی
اجرا
۲-۳ نمونههای پیادهسازی شده
۲-۳-۱ Starburst
۲-۳-۲ Ariel
۲-۳-۳ NAOS
۲-۴ نتیجه
فصل سوم: مفاهیم فازی
۳-۱ مجموعههای فازی
۳-۲ عملگرهای فازی
۳-۳ استنتاج فازی
۳-۴ ابهامزدایی
۳-۵ نتیجه
فصل چهارم : پایگاه داده فعال فازی
۴-۱ تعریف فازی قوانین
۴-۱-۱ رویداد فازی
رویدادهای مرکب
انتخاب فازی اجزاء رویدادهای مرکب
۴-۱-۲ شرط فازی
۴-۱-۳ واکنش فازی
۴-۱-۴ تعیین فازی موقعیت زمانبندی
۴-۲ معماری و مدل اجرایی قوانین
۴-۲-۱ آشکارساز رویداد
۴-۲-۲ بررسی شرط
۴-۲-۳ اجرا
۴-۲-۴ زمانبندی
۴-۳ نتیجه
بخش دوم: کاربردی جدید از تریگر فازی، رونوشت برداری فازی، نتایج آزمایشات
فصل پنجم: رونوشت برداری فازی
۵-۱ رونوشت برداری
۵-۱-۱ رونوشت برداری همگام
۵-۱-۲ رونوشت برداری ناهمگام
۵-۱-۳ ماشین پایه رونوشت برداری داده
۵-۱-۴ مقایسه دو روش همگام و ناهمگام
۵-۲ رونوشت برداری فازی
۵-۲-۱ استفاده از تریگرها برای فازی نمودن رونوشت برداری
۵-۳ کمیت سنج های فازی
۵-۳-۱ روش محاسبه کمیت سنج های فازی
۵-۳-۲ کمیت سنج عمومی
۵-۳-۳ کمیت سنج جزئی
۵-۳-۴ کمیت سنج جزئی توسعه یافته
۵-۴ روش جدید محاسبه حد آستانه در تریگرهای فازی برای رونوشت برداری فازی
۵-۵ معماری ماشین رونوشت بردار فازی
۵-۶ مثال
۵-۷ کارایی
۵-۷-۱ ترافیک در رونوشت برداری مشتاق
۵-۷-۲ ترافیک در رونوشت برداری تنبل
۵-۷-۳ ترافیک در رونوشت برداری فازی
۵-۷-۴ مقایسه تئوری هزینه رونوشت برداری فازی و تنبل
۵-۸ جمع بندی
فصل ششم: پیاده سازی
۶-۱ Fuzzy SQL Server
۶-۲ عملکرد اجزای Fuzzy SQL Server
۶-۳ پیاده سازی تریگرهای فازی در پایگاه داده غیر فازی
۶-۴ اجزاء تریگر فازی در پایگاه داده غیر فازی
۶-۵ جداول سیستمی مورد نیاز
۶-۶ مثال
۶-۷ کارهای آتی
مراجع و منابع
واژه نامه لاتین
واژه نامه فارسی