انجام پایان نامه

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

سفارش پایان نامه

|

انجام پایان نامه ارشد

 پایان نامه 

سفارش پایان نامه|تحقیق رشته کامپیوتر - Olap چيست و چگونه كار مي‌كند



مقدمه :
امروزه پس از جمع آوري و بدست اوردن اطلاعات  ، تجزيه و تحليل داده ها ، يكي از مهمترين  كارهاي بانك هاي اطلاعاتي مي باشد . بر همين اساس اكنون يكي از مهمترين معيار تشخيص بانك اطلاعاتي برتر ، امكانات تجزيه و تحليل  داده ها در آن بانك مي باشد .
از جمله فناوريهاي  جديد  در جهت تحليل داده  ، سيستم Olap  مي باشد . Olap كه در چند سال اخير مطرح گشته است و هر ساله راه تكامل خود را طي مي نمايد يك قابليت وصف ناپذير در جهت بدست آوردن اطلاعات كامل تر و دقيق تر از داده هاي موجود در پايگاه داده ها  مي باشد .
درسالهاي گذشته و قبل از مطرح شدن عمليات Olap ، نگهداري اطلاعات گذشته يا انباركردن داده ها مطرح نبود  اما اكنون  جهت تحليل داده ها براي انجام عمليات Olap   نيازمند انبار كردن داده ها
مي باشيم .
جهت بررسي به عملكرد Olap ميتوان  به نرم افزار هاي پايگاه داده قدرتمند مانند  Sql Server  يا Oracle مراجعه نمود و با نحوه عمليات Olaping آشنا شد .
بر همين اساس از آنجا كه كار با Sql Server   راحت تر و در عموم بيشتر كاربرد دارد و همچنين آشنايي با آن نزد برنامه نويسان پايگاه داده بيشتر است ، بحث Olaping در اين مقاله در Sql server 2000 مطرح مي گردد .

تاريخچه    SQL SERVER :
 IBM در دهه  ۷۰ زباني  با نام  SEQUEL را خاص پرس و جو  (QUERY) از پايگاههاي داده ابداع کرد اين واژه معادل زبان پرس و جوي ساخت يافته مي باشد .
به مرور بخشهاي جديدي به اين زبان اضافه شد تا جاييکه ديگر نه تنها براي پرس و جو بلکه براي ساخت و مديريت پايگاههاي داده و موتور ايمني پايگاه داده نيز بکار مي رفت . IBM   اين زبان را به عموم عرضه کرد و پس از آن SQL ناميده شد .
موتور پايگاه داده امروزي ويرايش متعددي از SQL را بکار مي برند . ويرايش مورد استفاده  SQL SERVER  نيز   (T-SQL)   TRANSACT –SQL   نام دارد .
مايکروسافت در ابتدا SQL SERVER  را با همکاري SYBASE  براي اجرا در محيط OS/2 طراحي کرد ، هنگاميکه مايکروسافت و  IBM از هم جدا شدند ، مايکروسافت کار را با سيستم عامل جديد و شبکه خود تحت عنوان سرويس دهنده  پيشرفته ويندوز NT ادامه داد . در اين مقطع مايکروسافت تصميم گرفت  SQL SERVER   را شخصا براي محصول جديد خود NT  توسعه دهد. نام اين محصول جديد  SQL SERVER 4.2  بود که بعدها به 4.21 ارتقا يافت .
پس از جدا شدن مايکروسافت و SYBASE   ، شرکت اخير موتور پايگاه داده خود را براي اجرا بر روي ويندوز NT  توسعه داد . اين محصول (SYBASE ADAPTIVE SERVER  ENTERPRISE )   ناميده ميشود .و مايکروسافت ويرايش ٦ وسپس ٥/٦ را عرضه کرد . ويرايش ٧ اين محصول با قابليت اجرا در محيط هاي  NT  و ويندوز هاي   95 و 98 معرفي شد . در اين ويرايش تفکيک عمده اي نسبت به کد  SYSBASE  ايجاد شده است .
ويرايش هاي قبلي از اين نظر بسيار وابسته به SYBASE بودند . اما در ويرايش ۷ تيم مايکروسافت بتدريج کد مزبور را دوباره نويسي کرد و آن را تغيير داد . اين شرکت ضمن ساختار دهي مجدد هسته مرکزي موتور پايگاه داده ، يک بهينه ساز پرس و جوي پيشرفته و پيچيده و يک موتور ذخيره سازي پايگاه داده پيشرفته  را نيز معرفي کرد .
 Sql Server 2000از اين کد جديد بهره مي گيرد و داراي ويژگيهاي قابل ملاحظه اي مي باشد . همچنين قابليت اطمينان ، در دسترس بودن محصول و توسعه پذيري  آن افزايش يافته و در کل کار را براي  راهبران پايگاه داده ساده تر کرده است .
 
SQL SERVER  چيست ؟
SQL SERVER  يک سيستم پايگاه داده رابطه اي است به صورتي که CLIENT ها درخواست خود  (QUERY)  را به SQL SERVER  فرستاده و  SQL SERVER نتايج را به  CLIENT  باز مي گرداند .
SQL SERVER مجموعه اي از مؤلفه ها (COMPONENTS)  مي باشد که با همديگر کار
مي کنند و براي نيازهاي داده هاي ذخيره شده مي باشد  که شامل قسمتهاي زير است .
    OLTP   (ONLINE TRANSACTION PROCCESSING )
    OLAP   ( ONLINE ANALITICAL PROCCESSING)
که وظايف هر کدام بصورت زير است :
1-    در پايگاه داده  OLTP   :
•    سازماندهي در جدول روابط
•    نرمال سازي و حذف دوگانگي داده ها
•     اطلاعات فقط يکبار ذخيره مي شوند .
•    افزايش دقت  دراضافه کردن  يا تغيير سريع داده ها توسط تعداد زيادي کاربر همزمان
2- در پايگاه داده  OLAP  :
•    سازماندهي در اجازه تجزيه و تحليل و خلاصه سازي  مقدار زيادي از داده ها با سرعت بالا
•    سازماندهي در مديريت  SQL SERVER
•    سازماندهي داده هاي ذخيره شده
•    سازماندهي در روابط  بين داده  در پايگاه داده ها
•    قابليت بازيابي

اهداف  SQL SERVER :
    استفاده آسان
    مقدماتي از مراحل سودمند سرويس Olap
    موتور بانك داده  روابط كاملا صعود پذير
    سرويس دهي گروهي بانك اطلاعاتي  به كاربران
    دسترسي هزاران كاربر بصورت همزمان
    قابليت مديريت ترافيك در صفحات وب جهاني
    قابليت تنظيم خودكار موتور بانك اطلاعاتي
    بدست آوردن  منابع بصورت پويا در زمان اتصال كاربران
    آزاد سازي منابع در زمان قطع ارتباط كاربران
    پيشرفت در زمينه امنيتي
    پيشرفت در ارائه سرويسهاي تحليل داده

آشنايي با Analysis Services  و نحوه نصب آن :
در Sql Server 200  امكاناتي با عنوان Analysis Services  قرار داده شده است كه قابليت تجزيه و تحليل اطلاعات را دارا مي باشد همچنين اين سرويس قادر است اطلاعات آماري نيز از بانك اطلاعاتي تهيه كرده و ارائه كند.
نحوه نصب كردن Analysis Service  شامل مراحل زير است :
در صفحه نصب Sql Server 2000  گزينه Sql Server 2000 Components را انتخاب كرده و سپس گزينه Install Analysis Services  را انتخاب ميكنيم .
پس از نصب از مسير زير برنامه Analysis Manager  را انتخاب ميكنيم
Start­­­­­> Programs­­­­­>Microsoft Sql Server ­­­­­>Analysis Manager
براي استفاده از قابليت Olap در Sql Server 2000 نيازمند به انجام مقدماتي مي باشيم كه در زير به ترتيب آورده شده اند :
اولين قدم نصب منبع سيستم بانك اطلاعاتي مي باشد. اين قابليت باعث مي شود كه اشيا بتواند به بانك اطلاعاتي دسترسي داشته باشند .
براي اين منظور نيازمند اتصال به بانك اطلاعاتي هستيم كه آنرا نصب Dns (Data Source Name)  گويند.
براي اين منظور از منوي Start گزينه  Seeting و سپس Control Panel را انتخاب كرده  و سپس بر روي  Data Source  (Odbc)  دو بار كليك مي كنيم .
اگر از ويندوز 2000 و يا  Xp   استفاده شود از مسير زير استفاده مي كنيم :
Start ­­­­­> Setting ­­­­­> Control Panel ­­­­­> Administrative Tools ­­­­­>
Data source (odbc)
سپس از برگه System Dns  گزينه Add را كليك كرده و  گزينه  Microsoft Access Driver (*.Mdb)  را انتخاب نموده  Finish  را كليك ميكنيم .
در صفحه نام منبع داده (Data Source Name)   نام بانك اطلاعاتي را انتخاب مي كنيم .
بعنوان مثال مي توان از مسير زير از بانك اطلاعاتي نمونه موجود در Sql Server 2000  استفاده كنيم :
C:\Program Files\Microsoft  Analysis Service\Sample\foodmart2000.mdb
صفحه اي مانند شكل زير نمايش داده مي شود  :

شكل (1) :










سپس در قسمت Odbc Microsoft Access Setup  ،  گزينه Ok  را انتخاب كرده همچنين  در Odbc Data Source Administrator نيز گزينه Ok را مي زنيم .
حال به برنامه  Analysis Manager  كه از برنامه هاي موجود در  Sql Server 2000
مي باشد رفته و آنرا اجرا ميكنيم .
صفحه اي به شكل زير خواهيم ديد :
 
شكل (2) :
















نصب پايگاه داده و منبع آن :
براي نصب ساختار  پايگاه داده مراحل زير دنبال ميشود :
در برنامه Analysis Manager  در سمت چپ گزينه Console Root ديده  ميشود  كه زير منوي آن Analysis Services مي باشد ، با باز كردن آن نام سرويس دهنده (Server)  مشاهده مي شود ،كه با كليك راست بر روي آن و انتخاب گزينه New Data Bases  يك پنجره محاوره اي باز شده و خواهان نام پايگاه داده مي باشد .  با انتخاب نام و سپس كليك بر روي دكمه Ok  پنجره بسته شده و مشاهده ميشود كه در قاب درختي Analysis Manager  با كليك بر روي نام سرويس دهنده بانك اطلاعاتي ايجاد شده مشاهده مي شود . ( براي مثال نام اين بانك را Tutorial  قرار مي دهيم . )
اگر بر روي نام بانك اطلاعاتي كليك كنيم گزينه هاي زير را مشاهده ميكنيم :
•    Data Sources
•    Cubes
•    Shared Dimension
•    Mining Model
•    Database Rules
مانند شكل زير :                                            
 شكل (3)














حال به برقراري اتصالات بانك اطلاعاتي مي پردازيم . در قاب درختي Analysis Manager بر روي گزينه Data Sources  كه در زير منوي نام بانك اطلاعاتي قرار دارد كليك راست ميكنيم و سپس گزينه New Data Source را انتخاب مي كنيم و در قسمت Data Link Properties  برگه Provider  و سپس گزينه Microsoft OLE db Provider For ODBC Drivers را انتخاب مي كنيم .
مانند شكل زير :
شكل (4) :
















از برگه Connection و در قسمت  Use Data Source Name  نام بانك داده را  انتخاب
مي كنيم . ( در اينجا نيز بطور مثال نام  Tutorial را انتخاب مي كنيم . )
سپس بر روي دكمه Test Connection  كليك كرده و در صورت صحيح بودن انجان عمليات پيغام Test Connection Succeeded  را مشاهده مي كنيم .
شكل (5) :

















پس از برقراري ارتباط با بانك اطلاعاتي نوبت به ساختن مكعب (Cube)  ميرسد . مكعب ها يك ساختار چند بعدي از داده ها مي باشند و تشكيل شده از مجموعه اي از ابعاد و مقادير مي باشند .
براي آشنايي بيشتر با مكعب ها در زير  تعريف مايكروسافت از مكعب  آمده است :
يك مكعب مجموعه اي از دادههاي ذخيره شده است كه امكان تجزيه و تحليل سريع و سهل داده ها را فراهم مي كند . داده هاي ذخيره شده در مكعب بر اساس ابعاد ، تجزيه و تحليل مي شوند .  اين ابعاد  مي توانند زمان يا ناحيه باشند . براي مثال مي توان فروش را بر اساس سال ، فصل ، ماه  ، هفته ، روز  و يا حتي ساعت و دقيقه نگهداري كرد و يا آمار فروش را بر حسب كشور ، ايالت ، شهر و حتي  مناطق پستي شهر تقسيم بندي نمود .
در ادامه كار براي مثال از بانك اطلاعاتي Foodmark  كه در شاخه Sample  در  Sql Server 2000 قرار دارد استفاده مي كنيم و فرض مي شود كه كليه  مراحل  قبل انجام شده  و نام بانك اطلاعاتي Tutorial  درج گرديده است كه در حقيقت نام ديگري براي Foodmark  ميباشد .

نحوه ايجاد Cube :
كار را بر روي بانك اطلاعاتي  Tutorial كه مربوط به يك فروشگاه بزرگ ميباشد ، دنبال ميكنيم و اين بانك شعب مختلفي در آمريكا ،  كانادا ، مكزيك  دارد و مديريت فروشگاه نيازمند تحليل فروش محصولات خود و مشتريان در سال 1998  ميباشد .
براي اين كار با ساختن يك مكعب و تعريف ابعاد آن مي توان بسرعت به تجزيه و تحليل داده ها پرداخت .
براي ايجاد مكعب مراحل زير طي مي شود :
در پنجره Analysis Manager  در زير قسمت بانك Tutorial بر روي گزينه Cube Folder كليك راست كرده و گزينه  New Cube انتخاب و سپس گزينه Wizard انتخاب شود .
حال زمان تعريف پيمانه يا (Measure) مي باشد اما قبل از آن نياز به آشنايي با اصطلاح جديدي است .
اين اصطلاح جداول Fact يا (Fact Table) مي باشد . در اكثر طراحي هاي پايگاه داده  انبار كردن داده ها حول محور جدول Fact متمركز مي شود . اين جداول منابع مركزي اطلاعاتي است  كه انبار دادهاي بر اساس آن ساخته ميشود ، براي درك بيشتر به مثال هاي زير توجه شود :
براي توليد لوازم آرايشي جدول Fact  ميتواند شامل اطلاعاتي نظير محصولات فروش رفته ، خريداران محصول ، مبلغ فروش ، قيمت تمام شده كالا ، قيمت عمده فروشي و تاريخ و زمان ميباشد . سپس ميتوان از اين جداول براي پاسخ به سؤالاتي نظير  فروش ماهانه و يا درآمد روزانه استفاده كرد .
پيمانه چيست ؟
پيمانه ها مقاديري در بانك اطلاعاتي هستند كه ميخواهيم آنها را تجريه و تحليل كنيم . پيمانه ها ، بر خلاف ابعاد به نحوه هاي ديگري تجزيه و تحليل مي شوند .
حال به نحوه ايجاد پيمانه ميپردازيم .
 براي اين كار  با استفاده از Wizard مربوطه ، از بانك Tutorial جدول Sales_Fact1998 را انتخاب كرده و  سپس دكمه Next  را كليك مي كنيم .
حال نوبت به انتخاب ستون عددي يا   Numeric Column  ميپردازيم و گزينه هاي
Unit_Sales , Store_Cost , Store_Sales     را انتخاب مي كنيم .
توجه به اين نكته لازم است كه ما كار تجزيه و تحليل داده ها را براي فروش در سال 1998 ميلادي آغاز كرده ايم .
اكنون زمان ايجاد ابعاد مي باشد ، با كليك بر روي New Dimension  كار را ادامه مي دهيم .
شكل زير نمايانگر صفحه انتخاب ابعاد مي باشد .
شكل (6) :

 
اولين بعد را زمان انتخاب مي كنيم ، براي اين كار پس از اجراي Wizard نوع بعد را در صفحه  Select The Dimension Type  ، برابر با Time Dimension  انتخاب كرده و Date
Column را نيز به  The_Date تغيير مي دهيم .
 شكل (7) :











در صفحه  Choose  How  You  Want  To  Create  Dimension  ، گزينه اول كه با عنوان  
A Single Dimension Table  است را انتخاب مي كنيم و دكمه Next را كليك مي كنيم و در صفحه Select The Dimension Table  بر روي   Time_By_Day كليك كرده و سپس Next  را كليك مي كنيم .
در اين قسمت مي توان اطلاعات جدول Time_By_Day را مشاهده كرد براي اين منظور با كليك كردن بر روي دكمه Browse Data  مي توان داده ها را مشاهده كرد و در صورت پايان مشاهده اطلاعات مي توان بر روي دكمهNext   كليك كرد تا به صفحه بعد برسيم ..
سپس در صفحه  Create The Time Dimension Levelبر روي  Select Time Levels كليك كرده و Next را كليك ميكنيم . در قسمت Select Advance Option  نيز  Next  را كليك مي كنيم و آنگاه در آخرين مرحله از اين قسمت نام اين بعد را Time قرار مي دهيم و  Finish  را كليك مي كنيم .
اكنون در صفحه Cube Wizard بايد نام Time  در قسمت  Cube Dimension نمايش داده شود . اين نام در قاب سمت چپ نمايش داده  مي شود .
براي ايجاد بعد ديگري با عنوان Product  مراحل زير دنبال مي شود :
پس از انتخاب New Dimension در قسمت  Choose How You Want To Create The Dimension گزينه دوم يا  Multiple Related Dimension Table   را انتخاب و    Next را كليك ميكنيم و در صفحه بعد Product Class, Product  را انتخاب مي كنيم
پس از زدن دكمه  Next وارد صفحه  Create And Edit Joins  مي شويم .
دراين  صفحه بين دو جدول انتخاب شده يك Join ايجاد شده و مشاهده مي شود .
شكل زير اين اتصال را نمايش مي دهد .
شكل (8) :

 
با فشار دكمه Next  در صفحه Available Columns بر روي  گزينه هاي :
Product Category , Product Sub Category , Brand name  
كليك ميكنيم و پس از انتخاب هر سه مورد دكمه Next را مي زنيم و سپس در صفحات بعد نيز دكمه Next را زده تا به صفحه آخر برسيم و در اين صفحه نام بعد را Product گذاشته و Finish را كليك مي كنيم .
براي ايجاد بعد مشتري (Customer) مراحل زير دنبال مي شود.
1-    Choose How You Want To Create Dimension : A  Single Dimension Table
2-    Select The Dimension Table : Customer
3-    Available Column : Country ,State_Province , City ,Lname
4-    Name : Customer
و براي ايجاد بعد فروشگاه (Store)  :
1- Choose How You Want To Create Dimension : A  Single Dimension Table
2- Select The Dimension Table : Store
3- Available Column : Store_Country , Store_State , Store_City , Store_Name
           4- Name : Store
پس از ايجاد مراحل بالا مكعب ساخته ميشود  با كليك بر روي گزينه Next و سپس در هنگام پرسش  دكمه Yes  و سپس Finish   كار ساخت مكعب را پايان ميدهيم.

نحوه اصافه كردن بعد به مكعب :
فرص كنيم كه يك مكعب ايجاد نموده ايم و پس از ايجاد ان نياز داريم بعد يا ابعادي به آن اصافه كنيم براي اين كار بايد مراحل زير را دنبال كنيم .
از قسمت Manager  Analysis بر روي نام بانك اطلاعاتي كليك مي كنيم ، سپس بر پوشه Cubs كليك كرده و مكعب مربوطه را انتخاب مي كنيم . سپس بر روي نام مكعب كليك راست كرده و گزينه Edit را انتخاب مي كنيم . پس از وارد شدن به قسمت Cube Editor ، از منوي Insert گزينه Tables را انتخاب مي نماييم . در جعبه ديالوگ Select Table گزينه Promotion Table را انتخاب و سپس Add را كليك مي كنيم و نهايتا Close  را كليك مي كنيم .
براي تعيين  بعد جديد بر روي ستون  Promotion_Name  از جدول Promotion دو بار كليك
مي كنيم . و در جعبه ديالوگ Map The Column ، گزينه Dimension را انتخاب كرده و Ok  را كليك مي كنيم .
شكل (9) :








سپس از درخت سمت چپ بر روي بعد  Promotion Name كليك كرده و از منوي Edit گزينه Rename را انتخاب مي كنيم . سپس نام قبلي را حذف و نام جديد را Promotion قرار مي دهيم و تغييرات را ذخيره كرده و خارج مي شويم .
 
شكل (10) :












طراحي منبع و پردازش مكعب :
براي ساخت يك منبع از منوي Analysis Manager بر روي Cube Folder كليك راست كرده و گزينه Design Storage را انتخاب مي كنيم .
حال به انتخاب نوع عمل Olap ميپردازيم . اما قبل از آن بهتر است تعريفي از Olap  ارائه شود .
Olap چيست ؟
Olap مخفف  Online Analytical Processing  ميباشد  و به معني توانايي ياد گيري چيزي با مفهوم از داده ها بدون نياز به يك  سيستم دسته اي برون خطي (Offline_Bach)  است .
با استفاده از اين ويژگي ميتوان داده ها را فرا تر  از جداول رابطه اي مشاهده كرد .
كلا 3 نوع  Olap  وجود دارد :
    Molap   :  Multidimensional Olap
    Rolap  :  Relation Olap
    Holap  : Hybrid Olap
Molap :  در اين مدل ، هم داده و هم سر جمع آن (Aggregation)    در ساختار آن ذخيره ميشود .
Rolap : در اين مدل ساختار روابط داده ها حفظ ميشوند و جداول و سر جمع در روابط بانك اطلاعاتي ذخيره ميشود .
Holap : در اين مدل ساختار روابط داده ها حفظ ميشود و سر جمع در ساختار ابعاد ذخيره ميگردد .
سرويسهاي  olap زبان پرس و جوي خاص خودMdx   (Multi Dimensional Express)   را دارند . در صورت استفاده از Holap  يا Molap  بجاي T-Sql  زبان   Mdx  بكار مي آيد .  Mdx  بطور كامل از طرف  Ado  پشتيباني ميشود.
پس از آشنايي با انواع Olap حال به ادامه طراحي منبع مي پردازيم .
در قسمت انتخاب Olap ، Molap  را انتخاب ميكنيم سپس در  Set Aggregation Option بر روي  Performance Gain Reachكليك كرده و عدد 40  را در قسمت مربوطه مي نويسيم.
شكل (11) :

انجام پایان نامه

برای دیدن ادامه مطلب از لینک زیر استفاده نمایید

سفارش پایان نامه