وبلاگ vdash

اخبار و مقالات مربوط به vdash، نرم افزار آنالیز اطلاعات و ساخت داشبورد مدیریتی

تعریف و ایجاد بعد در vdash

فیلدهای محاسباتی و KPI ها تقریبا بدون اینکه با چیزی مقایسه شوند، بی معنی می شوند.

در واقع "بعد" (Dimension) می تواند اطلاعاتمان را به قسمت های معنی دار تقسیم کند و دید بهتری از کسب و کارمان را به ما بدهد تا بتوانیم تصمیمات بهتری بگیریم.به عبارت خیلی (Data set) استفاده می شود.هر دادگانی می تواند بعد های مختلف داشته باشد.برای نمونه دادگان مربوط به فروش اینترنتی را در نظر می گیریم که می تواند به ابعاد مختلفی نظیر مشتری،منطقه جغرافیایی،موقعیت جغرافیایی،محصول،تاریخ و یا چیز های دیگر تقسیم شود(شکل 1).

بعد فروش اینترنتی

شکل1

علاوه بر اینکه هر دادگانی می تواند چند " بعد" داشته باشد، هر "بعد" نیز می تواند متعلق به چندین دادگان باشد.فرض کنید مدل ما دادگانی نظیر فروش فصلی پرسنل(شکل 2-الف) و واحد پشتیبانی (شکل 2-ب)را شامل میشود، هر دوی این دادگان می توانند به بعد تاریخ متصل گردند.

بعد واحد پشتیبانی

شکل 2-الف

بعد فروش فصلی پرسنل

شکل 2-ب

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

مراحل ایجاد بعد عبارتست از:

  • 1. نام گذاری
  • 2. نوشتن دستورات فراخوانی اطلاعات از پایگاه داده
  • 3. مشخص کردن Attributes
  • 4. سلسله مراتب

نام گذاری

با ذکر یک مثال درک ملموس تری از مطالب را ارائه می دهیم:

فرض کنید می خواهیم برای دادگان مربوط به فروش فصلی که در مقاله دادگان توضیخ داده شده است "بعد" تاریخ را ایجاد نماییم.در قسمت New+ Dimensions در پنجره General برای بعد مورد نظر داریم : (شکل 3)

نام سیستمی که باید انگلیسی و بدون فاصله باشد :Dimension Name

نام نمایشی که باید فارسی باشد : Display Name

ایجاد بعد تاریخ

شکل3

نوشتن دستورات فراخوانی اطلاعات از پایگاه داده

سپس برای بعدی که تعریف کرده ایم باید بگوییم که متعلق به کدام پایگاه داده است (شکل 4) که در این مثال پایگاه داده ما AdventureWorksDWPersian و همچنین برای فیلدهایی که از پایگاه داده نیاز داریم باید Query مربوط به فراخوانی آن ها را بنویسیم:

" SELECT DateKey, AlternateDate, PersianDate, DayOfWeekNumber, DayOfWeekName, DayOfMonthNumber, MonthOfYear, MonthOfYearName, MonthKey, MonthName, QuarterOfyearNumber, QuarterOfYearName, QuarterKey, QuarterName, Year FROM DimDatePersian "

و در نهایت با اجرای Show Preview Data فیلدهای نوشته شده هم نمایش داده می شوند و هم در قسمت Attributes اضافه می گردند.(شکل 5).

تعیین پایگاه داده بعد

شکل4

پیش نمایش کوئری بعد

شکل5

مشخص کردن Attributes

در ادامه Attributes را مشخص میکنیم. Attributes در واقع اجزای تشکیل دهنده بعد هستند، در واقع مجوعه موارد و خصوصیاتی که به شرح بیشتر و دقیق تر یک بعد می پردازند. برای مثال بعد تاریخ از سال،فصل،ماه، روز تشکیل شده است.پس سال،فصل،ماه و روز Attribute های بعد تاریخ هستند که از پایگاه داده نیز فراخوانی شده اند. برای هر Attributes باید موارد زیر را مشخص کنیم:) شکل 6)

نامی که در سیستم ذخیره می شود : Name

نامی که برای Attribute مورد نظر نمایش داده میشود : Display Name

مقداری که کاربر مشاهده میکند : Display Column

مقداری که سیستم در نظر میگیرد : Value Column

فیلدهایی که می توان مرتب کرد : Sort by value

کوئری بعد

شکل6

Sort by value : این قسمت مشخص می کنیم که نمودار های ما بر اساس چه فیلد یا فیلدهایی بتوانند عمل مرتب سازی را انجام دهند.

برای درک بهتر از مفاهیم Display Columnو Value Column مثالی بیان می کنیم: در Attribute ماه، Display Name ماهها (فروردین،اردیبهشت،خردادو...) هست و Value Column 1،2،3،....12 می باشد. اعمالی مانند فیلتر کردن و مرتب کردن و ... بر اساس Column انجام می گیرد.

همانطور که گفتیم یکی از دلایل ایجاد بعد مرتب کردن فیلدهاست، در قسمت Sort by value می توانیم مخص کنیم که کدام Attributes مرتب سازی شرکت کنند.(شکل 7)

سلسله مراتب Hierarchy

بعضی از بعد ها داری Attribute های سلسله مراتبی هستند یعنی یکی از مجموع دیگری یا دیگری ها ایجاد میگرد و ترتیب قرار گیری Attribute ها اهمیت دارد.مثلا بعد تاریخ که شامل Attribute های سال، فصل، ماه و روز می باشد در سر برگ Advance می توانیم به این صورت عمل میکنیم:

روز Key Attribute:

از بالا به پایین  سال / فصل / ماه / روز Hierarchy:

با دابل کلیک می توانیم موردی را اضافه یا حذف کنیم(شکل 7).

از سلسله مراتب برای Drill Down و Drill Up استفاده میکنیم که در مقاله مربوط به خود توضیح داده خواهد شد.

لازم به ذکر است که هر بعدی الزاما سلسله مراتب ندارد، بعدهایی نظیر زمان، مکان ، ساختار سازمان ها از نوع سلسله مراتبی هستند.

سلسله مراتب

شکل7

برای درک بهتر روند کار بعد محصول را نیز با هم بررسی می نماییم.

هر محصول دارای نام و گروه و زیر مجموعه هایی و مشخصات ظاهری اعم از استایل و رنگ و سایز و مدل می باشد.تمامی این موارد به عنوان Attribute بعد محصول شناخته می شوند.

برای این بعد نیز ابتدا نام سیستمی و سپس نام نمایشی انتخاب می نماییم(شکل 8).

تعریف بعد محصول

شکل8

مرحله بعد نوشتن Query می باشد، و تمام فیلدهای مورد نیاز از پایگاه داده فراخوانی می گردد و پایگاه داده که AdventureWorksDWPersian است تعیین می شود(شکل 9).

" SELECT DimProductCategory.ProductCategoryKey, DimProductCategory.EnglishProductCategoryName, DimProductCategory.PersianProductCategoryName, DimProductSubcategory.ProductSubcategoryKey, DimProductSubcategory.EnglishProductSubcategoryName, DimProductSubcategory.PersianProductSubcategoryName, DimProduct.ProductKey ProductId, DimProduct.EnglishProductName, DimProduct.PersianProductName, DimProduct.Color, DimProduct.ColorPersian, DimProduct.Size, DimProduct.Class, DimProduct.ClassPersian, DimProduct.Style, DimProduct.ModelName, DimProduct.ModelNamePersian FROM DimProductCategory RIGHT OUTER JOIN DimProductSubcategory ON DimProductCategory.ProductCategoryKey = DimProductSubcategory.ProductCategoryKey RIGHT OUTER JOIN DimProduct ON DimProductSubcategory.ProductSubcategoryKey = DimProduct.ProductSubcategoryKey "

کوئری بعد محصول

شکل9

با کلیک بر روی Show Preview Data علاوه بر نمایش فیلدها مقادیر آن ها ، به بخش Attribute اضافه می گردند.

نوبت به تعریف و تنظیم Attributes رسیده ، که همانطور که پیش تر گفتیم تمامی جزییاتی که محصول را ایجاد می کنند به عنوان Attribute تعریف می شوند(شکل 10و11).

پیش نمایش کوئری محصول

شکل10

اتریبیوت محصول

شکل11

مراحل قبل را با هم مرور می کنیم که Name همان نامی است که در سیستم برای فیلد ثبت می شود. و Display Name نامی است که Attribute با این نمایش داده میشود یعنی زمانی که بخواهیم اطلاعاتمان را به صورت گراف مشاهده کنیم ، گروه محصول و زیر گرئه محصول برای ما نمایش داده می شود. Display Column که آن چیزی است که کاربر از جزییات محصول مشاهده میکند و کدهای این جزییات در Value Column میگیرد. برای نمونه اسم گروه محصول را کاربر میبیند (PersianProductCategoryName) کد گروه محصول (ProductCategoryKey) را کاربر نمیبیند و در سیستم نگه داشته می شود.

اگر می خواهیم که زمانی که نمودار رسم می شود بتوانیم بر اساس گروه محصول عمل مرتب سازی را انجام دهیم در قسمت Sort by Value محصول را علامت میزنیم.

از آنجایی که هر گروه محصول، دارای زیر گروه هایی هست ، پس باید برای آن سلسله مراتب تعریف کنیم (شکل12) .

سلسله مراتب محصول

شکل12

برای اتمام کار ایجاد بعد Save Model را کلیک می کنیم تا تمام تغییرات ذخیره گردند.

ذخیره کردن مدل

شکل13

آنچه مقاله بعد می خوانید >> تعریف و ایجاد دادگان

امکان ارسال نظر برای این موضوع وجود ندارد