CUBE چیست؟ و راه‏اندازی آن در SQL SERVER2008 چگونه است؟

/CUBE چیست؟ و راه‏اندازی آن در SQL SERVER2008 چگونه است؟
CUBE چیست؟ و راه‏اندازی آن در SQL SERVER2008 چگونه است؟۱۳۹۳-۵-۷ ۱۰:۴۲:۲۴ +۰۴:۳۰

بسمه تعالی

 

 

 

توسط: محمد جواد بهمنی

 

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

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

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

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

 

مکعبهای  OLAP با استفاده از data mode  جامع خودQuery های کارآمد و پر سرعتی را ارئه داده و جایگزین بهتری برای خلاصه سازی جداول هستند. محاسبات پیچیده می توانند براحتی درون این مکعبها قرارگرفته و باعث بهبود کیفیت تحلیل برنامه های کاربردی شوند.

مثلا یک مکعب OLAP می تواند شامل محاسبات مقایسه ای فروش سال جاری هر منطقه و خط تولید با همان زمان در سالهای قبل باشد. در واقع ساختار این مکعب ها برای بهینه چنین گزارشات و تحلیل هایی بهینه شده است.

 

عمده عملیات روی Database می تواند شامل  update،insert،delete و … باشد، اما Datawarehouse    که یک مکعب چند بعدی با صدها برابر گنجایش یک Database است و به عنوان اصلی ترین وظیفه اش به کاربر data ارائه می دهد ، می تواند اطلاعات را در قالبهای متنوع برای نیازهای مختلف نگهداری کند.

پرس و جوهای کاربران در روزهای مختلف غیر قابل پیش بینی هستند. به عنوان مثال شاید لازم شود فروش یک هفته را با همان هفته در چند سال پیش مقایسه کرد. با سیستمهای relational بهینه کردن چنین درخواست هایی بسیار مشکل است.برای برآوردن این نیاز Database وDBAها بصورت متناوب viewها و خلاصه جدول هایی را تولید می کنند. خروجی یک سیستم OLAP به صورت کلی یک ماتریس می‌باشد و ابعاد مختلف داده‌، ستونها و سطرهای ماتریس راتشکیل می‌هند.

تکنيکهای بسیاری جهت جمع آوری ، پالايش و آناليز داده ها نظير OLAP، Data Mart ، Warehousing  و Data Mining با هدف استخراج اطلاعات از رکوردهای عملياتی سازمان و نظم دهی آن به منظور انجام تحليل های مختلف وجود دارد.

 

 

 

 

نحوه عملکرد سيستم های OLAP  :

 

سيستم OLAP به صورت مرتب از داده های منابع اطلاعاتی مختلف کپی های خلاصه شده برداشته و آنها را در مکعبهای داده ای (Cube) مرتب می کند. پرس و جوهای کاربران می تواند روی اين مکعب اجرا شود . روش هاي مختلف طراحي انبار داده ها امكان پردازشهای بهینه را بر روي مقادیر زیادی ازداده ها فراهم مي آورند. پرس و جوهای پيچيده روی سيستم های OLAP به زمانی حدود تنها 0.1 درصد از زمان اجرای جستجوهای مشابه روی سيستم‌های OLTP احتياج دارند.

انواع ويژه اي از الگوهاي پايگاه داده ها به نام ستاره ای یا دانه برفی براي طراحی انبار داده چند بعدی وجود دارد. در اين حالت، پايگاه داده ها از يك جدول مركزي و جداول چند بعدي تشكيل شده است روابط بین آنها کاملا مشخص است. برای دستيابی به سرعت بالا و زمان کوتاه ، سيستم هایOLAP   جداول اطلاعاتی خود را در آرايش های ستاره ای يا دانه برفی مرتب می کنند. ساختار OLAP مثل یک مکعب روبیک است که می توانید آنرا در جهات مختلف بچرخانید تا بتوانید تحلیل هایی از دیدگاههای مختلف را بررسی کنید.

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

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

 

 

 

مکعب ها در پایگاه های SQL 2005 به بالا و همچنین Oracle 8 در دسترس هستند ، و در زمینه گزارش گیری کاربرد بسیاری دارند.

در زیر مراحل پیاده سازی CUBE از طریق Wizard نصب موجود در SQL Server business Intelligence Development Studio بیان می شود.

پس از نصب SQL Serve 2008 از منوی START ،SQL Serve business Intelligence Development Studio را اجرا می کنیم ، محیط این برنامه در شکل 1 نشان داده شده است.

شکل 1

پس از وارد شدن به برنامه اولین کاری که باید صورت بگیرد، ساخت یک پروژه جدید است، بدین منظور می توانیم از آیتم New Projet این عمل را انجام دهیم و یا می توانیم از منوی File گزینه New را انتخاب کنیم ، این عمل منجر به باز شدن پنجره شکل 2 خواهد شد.

شکل 2

در شکل 2 با انتخاب گزینه Analysis Service Project نام آن و همچنین مسیر ذخیره پروژه را مشخص می کنیم ، بعنوان مثال اسم پروژه CUBE practice قرار داده شده است.

پس از ساخت، همانطور که در سمت چپ شکل 3 دیده می شود نمایشExplorer  پروژه اجرا می گردد.

شکل 3

پس از ساخت پروژه تحلیل داده، نوبت به معرفی کردن یک پایگاه می رسد. بدین منظور بر روی Data source کلیک راست کرده و گزینه New data source.. را انتخاب می کنیم ،همانطور که در شکل 4 دیده می شود، Wizard مربوط به ایجاد پایگاه اجرا خواهد شد.

 

شکل 4

در صفحه Select how to define the connection اگر Data source موجود نباشد، باید از گزینه New یک پایگاه از پایگاه های موجود در Instance پایگاه داده مورد نظر را انتخاب نمایید، در شکل 5 پایگاه داده IODB مربوط به دستگاه های حضور و غیاب انتخاب شده است.

شکل 5

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

شکل 6

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

شکل7

پس از وارد کردن دیتا سورس نوبت به ساخت دیدهایی می شود که می خواهیم بر روی آنها مکعب تحلیل را پیاده سازی کنیم ، بدین منظور مطابق شکل 8 برروی data source views راست کلیک کرده و گزینه New را انتخاب می کنیم.

شکل 8

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

نظر، داریم انتخاب می کنیم ، با کلیک بر روری گزینه Add Related Table تمامی جداولی را کلید اصلی این جدول در آنها ، کلید خارجی است لیست شده خواهیم دید.

شکل 9

در انتها دید ساخته شده مطابق شکل 10 ارتباط بین جداول را نمایش می دهد، بنابراین از همین دید می توان ابعاد مکعب را حدس زده و یا پیش بینی کنید سوالات می تواند چند وجهی باشد(تنوع سوالات).

شکل 10

حال نوبت به ساختهCUBE می‏رسد، بدین منظور مانند دو فرآیند پیشین با راست کلیک کردن بر روی CUBE و سپس انتخاب NEW ، می توانیم وارد ویزارد نصب شویم.

در صفحه مربوط به Select Creation Method همانند شکل 11 با انتخاب گزینه اول بیان می کنیم که CUBE مورد نظر از جداول موجود که انتخاب شده اند طراحی گردد.

شکل 11

در صفحه بــعد ، اندازه گروه های CUBE انتــخاب می شوند، معمولا بصورت پیش فرض تمــامی گروه هــا انتخاب می شوند.

در اشکال 12 و 13 به ترتیب در این صفحات می توانیم measureها و همچنین Dimension ها (ابعاد) را مشخص نماییم .

شکل 12

شکل13

در مرحله پایانی ، می توانیم اسم ساختار مکعب را بدلخواه تغییر دهیم ، بطور پیش فرض اسم دید انتخاب شده هست، یک لیست کلی از تمامی آنچه تاکنون راه اندازی کرده ایم نمایش داده می شود با اتمام این مرحله ، ساختار CUBE به پایان رسیده و مانند شکل 14 ، CUBE ساخته شده نمایش داده می شود.

شکل 14

همانطور که در این مثال دیده می شود ، جدول اصلی (Fact Table) ،ghazaname هست و ابعاد آن sham , nahar, sobhane, nimeshab می باشد. در سمت چپ تصویر جداول مورد بررسی (اقدامات) و همچنین در پایین آن ابعاد نیز نمایش داده شده است. حال با توجه به نوع تحلیل می توانیم سوالات متفاوتی را از این CUBE به جواب برسانیم. در واقع می توانیم مانند یک مکعب روبیک آن را به این طرف و آن طرف بچرخانیم و به جوابهای مناسب برای سوالات مرتبط با این ابعاد دست یابیم.

ساختار CUBE دارای سربرگ های متفاوتی است که از جمله نمایش ماتریســی ابعاد و اطلاعـــات جــداول مرتبط می باشد ، در شکل 15 این سربرگ نشان داده شده است.

شکل 15

همچنین با انتخاب هر dimension می توان جدول آن بعد را مشاهده کرده و فیلد های مربوط به آن را ببینیم ، در این صورت جزییات هر بعد نشان داده خواهد شد، شکل 16 نمایش یکی از ابعاد (صبحانه) می باشد، در ساختار CUBE همانطور که در سمت چپ تصویر دیده می شود ،می توانیم فیلد Date را بمنظور ساخت کلید های temporal ایجاد نماییم.

شکل16

در پایان از قسمت Build باید پروژه را Deploy نماییم ، با این کار در دیتا بیس SQL Server 2008 پایگاه مربوط به CUBE مورد نظر ساخته خواهد شد.

 

پرداخت

1-پرداخت آنلاین
برای پرداخت آنلاین از لینک زیر استفاده کنید
پرداخت آنلاین
2- پرداخت آفلاین
برای پرداخت آفلاین مبلغ مورد نظر را به یکی از شماره کارت
6037997245888723بانک ملی