لینک دانلود و خرید پایین توضیحات
دسته بندی : وورد
نوع فایل : .doc ( قابل ویرایش و آماده پرینت )
تعداد صفحه : 55 صفحه
قسمتی از متن .doc :
چکیده
پایگاههای دادة فعال با هدف ایجاد تعامل در پایگاههای داده ایجاد شدند. در این نوع پایگاه داده با تعریف قوانین و بدون نیاز به کدنویسی، سیستم قادر به عکسالعمل مناسب در مقابل رویدادهای مهم در شرایط خاص میباشد. تعریف قوانین سادهترین نوع بیان محدودیتها بوده که برای متخصصین محیط نیز قابل درک میباشد. اما در بیان تجربیات اغلب از کلمات فازی استفاده میشود که ترجمه آنها به مقادیر دقیق منجر به کاهش ارزش معنایی دانش میشود. فازیسازی پایگاههای داده فعال با هدف نزدیکتر نمودن زبان بیان قوانین به زبان طبیعی انسان مطرح شد. این امر کمک میکند دانش متخصصین، مستقیماً به پایگاه داده منتقل شود. ضمن اینکه تغییرات نیز با کمترین هزینه، بر قوانین تعریف شده اعمال میشود.
در اولین گام از فازیسازی پایگاههای دادة فعال ولسکی و بوازیز به فازی نمودن رویداد، شرط و واکنش در تعریف قوانین پرداختهاند و طی سه مقاله نتایج آن را ارائه نمودند، آنها در پروژه Tempo به پیادهسازی فازی این سه بخش پرداختهاند.
این پایاننامه به فازی نمودن سایر بخشهای پایگاههای دادة فعال میپردازد. این بخشها شامل رویدادهای مرکب، انتخاب فازی اجزاء رویدادهای مرکب، انتخاب فازی زمان بررسی شرط و اجرای واکنش قوانین میباشد. همچنین راهحلهایی برای دو مشکل پایانناپذیری اجرای قوانین و یکتایی پاسخ در پایگاههای دادة فعال فازی ارائه شده است.
فازی نمودن پایگاههای دادة فعال با هدف کاربردیتر نمودن پایگاههای داده مطرح شد. مدل اجرایی پایگاههای دادة فعال در بسیاری موارد نظیر زمان بررسی شرط و یا تعیین اولویت قوانین از پیش فرض سیستم استفاده مینماید. فازی نمودن این نوع پایگاه داده کمک میکند تا سیستم سیاستهای اجرایی پایگاه داده را در زمان اجرا و با استفاده از شدت وقوع رویدادها (به صورت معنایی و پویا) تعیین نماید.
در ادامة این پایاننامه یک معماری ساده از پایگاه دادة فعال ارائه میشود و در پایان با یک نمونة پیادهسازی شده از پایگاه دادة فعال فازی موارد پیشنهادی ارزیابی میگردد.
کلیدواژه: پایگاه دادة فعال، مفاهیم فازی، عدم قطعیت، سیستمهای محرک.
فصل اول: کلیات
1-1 مقدمه
با ایجاد سیستمهای مدیریت پایگاه داده عمده مشکلات ساختار، پشتیبانی و مدیریت دادههای حجیم در سیستمهای فایلی برطرف شد اما توجهی به جنبههای رفتاری پایگاه داده نشد. به این معنا که با استفاده از قیود جامعیت شاید بتوان از منفی شدن مبلغ حقوق کارمندان جلوگیری نمود اما نمیتوان مانع از بیشتر شدن حقوق آنها از مدیرانشان شد. در چنین مواردی کاربران پایگاه داده با اجرای یک پرس و جو موارد نقض محدودیتهایی از این قبیل را پیدا نموده و خود اقدام به اصلاح آنها مینمایند.
مواردی این چنین و نیز گزارشات مدیریتی در آغاز ماه از جمله کارهای مشخص و دارای ضابطهای میباشند که انجام آنها تکراری و قابل تفویض به سیستم است.
کاربران غیرمجاز با استفاده از یک سر گزارش، غیرمستقیم به اطلاعات کلیدی دست یافته و اقدام به تغییر آنها مینمایند. پیدا نمودن چنین تغییراتی که معمولاً بعد از گزارشات اتفاق میافتند، به راحتی امکانپذیر نیست. همانطور که مشاهده میشود در یک پایگاه داده معمولی ردیابی رویدادهایی که در سیستم اتفاق افتادهاند (رخدادها) نیز ممکن نبوده و نیاز به یک سیستم با پشتیبانی جنبههای رفتاری میباشد.
در گام اول برای فراهم کردن امکان تعامل پایگاه داده با کاربر سیستمهای محرک نظیر Oracle به وجود آمدند. اما این نوع سیستمها تنها قادر به تشخیص رویدادهای ساختاری نظیر اضافه، حذف و تغییر مقادیر در پایگاه داده میباشند. به عبارت دیگر این سیستمها با ایجاد تغییر در یک قلم داده عکسالعمل نشان میدهند و این برای کاربران پایگاه داده کافی نیست. برای این کاربران ممکن است رویدادهایی نظیر نخواندن حسابها در آغاز ماه و یا یک رویداد خارجی نظیر فشردن یک کلید نیز مهم باشد که در این موارد سیستمهای محرک، پاسخگو نیستند [2].
درگام بعد پایگاه دادة فعال با افزودن قوانین به پایگاههای داده امکان تعامل (کنش و واکنش) بین سیستم و پایگاه داده را ایجاد نمود. این نوع پایگاه داده دارای دو بخش مدیریت داده و مدیریت قوانین میباشد. بخش مدیریت داده مسئول حفظ خواص پایگاه داده در سیستمهای کاربردی بوده و بخش دوم با مدیریت قوانین مسئول واکنش به رویدادهای سیستم میباشد. در این نوع پایگاه داده طراحان سیستم قادرند با تعریف قوانین که نزدیکترین بیان به زبان طبیعی میباشد، سیستم را وادار به عکسالعمل مناسب در مقابل رویدادهای مهم نمایند [21].
پایگاه داده فعال با استفاده از قوانین قادر به «پشتیبانی گستردهتر قیود جامعیت و سازگاری دادهها، واکنش در مقابل رخدادهای سیستم کاربردی، عدم اجرای تقاضاهای مشکوک، ردیابی رویدادها، گزارشات ماهانه و...» میباشد.
لینک دانلود و خرید پایین توضیحات
فرمت فایل word و قابل ویرایش و پرینت
تعداد صفحات: 11
نوع دادة مجموعه
مجموعه ها : متغیرهای ساخت یافته ای هستند که حاوی لیستی از اعداد صحیح ، کارکترها و یا مقادیری از نوع شمارشی هستند. یک مجموعه شبیه آرایه أی است که می تواند گروهی از اعضای ساده را در خود جای دهد . البته اعضای یک مجموعه شبیه یک آرایه تعریف نمی شود.
تعریف مجموعه ها :
یک مجموعه یا متغیر مجموعه درست همانطور که انواع ساخت یافتة دیگر را تعریف می کنیم ، تعریف می شود .
تعاریف :
type
digitset = set of 0..9; (set type of integer elements)
var
odds,Evens,Middle,Mixed:Digitset: (4sets)
نوع مجموعه digitset و چهار متغیر Mixed,Middle,Evens,Odds را تعریف می کنند. هر متغیر مجموعه از نوع digitset می تواند حاوی اعداد صحیح 0 تا 9 باشد. اگرچه برای چهار مجموعه حافظه تخصیص داده می شود. ولی محتویات آنها نامعین است. برای اینکه بتوانیم با یک مجموع کار کنیم، باید آن را با استفاده از یک انتصاب مجموعه تعیین کنیم.
تعریف نوع مجموعه
شکل استفاده
type
set type= set of base type
مثال :
type
letter set = set of ‘A’ .. ‘z’ :
شرح : شناسة set type از روی مقادیر مشخص شده و در base type تعیین می شود. یک متغیر که از نوع set type تعریف می شود ، مجموعه أی است که اعضای آن از مقادیر base type انتخاب می شوند. البته base type باید از نوع ترتیبی باشد.
تذکر : در بیشتر پیاده سازی ها تعداد مقادیر base type از یک مجموعه محدود می شود. به همین دلیل می تواند set of char را به عنوان یک مجموعه تعیین کنید. با وجود این محدودیت نمی توانید از نوع داده Integer به عنوان یک base type استفاده کنید ، اما می توانید زیر بازه های از نوع Integer را تا 128 یا 256 مقدار به کار مقادیری را به دو متغیر مجموعه که در مثال فوق تعریف شده اند ، نسبت می دهد.
لیستی از مقادیر از نوع اصلی مجموعه هستند که در داخل دو کروشه محصور شده اند. بعد از این انتسابها مجموعة odds حاوی ارقام فرد 0 تا 9 است و مجموعة Evens حاوی ارقام زوج این بازه است. می توانیم از این دو مجموعه برای تعیین اینکه یک متغیر دارای ارقام فرد یا زوج است ، استفاده کنیم.
لیترال مجموعه أی [ ‘0’ '9’ ,’+’ ‘-‘ , ‘E’ ‘.’ ] مجموعه أی از کاراکترهاست که می توانند در یک عدد حقیقی وجود داشته باشند. این مجموعه حاوی 14 عضو است. در اینجا از نماد زیر بازه "0" .. "9" استفاده کرده ایم که بهتر از این است که 10 کاراکتر رقمی را به طور جداگانه بنویسیم.
لیترال مجموعه ای
شکل استفاده :
List of elements
[ ‘+’, ‘-‘ , ‘*’ , ‘/’ , ‘<’ , ‘>’ , ‘=’]
شرح : یک مجموعه به این صورت تعریف می شود که اعضای آن یعنی List of elements در دو کروشه محصور شوند. اعضای یک مجموعه باید از نوع ترتیبی یکسان باشند و یا از انواع ترتیبی سازگار باشد. کاماها اعضای List of elements را از هم جدا می کنند. گروهی از اعضا ممکن است با نماد زیر بازه مشخص شوند. (یعنی به صورت minavalue.maxvalue باشند که maxvalue , minvale عباراتی از نوع سازگار با هم هستند و minvalue کوچکتر یا مساوی maxvalue است.
انتساب مجموعه
شکل استفاده :
set var: = set expression
Uppercase:= [‘A’..’Z’] (set of uppercase letters)
شرح : متغیر set var به عنوان مجموعه تعیین می شود که اعضای آن توسط set expression مشخص می شوند. Set expression ممکن است به تناوب دستکاری دو یا چند مجموعه را با استفاده از عملگرهای مجموعه مشخص کند. نوع اصلیset var و set expression باید باهم سازگار باشند و همه اعضای set expression باید شامل نوع اصلی set var باشند.
مجموعة تهی و مجموعة مرجع
دو لفظ مجموعه ای خاص مجموعة تهی و مجموعة مرجع داریم. مجموعة تهی هیچ عضوی ندارد و با یک جفت کروشه یعنی [] مشخص می شود. برای ایجاد یک مجموعة تهی باید از انتساب به صورت زیر استفاده کرد :
Middle :=[ ]
مجموعه تهی با مجموعه نامعین فرق دارد. مجموعه نامعین مجموع أی است که تعریف شده ولی اعضای آن ناشناخته اند. یک مجموعه مرجع حاوی تمام مقادیر نوع اصلی برای یک نوع مجموعه خاص است.
مجموعه هایی با مقادیر نوع شمارشی
می توانیم مجموعه ها را با مقادیر انتخاب شده از نوع داده شمارشی خودمان نیز تعیین کنیم.
عملگرهای مجموعه
روی مجموعه ها ممکن است چندین عمل انجام شود. در این بخش یک عملگر جدید یعنی In را توضیح می دهیم و نشان می دهیم که چطور از عملگرهای مشابة
لینک دانلود و خرید پایین توضیحات
فرمت فایل word و قابل ویرایش و پرینت
تعداد صفحات: 15
نوع دادة مجموعه
مجموعه ها : متغیرهای ساخت یافته ای هستند که حاوی لیستی از اعداد صحیح ، کارکترها و یا مقادیری از نوع شمارشی هستند. یک مجموعه شبیه آرایه أی است که می تواند گروهی از اعضای ساده را در خود جای دهد . البته اعضای یک مجموعه شبیه یک آرایه تعریف نمی شود.
تعریف مجموعه ها :
یک مجموعه یا متغیر مجموعه درست همانطور که انواع ساخت یافتة دیگر را تعریف می کنیم ، تعریف می شود .
تعاریف :
type
digitset = set of 0..9; (set type of integer elements)
var
odds,Evens,Middle,Mixed:Digitset: (4sets)
نوع مجموعه digitset و چهار متغیر Mixed,Middle,Evens,Odds را تعریف می کنند. هر متغیر مجموعه از نوع digitset می تواند حاوی اعداد صحیح 0 تا 9 باشد. اگرچه برای چهار مجموعه حافظه تخصیص داده می شود. ولی محتویات آنها نامعین است. برای اینکه بتوانیم با یک مجموع کار کنیم، باید آن را با استفاده از یک انتصاب مجموعه تعیین کنیم.
تعریف نوع مجموعه
شکل استفاده
type
set type= set of base type
مثال :
type
letter set = set of ‘A’ .. ‘z’ :
شرح : شناسة set type از روی مقادیر مشخص شده و در base type تعیین می شود. یک متغیر که از نوع set type تعریف می شود ، مجموعه أی است که اعضای آن از مقادیر base type انتخاب می شوند. البته base type باید از نوع ترتیبی باشد.
تذکر : در بیشتر پیاده سازی ها تعداد مقادیر base type از یک مجموعه محدود می شود. به همین دلیل می تواند set of char را به عنوان یک مجموعه تعیین کنید. با وجود این محدودیت نمی توانید از نوع داده Integer به عنوان یک base type استفاده کنید ، اما می توانید زیر بازه های از نوع Integer را تا 128 یا 256 مقدار به کار مقادیری را به دو متغیر مجموعه که در مثال فوق تعریف شده اند ، نسبت می دهد.
لیستی از مقادیر از نوع اصلی مجموعه هستند که در داخل دو کروشه محصور شده اند. بعد از این انتسابها مجموعة odds حاوی ارقام فرد 0 تا 9 است و مجموعة Evens حاوی ارقام زوج این بازه است. می توانیم از این دو مجموعه برای تعیین اینکه یک متغیر دارای ارقام فرد یا زوج است ، استفاده کنیم.
لیترال مجموعه أی [ ‘0’ '9’ ,’+’ ‘-‘ , ‘E’ ‘.’ ] مجموعه أی از کاراکترهاست که می توانند در یک عدد حقیقی وجود داشته باشند. این مجموعه حاوی 14 عضو است. در اینجا از نماد زیر بازه "0" .. "9" استفاده کرده ایم که بهتر از این است که 10 کاراکتر رقمی را به طور جداگانه بنویسیم.
لیترال مجموعه ای
شکل استفاده :
List of elements
[ ‘+’, ‘-‘ , ‘*’ , ‘/’ , ‘<’ , ‘>’ , ‘=’]
شرح : یک مجموعه به این صورت تعریف می شود که اعضای آن یعنی List of elements در دو کروشه محصور شوند. اعضای یک مجموعه باید از نوع ترتیبی یکسان باشند و یا از انواع ترتیبی سازگار باشد. کاماها اعضای List of elements را از هم جدا می کنند. گروهی از اعضا ممکن است با نماد زیر بازه مشخص شوند. (یعنی به صورت minavalue.maxvalue باشند که maxvalue , minvale عباراتی از نوع سازگار با هم هستند و