جلسه شانزدهم – 24/09/93 Tabular Model

جلسه شانزدهم – 24/09/93

Tabular Model:

این روش برای تحلیل داده ها از SQL Server 2012 توسط مایکروسافت بنیان گذاری شده است. این روش جایگزین روش Multi Dimensional نبوده و محل کاربرد خود را دارد.

چند نکته:

·         Data Mining صرفا برروی روش Multi Dimensional قابل بکارگیری است

·         با استفاده از x-velocity engine کار می کند. مکانیزم Column Store Index از قابلیت های همین engine استفاده می کند

·         به دلیل آنکه سازوکار در روش Tabular استفاده فراوان از حافظه رم می باشد، بنابراین برای بانک های اطلاعاتی خیلی بزرگ با مشکل کبود حافظه رم روبرو خواهد شد.

·         تولید سیستم BI ارزان تر و سریع تر انجام می شود

·         اخذ گزارش ها در این روش سریع تر از روش Multi Dimensional می باشد

·         به منطق کارکردی صفحه گسترده EXCEL شبیه است

·         باید روی Instance جداگانه SQL Server نصب شود

·         قابلیت تبدیل دو روش Multi Dimensional و Tablular به یکدیگر مقدور نیست

 

Tabular Model

o        Concepts

o        Implementation

o        Self service BI

Concepts:

روش Tabular توسعه یافته روش تحلیل اطلاعات در نرم افزار اکسل است بطوریکه می توان تصور نمود که هر جدول از انبار داده ای رابطه­ای تبدیل به یک Sheet از فایل اکسل می­شود. با این تفاوت که این Sheet ها را می توان به یکدیگر مرتبط کرد (امکان تعریف relationship بین Sheet ها وجود دارد). به عبارت دیگر در مدل Tabular یک مدل رابطه ای یا relational بین جداول Fact و Dimension برقرار است با این تفاوت که این مدل توسط x-velocity engine مدیریت می شود.

x-velocity یک engine توسعه یافته برای مدیریت حجم عظیم داده ها در محیط رم است. (توسعه یافته vertipaq)

مکانیزم ها دراین روش:

o        Parallel Data Scanning

o        In memory caching

o        State of the art compression

o        Aggregation algorithms در رم

تفاوت های عمده دو روش Tabular و Multi-Dimensional

o        Tabular

o        Familiarity برای تولید کننده و کاربر

o        Flexibility یا قدرت تغییر زیاد

o        برای افراد غیر خبره طراحی شده است

o        ارزان تر

o        ساده تر

o        Multi-Dimensional

o        Rich data model – جواب خودش را پس داده

o        Sophisticated data analysis – مثل داده کاوی

در مدل Tabular تمام داده های انبار داده رابطه در حافظه SSAS Tabular (رم) بارگذاری می شوند و تمام جمع بندی ها و تحلیل در این محیط توسط x-velocity انجام می شود، لذا پیاده سازی این مدل داده ای نیاز به منابع داده ای قابل توجه دارد.

Implementation:

o        انتخاب نوع منبع داده

o        تعریف Connection String به منبع داده

o        تعریف impersonation user: شناسه کاربری که خواندن داده ها از منبع داده با دسترسی آن انجام می شود.

o        انتخاب جداول یا view های مورد نظر: آوردن ساختار جدول و ساختار داده

در مدل Tabular تمامی جداول با یکدیگر ارتباط ارجاعی (referenced) دارند به این معنا که از داخل ساختار هر جدول می توان به تمام ستون های جداول مرتبط دسترسی پیدا نمود. به همین دلیل جهت جلوگیری از بروز ابهام در ارتباط بین جداول باید بین هر دو جدول از مدل داده ای تنها یک مسیر ارتباطی فعال یا active وجود داشته باشد.

به طور مثال جدول Fact Internet Sales با 3 ویژگی ShipDate، DueDate و OrderDate به جدول DimDate مرتبط است که به توضیحی که در بالا به آن اشاره شد، تنها یکی از این ارتباط ها فعال است. درصورت نیاز به وجود سایر ارتباط ها لازم است تا به تعداد مورد نیاز مشابه جدول DimDate ایجاد شده و هریک به طور مستقل با جدول Fact Internet Sales ارتباط خواهند داشت.

*  بنابراین گزارش ها و جمع بندی ها براساس ارتباطات فعال محاسبه می شوند.

زبان DAX Data Analysis eXpression

این زبان مشابه اکسل به توابع اضافه است. کاربرد این زبان برای ساخت ستون های محاسباتی (Calculated Columns) و ساخت مقادیر (Measures) می باشد.

* در این مدل هر یک از جداول می تواند نقش Dimension یا Fact را داشته باشند.

آشنایی با چند تابع در DAX

·         تابع Calculate(Calculation  expression, Filter1, Filter2, …..)

این تابع معادل Aggregate در زبان MDX است.

مثال:

Calculate(Sum(Sales Amount), Filter)

·         تابع Filter(TableName, Conditional expression)

این تابع سطرهای جدول را براساس شرط مشخص شده فیلتر می نماید.

مثال:

Filter(Fact Internet Sales, conditional expression)

·         تابع Related(TableName[Column Name])

این تابع دسترسی به ستون مورد نظر از جدول مورد نظر را فراهم می نماید

مثال:

Filter(Fact Internet Sales, conditional expression)


 

مثال جامع: ایجاد محاسبه­ای در جدول Fact Internet Sales برای تعیین فروش انجام شده در اروپا

توجه: اولین پارامتر تابع Filter به همان جدول Fact Internet Sales اشاره دارد.

Calculate ( Sum[Sales Amount],

            Filter(Fact Internet Sales,

                        Related(DimSalesTeritorry[Group]) = 'Europe'

            )

)

چند امکان در محیط Tabular

·         Existing connection: امکان مشاهده اتصالات موجود و درصورت لزوم استفاده از آنها برای افزودن جداول جدید به مدل داده­ای است.

امکانات موجود به ازای هر اتصال:

o        امکان Open کردن: مشاهده اشیاء موجود در منبع داده و انتخاب جداول یا view های جدید

o        امکان Edit: برای ویرایش مشخصات اتصال و مشخصات impersonation user

o        امکان process: به روزرسانی داده های بارگذاری شده در مدل

·         Perspective (نما) : برای ایجاد نماهای گوناگون از یک مدل جامع از این امکان استفاده می شود.

یادآوری:     ……. From [model / perspective]

·         امکان مرتب سازی مقادیر یک ستون براساس مقادیر ستون دیگر را فراهم می کند.

مثال: مرتب سازی ستون اسامی ماه ها براساس شماره ماه ها

·         امکان ساخت سلسله مراتب: برای این کار لازم است تا :

o        از محیط Diagram view استفاده نمایید

o        انتخاب جدول مورد نظر

o        انتخاب دکمه Create Hierarchy

o        انتخاب سطوح سلسله مراتب با Drag&Drop کردن ستون ها

·         امکان ساخت KPI

o        انتخاب value measure مورد نظر (با رفتن برروی آن و انتخاب آن)

o        انتخاب دکمه create KPI

§         انتخاب Target Measure (measure دیگر یا absolute value: مثل ضایعات صفر)

§         انتخاب icon گرافیک جهت نمایش وضعیت Status

§         تعیین حدود آستانه Threshold

توجه: اگر از طریق نرم افزار اکسل (2013) به Tabular Model متصل شویم می توانیم Power View را استفاده نماییم.

نظرات 0 + ارسال نظر
امکان ثبت نظر جدید برای این مطلب وجود ندارد.