خانه / آموزش Microsoft BI / درس سی ام – طراحی SSAS Tabular Model

درس سی ام – طراحی SSAS Tabular Model

ساخت و طراحی Tabular Model

اصطلاحی داریم به نام SSRS یا SQL Server Reporting Server که در واقع برای سرور  و محل قرارگرفتن گزارشات و انواع ریپورت ها هست.

Power BI Report Server هم ورژنی از SSRS میباشد که ریپورت های طراحی شده با Power BI را در آنجا قرار میدهند.

در واقع میتوان گفت مراحل طراحی یک سیستم BI بصورت کلی از ابتدا تا انتها به شکل زیر است.

عکس 4:10

در این جلسه قصد داریم یک ساختار SSAS Tabular طراحی کنیم و مراحل پیشروی تا Power Bi Report Server را طی کنیم.

بر روی Solution راست کلیک کرده ، Add و New Project را میزنیم و از Analysis Services ، Tabular Project را انتخاب میکنیم.

* نصب همزمان Multidimensional و Tabular در یک نصب به صورت هم زمان امکان پذیر نیست.

یکی از قسمت های مهم در طراحی دیتا مدل ، Tabular Model Explorer هست که اجزای مختلفی در آن قرار دارند نظیر منابع اطلاعاتی ، Measure هایی که ساخته میشوند و Role ها و جداول. برای وارد کردن دیتا های داخل انبار داده به دیتا مدل روی Data Sources راست کلیک کرده ، Import From Data Source را میزنیم و SQL Server  را انتخاب میکنیم.

نام سرور و دیتابیس را مشخص میکنیم.

عکس 14:02

تنظیمات مربوط به Impersonation Information را روی Specific Windows username and password میگذاریم.

* امور مرتبط با SSIS و SSAS را سعی کنید تحت یک سرور و با یک یوزر یکسان پیاده سازی کنید.

عکس 20:00

در مرحله بعد جدول هایی که تمایل داریم آنها را در دیتا مدل داشته باشیم ، انتخاب میکنیم و Finish را میزنیم.

عکس 27:22

برای تغییر ویژگی های یک ستون ، نظیر Data Type  ،  Description و … میتوانید روی آن ستون کلیک کرده و از سمت راست Properties را انتخاب کنید.

عکس 31:42

این Description در مراحل جلوتر ، یعنی در Power Bi دیده میشود ، در نتیجه سعی کنید برای ستون ها یک توضیح و Description ای در نظر بگیرید که فرآیند ساخت داشبورد را راحت تر کند.

* برای نوشتن Measure در SSDT روی یکی از Cell های پایین جدول که خالی هستند کلیک کرده و فرمول DAX مد نظر را مینویسیم.

عکس 38:06

فرمت Measure ها را نیز میتوان از همان قسمت Properties ، مشخص کرد.

* برای اضافه کردن Thousand Separator به یک Measure یا ستون محاسباتی ، نیاز است تا فرمت آن Measure یا ستون محاسباتی ، یکی از انواع عددی مانند Whole Number باشد.

همچنین میتوان Measure هایی که در SSDT طراحی میشوند را در Side Bar در Power Bi ، در یک پوشه جدا نشان داد ، برای این کار باید Display Folder هر مژر را در SSDT مشخص کنید.

در قسمت پایین سمت راست دو حالت View داریم ، یکی Grid و دیگری Diagram.

عکس 40:22

در بخش Diagram ، Relation ها و ارتباطات میان جداول را میتوانیم ببینیم.

شکل نمایشی مناسب در Diagram به این صورت است که جداول فکت در پایین و جداول Dimension بالای آنها قرار بگیرند.

عکس 41:35

* بین دو جدول فقط یک Active Relation میتوان داشت.

در مرحله بعد ، باید ساختار طراحی شده را روی سرور قرار داد. روی پروژه SSAS راست کلیک کرده و Deploy را انتخاب میکنیم.

عکس 44:40

* برای Deploy بهتر است از روش دوم Deploy که درباره آن صحبت کردیم و با استفاده از Analysis Services Deployment Wizard ، این فرآیند را انجام دهیم.

Process : فرآیندی است که دیتا باید از جدولهای DW خوانده شود و به جداول Tabular منتقل شود.

چند مدل Process داریم که هنگام Deploy باید یکی از آنها را در نظر بگیریم.

Default Process : فرض کنید اگر جداول Tabular را Partition بندی کرده باشیم ، این نوع از Process ، فقط Partition های جدید را Process میکند و با پارتیشن های قدیمی کاری ندارد.

Full Process : تمام دیتای داخل Tabular را پاک میکند و مجددا آن ها را Process میکند. طبیعتا این نوع از Process سنگین است و فقط در جایی که دیتابیس Tabular به مشکل خورده باشد یا مغایرت اطلاعات داشته باشیم ، بایداستفاده شود.
None Process : این حالت نیز کاری با دیتا ندارد و فقط ساختار و MetaData را منتقل میکند. این مورد زمانی کاربرد دارد که تغییری در دیتا ایجاده نکرده ایم. برای مثال اگر فقط یک Measure به دیتا مدل اضافه کرده ایم ، از این نوع Process میتوان استفاده کرد.

Process Data : این نوع Process فقط دیتا ها را Process میکند و Hierarchy ها ، Relation ها ، ستون های محاسباتی و Measure ها را Process و Rebuild نمیکند.

Partition بندی :

فرض کنید یک جدول خیلی بزرگ داریم که شامل چندین میلیون رکورد میباشد. میتوان با انجام یک تقسیم بندی بر اساس یک فیلد ، به عنوان مثال سال و یا گروه کالا ، پرفورمنس دیتا مدل را بهتر میکند ، برای مثال در Process ، پارتیشن های یک جدول به صورت موازی با هم Processمیشوند و اگر Full Process انجام داده باشیم ، در حالتی که Partition داشته باشیم ، Process سریعتر صورت میگیرد.

در نوشتن کوئری مرتبطبه Partitioning باید دقت کرد تا از Duplicate شدن و یا جا انداختن رکورد ها ، جلوگیری شود.

عکس 1:08:58

برای ایجاد Partition ، در SSMS ، روی تیبل Deploy شده میتوان راست کلیک کرده و با انتخاب Partition ، در پنجره باز شده ، Query مربتط با آن Partition را بنویسیم.

عکس 1:11:09

برای ساخت Partition در SSDT ، یک جدول را انتخاب کرده و وارد Properties آن میشویم.

عکس 1:13:13

Partitions را انتخاب کرده و روی سه نقطه کلیک کرده و در پنجره وارد شده ، کوئری مورد نیاز را وارد میکنیم.

عکس 1:15:43

* فرآیند ساخت Partition ها را یا در SSDT انجام دهید یا در SSAS Tabular تا از دوگانگی و افزایش درصد خطا جلوگیری شود.

با استفاده از قسمت Properties جدول ، در بخش Source Data ، میتوانید با زدن تیک ، ستون هایی که جدیدا به DW اضافه شدند را به Tabular model اضافه کنید.

عکس 1:16:39

درباره‌ی علیرضا حسن نژاد

همچنین ببینید

کار با دیتا در SSAS

درس بیست و هشتم – کار با دیتا در SSAS

کار با دیتا در SSAS بعد از آمدن دیتا ها به SSDT ، مشابه اکسل …

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

معادله امنیتی (فقط عدد بنویسید) *