سیستم های OLAP نام خود را از عبارت (Online Analytical Process) با معنی "سیستم های پردازش تحلیلی برخط" گرفته اند. می توان به جای OLAP از واژه پردازش سریع اطلاعات چند بعدی و یا به عبارت بهتر از " فن آوری تحلیل داده ها" استفاده کرد. این سیستمها بر اساس تکامل سیستمهای OLTP به معنی پردازش آنلاین تراکنش ها ایجاد شده اند .تکنولوژیOLAP به طیف گستردهای از تکنیکها اطلاق میشود و از ابزارهای پشتیبانی کنندۀ تصمیم گیری میباشد. ابزارهای گزارش گیری و کوئری های سنتی، داراییها و اشیاء پایگاه داده را توصیف کرده و آنها را شرح میدهند. سیستم های OLAP برای ارائه پاسخهای سریع به سوالات و جستجوهای تحلیلی روی داده های "چند بعدی" طراحی شده اند . بطور معمول اگر بخواهیم مشابه همین پرس و جوهای تحلیلی را روی سیستم های اطلاعاتی عادی OLTP اجرا کنیم ممکن است نتایج در زمانی طولانی و غیرکاربردی بازگردانده شود در حالیکه استفاده از OLAP تضمین می کند که اطلاعات و گزارشات تحلیلی با زمان پاسخ مناسبی به کاربر تحویل داده شود.
اما همانطور که گفته شد تکنولوژیOLAP پاسخی جدید به مشکلات سیستمهای حمایت از تصمیمگیری است. باید در نظر داشت که OLAP یک تکنیک ساده نیست بلکه مجموعهای از مفاهیمی از قبیل سازمان پایگاه داده، نمایش داده و مدل کردن کوئری میباشد. تکنولوژی OLAP ابزارها و مفاهیمی را ارائه میکند که به وسیله آنها امکان انجام یک تحلیل موثر و دلخواه بر روی هر نوع دادهای فراهم میگردد.
کاربردهای معمول OLAP عبارتند از : گزارشات تجاری فروش، بازاریابی، گزارشات مالی و مواردی از این قبیل. این سیستم ها داده های خود را به نحوی خاص نگهداری می کنند که از نظر سرعت در برخورد با داده های چند بعدی بهتر از سیستمهای OLTP عمل می کنند و از این رو به آنها بانکهای اطلاعاتی سلسله مراتبی هم گفته میشود.
OLAP و پایگاه داده های مربوطه با استفاده از یک ساختار سلسله مراتبی و یک data model چندبعدی قدرتمند جهت سازماندهی اطلاعات به ساده سازی محاسبات پرداخته وگزارشاتی بسیار سریعتر نسبت به روش های قبلی ارائه می دهند.
بانکهای اطلاعاتی به کار رفته در OLAP که Datawarehouse یا انبار داده ها نامیده می شوند متشکل از مکعبهای اطلاعاتی چند بعدی بوده که امکان آنالیز سریع اطلاعات پایگاه داده های مختلف را فراهم میآورند. بعنوان مثال یک پایگاه داده چند بعدی می تواند فروش کل سالیانه را با ماه فروش ، تعداد مشتری و قیمت متقاطع سازد. حاصل این تقاطع این است که گزارشات بسیار متنوعی مثل مجموع فروش در ماه خاص یا بهترین قیمت و مشتری سال و ... از سیستم به راحتی قابل استخراج است.
در محصولات Business Intelligence (BI) داده کاوی یک جزء اساسی است که توانایی زیادی در تحلیل دادهها و یافتن الگوهای پنهان به صورت خودکار و نیمه خودکار دارند. در دههای گذشته حجم دادههای انباشته شده و ذخیره شده در پایگاههای داده بسیار بالا رفته است. اغلب این دادهها از برنامههای تجاری همچون برنامههای مالی، منابع مدیریت سرمایه گذاری، مدیریت ارتباط با مشتری و صفحات وب به دست آمده است.
نتیجه این انباشتگی ، غنی بودن سازمانها از داده و ضعف در کسب دانش میباشد. از طرفی سرعت افزایش دادهها روز به روز در حال گسترش میباشد در حالی که استفاده درست از این دادههای رو به افزایش، بسیار محدود است. هدف از داده کاوی استخراج الگوهای مناسب از دادههای موجود، گسترش ارزش واقعی و تبدیل دادهها به دانش است.
یک مثال ساده:
جدولی شامل لیستی از فارغالتحصیلان در یک دبیرستان را در نظر بگیرید. فیلدهای این جدول شامل اطلاعاتی در مورد جنسیت، ضریب هوشی، سطح تشویق و ترغیب والدین و درآمد والدین برای دانش آموزانی که قصد ورود به دانشگاه را دارند میباشد.
در اینجا سوالی مطرح میشود: کدام دسته از دانش آموزان به دانشگاه خواهند رفت؟
امکان دارد برای پاسخ به این سوال یک پرس و جو بنویسید که در آن تعداد دانش آموزان دختر و تعداد دانش آموزان پسر را به شما بدهد و همچنین ممکن است پرس و جوی دیگری بنویسید که در آن والدین ترغیب کننده دانش آموزان را بیابید. اما در مورد دانش آموزان پسر چطور؟ آیا آنها توسط والدین ترغیب میشوند؟ یا همینطور دانش آموزان دختر، آیا دختران توسط والدین خود تشویق نمیشوند؟
برای مشخص کردن تمام احتمالات و پوشش همه آنها باید صدها عدد از این قبیل پرس و جویها نوشت. برای دادههای عددی مانند درآمد والدین و ضریب هوشی، تحلیلها بسیار پیچیدهتر و مشکلتر خواهد شد. اگر در جدول صدها ستون وجود داشت چطور؟
میبایست با استفاده از پرس و جوهای SQL به سرعت دادهها را مدیریت کنید که بدیهی است این امر غیر ممکن میباشد. اما در مقابل داده کاوی رویکردی کاملاً متفاوت و ساده به این سوال دارد.
تحقیقات انجام گرفته نشان از آن دارد که امروزه سازمانها، کمتر از یک درصد از دادههایشان را برای تحلیل استفاده مینمایند. به عبارت دیگر امروزه سازمانها در اطلاعات غرق شدهاند در حالی که گرسنه دانش هستند چرا که سازمانها دادههای زیادی را در تصرف خود دارند در حالی که هنوز با فقدان دانش پنهان درون دادهها مواجه هستند. در دادهکاوی روشهایی برای کشف روابط بکار برده میشود و به کمک الگوریتمهایی روابط چند بعدی بین دادهها تشخیص داده شده و آنهایی که یکتا هستند شناسایی میشوند. در واقع ابزار دادهکاوی، داده را میگیرد و یک تصویر از واقعیت به شکل مدل میسازد، این مدل روابط موجود در دادهها را شرح میدهد. به طور کلی کاوش دادهها به معنی کنکاش دادههای موجود در پایگاه داده و انجام تحلیلهای مختلف بر روی آنها به منظور استخراج اطلاعات میباشد. و در نهایت میتوان بیان نمود که دادهکاوی، پروسه اکتشافِ با معنای ارتباط موجود میان دادهها میباشد.
OLAP و Data Mining دو راهکاری هستند که در SSAS برای مدیرت داده ها و کشف دانش معرفی شده است. در اینجا به معرفی اجمالی داده کاوی(DataMining) می پردازیم.
دادهکاوی علمی نوین و جذاب برای کشف دانش از داده ها می باشد. با توجه به رقابتی شدن بازار و تلاش سازمان ها برای رقابت و بدست آوردن درآمد بیشتر، استفاده از دادهکاوی امری مهم تلقی می شود. استفاده از داده های پیشین و نتیجه گرفتن از آن ها جهت بهبود عملکرد آینده، یکی از ایدهآلترین روش ها برای کمک به سازمان ها میباشد. از سوی دیگر با توجه به قابلیت حضور دادهکاوی در تمام عرصهها و همچنین وجود بنیان قوی علوم آمار، کامپیوتر، هوش مصنوعی و الگوشناسی در نهان دادهکاوی موجب فراگیر شدن این دانش در تمامی سطوح گردیده است.
دادهکاوی عملی بسیار ظریف بوده که اگر در آن تحلیل دادهها بصورت دقیق انجام نگیرد، ممکن است باعث استدلال نادرست گردد. از طرفی الگوریتم های دادهکاوی نیز پیچیدگی زیادی دارند، خوشبختانه نرم افزارSQL Server Business Intelligence Development Studio سبب گردیده که از پیچیدگی محتوای الگوریتمهای دادهکاوی دور گردیم و با خیالی آسوده عملیات دادهکاوی را انجام دهیم.
در پستهای بعدی با برخی از این الگوریتمها آشنا خواهید شد.
متاسفانه در این چند سالی که با هوش تجاری آشنا شدم، هیچ سایت یا وبلاگ فارسی زبانی که بتواند در این زمینه اطلاعات فنی و دقیقی را جهت آموزش و پیاده سازی به علاقهمندان این بحث ارائه دهد، نیافتم. از این رو به فکر ایجاد این وبلاگ افتادم تا شاید بتوانم تجربیات ناچیز خود را در اختیار دیگران قرار دهم.
پیش از هر چیز لازم میدانم در مورد مطالب وبلاگ که در آینده به روز خواهد شد، نکاتی را ذکر نمایم.
۱- در این وبلاگ سعی خواهد شد مطالبی از ETL, Data Warehouse انبار داده , SSIS,SQL
SSAS(OLAP & Data Mining) و هر آنچه که ممکن است برای تحلیل، طراحی و پیاده سازی یک پروژهی هوشمندی کسب و کار مورد استفاده قرار گیرد، منتشر شود.
۲- مطالب وبلاگ از تجربیات به دست آمده از پروژههای انجام شده، ترجمه مقالات و کتب خارجی میباشد.
۳- پیشاپیش بابت غلطهای املایی و نگارشی احتمالی پوزش بنده را بپذیرید!