توسط zahra riyahi zahra riyahi بدون دیدگاه

OLAP

پردازش تحلیلی آنلاین که به اختصار OLAP گفته می شود، تکنولوژی است برای تحلیل پایگاه داده های کسب و کارهای بزرگ و نیز پشتیبانی از تحلیل های پیچیده، که می تواند برای کوئری های تحلیلی پیچیده بدون تاثیر منفی بر سیستم های تراکنشی (OLTP) .

پایگاه داده هایی را که یک کسب و کار برای ذخیره تمامی تراکنش ها و رکورد هایش استفاده می کند را Online Transaction Processing(OLTP) می نامند. این پایگاه داده ها اغلب دارای رکورد هایی می باشند که معمولا یک بار در طول زمان وارد می شوند. اغلب شامل حجم زیادی از اطلاعات هستند که برای سازمان ارزشمند می باشد. پایگاه داده هایی که برای OLTP استفاده می شوند، برای تحلیل طراحی نشده اند. بنابراین، باز یابی پاسخ ها از این پایگاه داده ها به زمان و تلاش زیادی نیاز دارد. سیستم های OLAP جهت کمک به استخراج  اطلاعات هوش تجاری از داده ها به روشی بسیار کارآمد طراحی شده اند. این امر به این دلیل است که پایگاه داده های OLAP بیشتر برای خواندن بهینه شده اند تا نوشتن.

مدل سازی معنایی

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

مدل سازی معنایی سطحی از انتزاع نسبت به Schema  پایگاه داده را فراهم می کند ، به طوری که کاربران نیازی به دانستن ساختارهای اصلی داده ندارند. این کار را برای کاربران جهت پرس و جو بر روی دیتا راحت تر می کند. همچنین معمولا ستون ها برای فهم بیشتر کاربران تغییر نام پیدا می کنند و بدین ترتیب فهم دیتا واضح تر می شود.

مدل سازی معنایی بیشتر در هوش تجاری و OLAP به نسبت سیستم های OLTP مورد استفاده قرار می گیرد.

دو نوع اولیه از مدل معنایی وجود دارد:

  • Tabular. این مدل از سازه های مدل سازی رابطه ای (مدل، جدول، ستون) استفاده می کند. ذاتا از Metadata را از مدل OLAP (مکعب، ابعاد و مقادیر) به ارث می برد.
  • Multidimensional. از سازه های مدل سازی سنتی OLAP استفاده می کند.( مکعب، ابعاد، مقادیر)

در این مقاله و مقاله بعدی که در سایت ما به آدرس www.Keysun-co.com (شرکت هوش تجاری کیسان) منتشر می شود، قصد داریم مراحل طراحی مکعب OLAP را در SSAS (SQL Server Analysis Services )

بیان کنیم.

مکعب OLAP چیست و چرا به آن نیاز پیدا می کنیم؟

  • یک مکعب OLAP تکنولوژی است که دیتا را با روشی بهینه، جهت پاسخگویی سریع به انواع متنوع و پیچیده Query ها با استفاده از ابعاد (Dimension) ها و مقادیر (Measures). بیشتر مکعب ها (Cube) محاسبات از پیش انجام شده از مقادیر را با ساختار ذخیره سازی ویژه خود برای پاسخگویی سریع به Query ها ذخیره میکنند.
  • گزارشات SSRS و Excel Power Pivot به عنوان نتیجه برای گزارش دهی و تحلیل بوسیله SSAS مورد استفاده قرار می گیرند.
  • SSAS یکی از ابزارهای Microsoft BI برای ایجاد پردازش های تحلیلی به روز و در نهایت Data mining می باشد.
  • ما باید زمانی که عملکرد نکته ای کلیدی محسوب می شود از OLAP Cube استفاده کنیم، تصمیم گیرندگان اصلی شرکت می توانند در هر زمانی از پایگاه داده بزرگ شما آماری از داده ها را بخواهند.
  • ما می توانیم انواع متفاوتی از تحلیل ها را بر روی دیتای ذخیره شده بر روی مکعب به دست آوریم، همچنین این امکان وجود دارد که ساختار Data mining را نیز بر روی دیتا پیاده سازی کنیم که برای تصمیم گیری و پیش بینی بسیار مفید خواهد بود.

تفاوت بین پایگاه داده های OLAP و OLTP

(Online Transaction Processing (OLTP (Online Analytical Processing (OLAP
Designed to support Daily DML Operations of your application Designed to hold historical data for analyses and forecast business needs
Holds daily Latest Transactional Data related to your application Data is consistent up to the last update that occurred in your Cube
Data stored in normalized format Data stored in denormalized format
Databases size is usually around 100 MB to 100 GB Databases size is usually around 100 GB to a few TB
Used by normal users Used by users who are associated with the decision making process, e.g., Managers, CEO.
CPU, RAM, HDD space requirement is less. CPU, RAM, HDD space requirement is higher.
Query response may be slower if the amount of data is very large, it can impact the reporting performance. Query Response is quicker, management can do Trend analysis on their data easily and generate quicker reports.
T-SQL language used for query MDX is used for querying on OLAP Cube

معماری اولیه

در نمونه ما، انبار داده به عنوان یک منبع دیتا برای Cube مورد استفاده قرار میگیرد. یک مکعب با دیتا آماده می شود، کاربران می توانند Query ها را بر روی مکعب ایجاد شده در SSAS اجرا کنند. ابزارهای گزارش ساز SSRS و Excel Pivoting/Power Pivot می توانند از مکعب به عنوان منبع دیتا به جای پایگاه داده های OLTP استفاده کنند.

توسط zahra riyahi zahra riyahi بدون دیدگاه

طراحی OLAP Cube

در ادامه مقاله قبل ((Online Analytical Processing (OLAP)) که در آن به بیان مقدمه ای از OLAP پرداختیم، قصد داریم در این مقاله به بیان مفاهیم  Multidimensional Data Analysis از قبیل ویژگی ها(Attributes)، سلسله مراتب (Hierarchies) و ابعاد(Dimensions) بپردازیم.

Attribute ها در Data Analysis

برای درک بهتر مفهموم Attribute به طرح مثالی در این رابطه می پردازیم. تصور کنید شما مدیر شرکت Adventure Works Cycles هستید و میخواهید درباره عملکرد شرکت خود اطلاعاتی بدست آورید. بدین منظور از تحلیلگر کسب و کار خود می خواهید تا گزارشی از وضعیت شرکت در اختیار شما قرار دهد

 

شما می دانید که این پاسخ چیزی است، اما چه چیزی؟ این گزارش فاقد معنی است. اعداد بدون هیچ متن و توضیحی ممکن است دیتا باشند اما اطلاعات نیستند. در هوش تجاری، اعداد و ارقام جمع پذیر که شما برای کنترل کسب و کارتان استفاده میکنید را Measure می گوییم. Measure می تواند فروش، تعداد کالای فروخته شده، مقدار برگشتی و موارد دیگر باشد. اضافه کردن یک برچسب بر روی عدد اعلام شده دیتا را به اطلاعات تبدیل می کند، این برچسب Metadata (دیتا درباره دیتا)گفته می شود. یک راه برای اینکه برنامه هوش تجاری شما دیتا را به اطلاعات تبدیل کند اضافه کردن Metadata می باشد. مطالعه یک مقدار تنها اطلاعات زیادی به شما نخواهد داد شما نیاز دارید که این مقدار را به مقادیری که حاوی اطلاعات بیشتری باشد بشکنید برای مثال تحلیل فروش در ماه که می توانید نتیجه را در جدول زیر مشاهده کنید.

 

Table 1-2 Adventure Works Units Sold by Month

Apr 2011 Mar 2011 Feb 2011 Jan 2011
۲۵ ۲۷ ۱۴ ۴

اکنون شما اطلاعات بیشتری دارید زیرا Metadata بیشتری دارید. یک Attribute برای هر فروش، ماه فروش آن می باشد. در قسمت بالای گزارش شما می توانید لیستی از چهار Attribute ماه را مشاهده کنید.

از طرفی شرکت شما بیشتر از یک محصول را در ماه می فروشد. هر کدام از این محصولات در طول زمان چگونه رفتار میکنند؟ بنابراین درخواست گزارش دیگری بر مبنای فروش محصولات مختلف در ماه های متفاوت میکنید.

 

Table 1-3 Adventure Works Units Sold by Product and Month

Apr 2011 Mar 2011 Feb 2011 Jan 2011
۲ ۱ ۳ ۱ Mountain-500 Black,40
۱ ۲ Mountain-500 Black,44
۱ ۲ ۱ Mountain-500 Black,48
۱ ۲ ۱ Mountain-500 Silver,40
۱ ۱ ۱ Mountain-500 Silver,44
۲ Mountain-500 Silver,48
۷ ۱۰ Road-750 Black,44
۹ ۵ Road-750 Black,48
۳ ۶ ۶ ۱ Hitch Rack

 

اکنون شما اطلاعات بیشتری دارید زیرا می توانید Metadata بیشتری را مشاهده کنید. هر مقدار فروش اکنون دارای دو ویژگی یا Attribute می باشد: یک ماه و یک محصول خاص که فروخته شده است. سازمان شما سه مدل محصول در سایز ها و رنگ های متفاوتی برای کل نه محصول منحصر به فرد تولید می کند. بنابراین ۹ برچسب ویژگی در سمت چپ گزارش مشاهده می شود: برای هر محصول یک سطر

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

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

 

Table 1-4 Product Attributes

 

Size Color Model Product
۴۰ Black Mountain-500 Mountain-500 Black,40
۴۴ Black Mountain-500 Mountain-500 Black,44
۴۸ Black Mountain-500 Mountain-500 Black,48
۴۰ Silver Mountain-500 Mountain-500 Silver,40
۴۴ Silver Mountain-500 Mountain-500 Silver,44
۴۸ Silver Mountain-500 Mountain-500 Silver,48
۴۴ Black Road-750 Road-750 Black,44
۴۸ Black Road-750 Road-750 Black,48
Hitch Rack Hitch Rack

بدین ترتیب شما اکنون سه لیست اضافه تر برای برچسب های ویژگی محصول دارید که می توانید برای ایجاد گزارشات مختلف استفاده کنید. به دلیل اینکه برچسب های هر لیست به یکدیگر مرتبط هستند و مربوط به یک ویژگی، برچسب ها را اعضا (Member) می نامیم. بنابراین برای مثال ویژگی مدل دارای سه عضو: Hitch Rack, Mountain-500, and Road-750 و ویژگی رنگ دارای دو عضو : Black و Silver می باشد.

ویژگی محصول Product ویژگی کلیدی Key Attribute می باشد. ویژگی کلیدی منحصر به فرد نشان دهنده تمامی ویژگی های دیگر می باشد. در صورت مشاهده یکی از اعضای ویژگی محصول، می توانید اعضای دیگر ویژگی ها را برای آن محصول تشخیص دهید. راه دیگر برای تشخیص ویژگی کلیدی این است که وقتی لیستی از ویژگی های کلیدی مشابه جدول بالا ایجاد می کنید، اعضای ویژگی کلیدی منحصر به فرد هستند. مدل یک ویژگی کلیدی نیست. اگر به عضو Mountain-500 از ویژگی های Model نگاه کنید، نمی توانید رنگ یا سایز آن را تشخیص دهید.

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

 

 

Table 1-5 Adventure Works Units Sold by Model, Product, and Month

Apr 2011 Mar 2011 Feb 2011 Jan 2011
۶ ۶ ۸ ۳ Mountain-500
۲ ۱ ۳ ۱ Mountain-500 Black,40
۱ ۲ Mountain-500 Black,44
۱ ۲ ۱ Mountain-500 Black,48
۱ ۱ ۱ Mountain-500 Silver,40
۲ Mountain-500 Silver,44
Mountain-500 Silver,48
۱۶ ۱۵ Road-750
۷ ۱۰ Road-750 Black,44
۹ ۵ Road-750 Black,48
۳ ۶ ۶ ۱ Hitch Rack
۳ ۶ ۶ ۱ Hitch Rack

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

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

Table 1-6 Adventure Works Units Sold by Model and Month

Apr 2011 Mar 2011 Feb 2011 Jan 2011
۶ ۶ ۸ ۳ Mountain-500
۱۶ ۱۵ Road-750
۳ ۶ ۶ ۱ Hitch Rack

تاکنون مشاهده کردید که چطور می توان سطح جزئیات ویژگی محصول را به مجموعه ای از ویژگی های مرتبط تفکیک کرد. هنگام طراحی  multidimensional data analysis با تعداد زیادی از سلسله مراتب ها کار خواهید کرد. برای مثال، شما اغلب گزارش هایی را با دیتای مشتری، مناطق جغرافیایی، مشتری و دیگر ویژگی ها طراحی می کنید. همچنین یاد گرفتید که چطور ویژگی مدل و محصول می تواند در یک سلسله مراتب ساده سازمان دهی شوند و سپس گزارش هایی را با استفاده از این گروه ها و یا  دیتای جزئی تر طراحی کنید. در مقاله بعد تحت عنوان «سلسله مراتب ها در Data Analysis» به بررسی بیشتر انواع و چگونگی ایجاد سلسله مراتب ها می پردازیم.

توسط zahra riyahi zahra riyahi بدون دیدگاه

استفاده از Buttons ها در Power BI

استفاده از Button ها این امکان را برای شما فراهم می کند که گزارشات و دشبوردهایی را طراحی کنید که مشابه یک برنامه رفتار کنند، و به موجب آن، محیطی جذاب و خوشایند ایجاد کنید که کاربران بتوانند در محتوای Power BI کلیک، Hover کرده و تعامل برقرار کنند. می توانید از Button ها برای ایجاد گزارشات در Power BI Desktop استفاده کرده و گزارشات ایجاد شده را در Power BI Service به اشتراک گذاشته و منتشر کنید.

Button هایی که در Power BI Desktop برای استفاده در گزارشات و دشبوردها ایجاد می کنید در Power BI Service قابل انتشار می باشند.

ایجاد Button در گزارشات

برای ایجاد Button در یک گزارش  Power BI Desktop، در نوار بالای صفحه در Home Tab دکمه Button را انتخاب کنید، در نوار باز شده از بین مجموعه گزینه های موجود مطابق شکل زیر، می توانید Button مورد نظر خود را انتخاب کنید.

هنگامی که Button را به وجود می آورید و بر روی آن کلیک می کنید، در Visualization Pane گزینه های زیادی را می توانید مشاهده کنید که به شما کمک می کند که Button را براساس نیاز خود تنظیم کنید. برای مثال، میتوانید گزینه Button Text را خاموش و یا روشن کنید، آیکن Button ، عنوان، Fill وAction  که تعیین کننده عملکرد دکمه در زمان کلیک کاربر می باشد را تغییر دهید.

تنظیم ویژگی های Button در هنگام بدون نقش بودن، Hovered over یا در حالت انتخاب

 دکمه ها در Power BI  میتوانند دارای سه حالت باشند: پیش فرض (زمانی که در وضعیت انتخاب یاHovered Over نیستند)، در وضعیت Hovered over  و در وضعیت انتخاب( اغلب اشاره دارد به زمانی که در حالت کلیک است). بیشتر Card های موجود در Visualization Pane می توانند به صورت جداگانه براساس این سه حالت اصلاح شوند، و انعطاف پذیری زیادی را برای شخصی سازی دکمه ها برای شما فراهم کنند.

Card های زیر در Visualization Pane به شما امکان می دهد قالب بندی یا رفتار یک دکمه را براساس سه حالت آن تنظیم کنید.

  • Button text
  • Icon
  • Outline
  • Fill

برای انتخاب اینکه دکمه در هر حالت چطور باید ظاهر شود، یکی از Card ها را باز کرده و یکی از سه حالت را از لیست باز شده انتخاب کنید. در تصویر زیر باز شدن Outline و انتخاب یکی از سه حالت Default، Hover،  Selected را برای آن مشاهده می کنید.

انتخاب عملکرد (Action)  برای دکمه

می توانید هر عملکردی را که دکمه باید در حالت انتخاب کاربر داشته باشد را انتخاب کنید. همچنین می توانید گزینه هایی برای دکمه Action در Visualization pane در اختیار داشته باشید.

گزینه های Action عبارتند از:

  • Back
  • Bookmark
  • Q&A

انتخاب دکمه Back کاربر را به صفحه اخیر گزارش باز می گرداند. این گزینه به خصوص برای صفحات Drill-Down مفید می باشد.

انتخاب دکمه Bookmark، صفحه گزارش مربوط به Bookmark را که برای گزارش فعلی تعریف شده است، ارائه می شود. برای مطالعه بیشتر درباره کاربرد Bookmark ها در Power BI و نیز کاربرد Button ها در bookmark ها می توانید مقاله « Bookmark در Power BI  » را در سایت ما به آدرس www.keysun-co.com شرکت هوش تجاری کیسان مطالعه کنید.

انتخاب گزینه Q&A پنجره Explorer   Q&Aرا ارائه می دهد.

می توانید برای امتحان و یا استفاده از دکمه ها دکمه CTRL را نگه داشته و بر روی دکمه مورد نظر کلیک کنید.

توسط zahra riyahi zahra riyahi بدون دیدگاه

چطور گزارش ساخته شده در POWER BI را به اشتراک بگذاریم؟

گزارش آماده شده خود را می توانید بر روی Power BI Service با دیگران به اشتراک بگذارید, برای به اشتراک گذاشتن گزارش بر روی Power BI Service از طریق Power BI Desktop   راه های کمی وجود دارد.

میتوانید گزارش را بر روی Power BI Service ,Publish کنید, و یا به صورت یک فایل Pbix مستقیما بر روی Power BI Service , Upload کنید که برای این کار نیاز به اکانت Power BI دارید، و یا فایل Pbix را مانند سایر فایل ها ارسال کنید.

نخست اجازه دهید به روش Publish کردن مستقیم بر روی Power BI Service از Power BI Desktop بپردازیم. از تب Home نوار Ribbon، گزینه Publish را انتخاب کنید.

ممکن است از شما خواسته شود که وارد Power BI شوید، و یا مقصد را انتخاب کنید.

هنگامی که لینک را برای باز کردن گزارش بر روی Power BI انتخاب می کنید، گزارش شما در سایت Power BI شما در قسمت My workspace > Reports باز می شود.

راه دیگر برای اشتراک گزارشتان بارگذاری آن در Power BI Service  می باشد. وارد سایت https://app.powerbi.com شده، در قسمت Home  گزینه Get Data را از سمت چپ پایین صفحه برای شروع فرآیند بارگذاری دیتا انتخاب کنید.

در صفحه بعد دکمه Get را در قسمت Files انتخاب کنید.

 

در صفحه بعد، گزینه Load File  را انتخاب کنید. Browse کرده، فایل Power Bi Desktop.Pbix خود را انتخاب کنید، و بر روی Open کلیک کنید.

بعد از وارد کردن فایل، می توانید آن را در قسمت My workspace > Reports  در نوار سمت چپ Power BI Service ببینید.

ویژوال های متفاوت زیادی وجود دارند که می توانید برای ساختن گزارش خود در Power BI Service استفاده کنید، و به دشبورد اضافه کنید.

برای اشتراک گذاشتن گزارش و یا دشبورد، گزینه Share را از نوار بالای گزارش یا داشبوردی که باز است انتخاب کرده، و یا آیکن Share کنار نام گزارش یا دشبورد را در My workspace < Reports و یا My workspace < Dashboards انتخاب کنید.

گزارش یا دشبورد به اشتراک گذاشته شده خود را کامل کنید تا ایمیل بفرستد یا لینکی را برای اشتراک گزارش یا دشبورد خود با دیگران دریافت کنید

Power Bi Desktop اتصال به Diagnostics Port ها را پشتیبانی می کند. Diagnostics Port ها به سایر ابزارها امکان برقراری ارتباط جهت انجام اهداف تشخیصی، را می دهد. هنگام استفاده از Diagnostics Port انجام تغییرات در مدل پشتیبانی نمی شود. تغییرات در مدل ممکن است به از بین رفتن اطلاعات منجر شود.

توسط zahra riyahi zahra riyahi بدون دیدگاه

تفاوت بین OLEDB و ODBC

در این مقاله ابتدا توصیفی از SSIS connection managerهای OLE DB و ODBC ارائه می شود و سپس به بیان تفاوت میان آنها, هنگام برقراری ارتباط با SQL Server می پردازیم.

SSIS Connection Manager

به طور کلی SSIS Connection Manager ها برای پیکره بندی برقراری ارتباط بین SSIS و یک Data source خارجی مورد استفاده قرار میگیرند. انواع مختلفی از Connection Manager ها در SSIS وجود دارد.

در این مقاله لیستی از  SSIS Connection Manager ها را در SQL Server Data Tools برای Visual Studio 2017 را با توضیحات آن ارائه می شود. (این تصویر از قسمت Add SSIS Connection Manager نرم افزار Visual Studio برداشته شده است):

 

Connection Manager Description
ADO Connection manager for ADO connections
ADO.NET Connection manager for ADO.NET connections
CACHE Connection manager for cache
DQS Connection manager for DQS Server (Data Quality Services)
EXCEL Connection manager for Excel files
FILE Connection manager for files
FLATFILE Connection manager for flat files
FTP Connection manager for FTP
Hadoop Connection manager for Hadoop
HTTP Connection manager for HTTP connections
MSMQ Connection manager for the Message Queue task
MSOLAP100 Connection manager for Analysis Services connections
MULTIFILE Connection manager for multiple files
MULTIFLATFILE Connection manager for multiple flat files
ODATA Connection Manager for ODATA Services
ODBC Connection manager for ODBC connections
OLEDB Connection manager for OLE DB connections
ORACLE Connection manager for Oracle connections
PowerQuery Connection manager for Power Query Source
SMOServer Connection manager for SQL Server transfer tasks
SMTP Connection manager for Send Mail Tasks
SQLMOBILE Connection manager for SQL Server Compact connections
WMI Connection manager for the WMI tasks

 

SSIS Connection Manager ها می توانند از connection managers tab که در پایین صفحه اصلی قرار دارد اضافه شوند:

همانطور که در SSIS connection managers tab اشاره شده است, برای اضافه کردن Connection جدید ,بر روی صفحه راست کلیک کرده, و از منوی باز شده new connection manager را انتخاب کرده, و سپس نوع ارتباط مورد نظرتان را انتخاب کنید.

منوی باز شده تعداد کمی از انواع connection manager ها را شامل می شود, برای مشاهده همه انواع آن بر روی گزینه New Connection کلیک کنید.

OLE DB Connection manager

OLEDB مخفف Object Linking and Embedding, Database می باشد. این یک API ( application program interface مجموعه ای از پروتکل ها و ابزارهای روتین برای تولید برنامه های نرم افزاری است) است که توسط مایکروسافت طراحی شده و به کاربران این امکان را می دهد تا به انواع data sources ها با روش های یکسان دسترسی پیدا کنید.

بین تمام SSIS connection manager ها, OLE DB connection manager  ها محبوبیت بالایی دارند. هنگامی که گزینه OLE DB connection را داخل منوی باز شده انتخاب می کنید, پنجره پایین باز می شود.

در این پنجره, تمامی connection های مطرح شده در بالا به همراه خصوصیاتشان ذکر شده است. برای اضافه کردن connection جدید, دکمه New را انتخاب کنید. تصویر پایین فرم اصلی OLE DB connection configuration را نشان می دهد.

اگر بر روی نوار باز شده دکمه Provider  کلیک کنید, تمامی فراهم کنندگان  data sourcesهای در دسترس نمایش داده می شوند

خصوصیات اصلی  OLE DB connectionشامل موارد زیر می باشد:

  • Provider: یک OLE DB provider برای اتصال به یک data source مورد استفاده قرار می گیرد.
  • Server name: سروری که می خواهید به آن متصل شوید.
  • Authentication type: پارامترهای امنیتی مورد استفاده برای استقرار ارتباط
  • Database name: نام Database name که می خواهید به آن متصل شوید (در صورتی که این ویژگی تعیین نشده باشد, Database name پیش فرض استفاده می شود.)

 

 

به طور کلی OLE DB connection manager  در تمامی مواردی که می تواند به دیتا بیس های خارجی وصل شوند از قبیل :

  • Execute SQL Task
  • Execute T-SQL Task
  • OLE DB Source
  • OLE DB Destination
  • OLE DB command
  • Look up Transformation

مورد استفاده قرار می گیرد.

ODBC connection manager

ODBC مخفف Open Database Connectivity می باشد. این یک API استاندارد برای دسترسی به سیستم های مدیریت پایگاه داده می باشد. Provider های ODBC فقط به دیتابیس های رابطه ای دسترسی دارند و توسط OLE DB برای دسترسی به منابع داده مبتنی بر SQL استفاده می شوند.

ODBC SSIS connection manager ها نیز محبوب هستند و هنگامی که منابع داده به عنوان DSN (Database Source Name) در سیستم عامل تعریف می شوند, مورد استفاده قرار می گیرند.

برای اضافه کردن یک ODBC connection manager داخل connection manager tab panel راست کلیک کرده, و دکمه New Connection را انتخاب کنید. فرم زیر ظاهر می شود.

این فرم شامل تمام ODBC connection های مطرح شده می باشد. برای اضافه کردن یکی از آنها, بر روی دکمه New کلیک کنید. تصویر زیر فرم پیکره بندی ODBC connection manager را نمایش میدهد

می توان با انتخاب یک data source name (DSN) تعریف شده در سیستم عامل, یا نوشتن مستقیم یک Connection String یک ODBC Connection تعریف کرد. علاوه بر این, ممکن است نیاز به وارد کردن اطلاعات ورود به سیستم داشته باشید.

ADO.NET connection manager

ADO.NET مخفف ActiveX Data Objects using .NET framework می باشد. که شامل مجموعه ای از کلاس ها می باشد که خدمات دسترسی به داده را نمایش می دهد.

مشابه SSIS connection manager های دیگر, ADO.NET connection manager نیز اجازه دسترسی به data source های خارجی را فراهم میکند.

اینجا هم خصوصیات Connection از قبیل Provider, Server Name, authentication و Database name مشابه موارد قبل می باشد.

ADO.NET connection manager editor عمدتا توسط ADO.NET Source و ADO.NET Destination مورد استفاده قرار می گیرد.

 

 

OLE DB  , ODBC و ADO.NET

قبل از همه, خوب است بدانید که ADO.NET از Provider های OLE DB برای دسترسی به دیتا و OLE DB نیز از ODBC برای دسترسی به دیتابیس های رابطه ای استفاده می کند.

قبل از ارائه توصیفی از این سه دسته SSIS Connection managers, سعی خواهم کرد تعدادی از تفاوت های مابین آنها را بیان کنم.

SQL Syntax

SQL Syntax ممکن است برای هر نوع ارتباط به طور خاص زمانی که از پارامترها استفاده می کنیم متفاوت باشد برای مثال, زمانی که نیاز به استفاده از پارامترهای درون یک Execute SQL Task داشته باشیم, هر نوع ارتباط Syntax مربوط به خود را دارد که در جدول پایین نشان داده شده است:

 

Connection Type Marker Parameter name
ADO.NET @<parameter name> @<parameter name>
OLEDB ? ۰,۱,۲,۳ …
ODBC ? ۱,۲,۳ …

Data Sources

با اینکه ADO.NET و OLE DB می تواند به Data Source های مشابه متصل شود, ODBC فقط می تواند به سیستم های پایگاه داده رابطه ای اتصال پیدا کند و به منابع XML-based , Microsoft Exchange Server و باقی منابع امکان اتصال ندارد.

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

Performance

به طور خلاصه, تجربیات نشان میدهد که وقتی به یک پایگاه داده SQL  متصل می شوید, OLE DB عملکرد بالاتری در Extract و Load دیتا دارد.

بعد از نشان دادن تعدادی از تفاوت های بین SSIS connection manage ها, می توانید ملاحضه کنید که انتخاب یکی برای استفاده, می تواند براساس منطقی که می خواهید پیاده سازی کنید متفاوت باشد. بعد از سالها کار کردن با SSIS, من میتوانم استفاده از OLE DB connection manager ها را به یک دلیل اصلی توصیه کنم, و آن محبوبیت آن می باشد. از آنجایی که ممکن است در هنگام عیب یابی منابع زیادی را پیدا کنید, در حالی که هنگام استفاده از ADO.NET و ODBC نمی توانید.

 

توسط zahra riyahi zahra riyahi بدون دیدگاه

Automatic page refresh در Power BI service

در ادامه مقاله قبل که به فعال سازی ویژگی Automatic page refresh در Power Bi Desktop پرداختیم اکنون فعالسازی این ویژگی جدید را در Power BI Service مورد بررسی قرار می دهیم.

Automatic page refresh در Power BI service

شما می توانید  automatic page refresh intervals را برای گزارشاتی که بر روی Power BI Desktop تهیه شده اند و بر روی Power BI Service منتشر شده اند را نیز فعال کنید.

مراحل پیکره بندی Automatic page refresh برای گزارشاتی که بر روی Power BI service قرار دارند شبیه مراحل پیکره بندی power BI desktop می باشد, تصویر پایین مراحل پیکره بندی page refresh  را برای Power BI service نشان می دهد.

  • Automatic Page Refresh slider – برای روشن و خاموش کردن Page refresh
  • Page refresh interval value – عدد مربوط به بازه زمانی به روز رسانی که باید Whole number باشد.
  • Page refresh interval unit – واحد بازه زمانی به روز رسانی

Page refresh intervals

Page refresh intervals در Power BI Service تحت تاثیر نوع فضای کار قرار می گیرد که انواع گزارشات ز را شامل می شود:

  • انتشار یک گزارش در فضایی که automatic page refresh در آن فعال است.
  • ویرایش page refresh interval در فضایی که قبلا وجود داشته است.
  • ایجاد مستقیم یک گزارش در Service

Power BI Desktop محدودیتی برای refresh interval ندارد; فاصله زمانی به روز رسانی می تواند هر ثانیه تکرار شود.

اگر چه, هنگامی که گزارشات بر روی Power BI service منتشر می شوند, محدودیت های خاصی اعمال می شود, که در قسمت پایین به توضیح آن می پردازیم.

محدودیت در Refresh intervals

Page refresh intervals در Power BI Service تحت تاثیر نوع فضای کار قرار می گیرد که انواع گزارشات ز را شامل می شود:

  • انتشار یک گزارش در فضایی که automatic page refresh در آن فعال است.
  • ویرایش page refresh interval در فضایی که قبلا وجود داشته است.
  • ایجاد مستقیم یک گزارش در Service

Power BI Desktop محدودیتی برای refresh interval ندارد; فاصله زمانی به روز رسانی می تواند هر ثانیه تکرار شود.

اگر چه, هنگامی که گزارشات بر روی Power BI service منتشر می شوند, محدودیت های خاصی اعمال می شود, که در قسمت پایین به توضیح آن می پردازیم.

محدودیت در Refresh intervals

در Power BI Service, محدودیت های automatic page refresh  , براساس عواملی مانند Workspace و اینکه آیا از Premium services استفاده می شود, اعمال می شود.

برای توضیح نحوه عملکرد, اجازه دهید توضیحاتی در باره Capacities و Workspace بدهیم.

Capacities یک مفهوم اصلی Power BI می باشدکه مجموعه ای از منابع را نشان می دهد. (Storage, Processor و Memory) که به منظور Host و تحویل محتوای Power BI استفاده می شود. Capacities یا به صورت مشترک و یا به صورت اختصاصی می باشند. یک ظرفیت مشترک با دیگر کاربران Microsoft به اشتراک گذاشته می شود, در حالی که یک ظرفیت اختصاصی کاملا در اختیار یک مشتری واحد می باشد.

در ظرفیت مشترک, حجم کار بر روی منابع محاسباتی مشترک با سایرمشتریان اجرا می شود. از آنجایی که Capacity وظیفه اشتراک منابع را بر عهده دارد, محدودیت هایی برای اشتراک منصفانه منابع در نظر گرفته می شود, مانند تعیین حداکثر اندازه مدل (۱GB) و حداکثر بازه زمانی به روز رسانی روزانه (هشت بار در روز).

Power BI workspaces در ظرفیت های مختلفی قرار دارند و نمایانگر امنیت, همکاری و استقرار می باشند. هرکاربر Power BI یک Workspace اختصاصی تحت عنوان My Workspace دارد. Workspace های بیشتری نیز میتواند به منظور برقراری همکاری و استقرار به وجود بیایند, که با عنوان Workspaces شناخته می شود. به صورت پیش فرض, Workspaces (شامل Workspace های اختصاصی ) در ظرفیت مشترک تشکیل می شوند.

جدول جزئیات بیشتری را در مورد این ویژگی و محدودیت های هر نوع ظرفیت و Storage mode توضیح می دهد.

Storage Mode Dedicated Capacity Shared Capacity
Direct Query Supported – Yes.
Minimum refresh interval – ۱ second
Capacity admin override – Yes.
Supported – Yes.
Minimum refresh interval – ۳۰ minutes
Capacity admin override – No.
Import Supported – No.
Minimum refresh interval – N/A.
Capacity admin override – N/A.
Supported – No.
Minimum refresh interval – N/A.
Capacity admin override – N/A.
Mixed Mode (DQ + others) Supported – Yes.
Minimum refresh interval – ۱ second
Capacity admin override – Yes.
Supported – Yes.
Minimum refresh interval – ۳۰ minutes
Capacity admin override – No.
Live connect AS Supported – No.
Minimum refresh interval – N/A.
Capacity admin override – N/A.
Supported – No.
Minimum refresh interval – N/A.
Capacity admin override – N/A.
Live connect PBI Supported – No.
Minimum refresh interval – N/A.
Capacity admin override – N/A.
Supported – No.
Minimum refresh interval – N/A.
Capacity admin override – N/A.

هنگام انتشار گزارش فعال سازی   automatic page refresh از Power BI Desktop به Service , باید Credential را برای منبع داده DirectQuery  در Setting   تنظیم کنید.

توسط zahra riyahi zahra riyahi بدون دیدگاه

تفاوت OLAP و OLTP چیست؟

OLTP چیست؟

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

سیستم پردازش تراکنش آنلاین(OLTP) 

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

OLAP چیست؟

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

سیستم های پردازش تحلیلی آنلاین (OLAP)

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

OLAP OLTP
Integrated

Subject-oriented

Data  Driven:Data mining

Model  Driven: OLAP

Application-oriented

Event driven

Transaction -driven

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

توسط zahra riyahi zahra riyahi بدون دیدگاه

گروه بندی کردن در Power Bi Desktop

به وسیله Grouping در Power BI Desktop , می توانید المان ها, از قبیل Buttons, Textboxes, Shape images و هر المان دیگری که ایجاد کرده اید را در گزارش خود با یکدیگر گروه بندی کنید, درست همانند زمانی که Item ها را در Power Point با هم گروه بندی می کنید.  گروه بندی المان ها در Power BI این امکان را برای شما فراهم می کند که با گروه همانند یک المان واحد رفتار کنید, حرکت, تغییر اندازه, و کار با لایه های گزارش خود را آسان تر , سریعتر و شهودی تر کنید.

ایجاد گروه

برای ایجاد گروهی از المان ها در Power BI Desktop , ابتدا اولین المان را انتخاب کرده, سپس با نگه داشتن کلید CTRL یک یا چند المان را که قصد دارید در یک گروه قرار دهید را نیز انتخاب کنید, سپس بر روی کل این مجموعه راست کلیک کرده و گزینه Group را از منوی باز شده انتخاب کنید.

گروه ها بر روی نوار Selection نمایش داده می شوند. شما می توانید به همان تعداد گزارش های خود, گروه های المان ها را داشته باشید.

در تصویر زیر, گروه استرالیا در زیر گروه Cards قرار دارد. شما می توانید با انتخاب فلش کنار نام گروه, یک گروه را باز کرده و با انتخاب مجدد آن را ببندید.

بدون نوار Selection , می توانید با Drag & Drop کردن یک المان خاص را به گروه اضافه و یا حذف کنید.

به سادگی المانی را که می خواهید تنظیم کنید Drag کنید, و در جایی که می خواهید قرار دهید. لایه بندی المان ها در صورت وجود همپوشانی, با ترتیب آنها در لیست سفارش در Layer Order List مشخص می شود.

برای خارج کردن از گروه, کافیست بر روی گروه راست کلیک کرده و از منوی باز شده گزینه Ungroup را انتخاب کنید.

پنهان کردن و نشان دادن المان ها و گروه ها

به راحتیت می توانید با استفاده از Selection Pane گروه ها را پنهان و یا آشکار کنید. برای پنهان کردن گروه, دکمه چشم کنار نام گروه را کلیک کنید (یا هر المان خاصی). در عکس زیر, گروه  Australia پنهان است, و بقیه گروه های مستقر در Cards Group نمایش داده می شوند.

وقتی گروهی را پنهان می کنید, تمام المان های داخل آن گروه پنهان می شوند, و دکمه چشم کنار آنها خاکستری می شود (امکان خاموش و روشن شدن وجود ندارد, زیرا کل این گروه پنهان است). برای پنهان کردن تنها یک المان داخل یک گروه, به سادگی دکمه چشم کنار المان را خاموش کنید, و به این ترتیب تنها آن المان خاص در گروه پنهان می شود.

انتخاب المان ها در یک گروه

برای انتخاب Item ها در داخل یک گروه از المان ها, راه های کمی وجود دارد:

  • انتخاب یک فضای خالی در یک گروه (برای مثال فضای سفید بین المان ها) بدون انتخاب هیچ چیز دیگری
  • با انتخاب یک المان در داخل یک گروه, کل گروه را انتخاب می کنید, انتخاب دوم یک المان خاص را انتخاب می کند.
  • انتخاب یک گروه, و سپس یک شی دیگر در گزارش, و سپس انتخاب گروه از منوی راست کلیک, یک گروه تو در تو ایجاد می کند.
  • انتخاب دو گروه, و سپس زاست کلیک گزینه ای را برای Merge دو گروه انتخاب شده نمایش داده می شود.

 

اضافه کردن رنگ Background

همچنین می توانید رنگی را برای Background با استفاده از Formatting در Visualization Pane  انتخاب کنید.

  پس از اعمال رنگ پس زمینه, با کلیک روی فضای بین تصاویر در گروه, گروه را انتخاب می کنید(این کار را با کلیک کردن روی فضای سفید بین تصاویر در یک گروه, که گروه را انتخاب نمی کنید مقایسه کنید).

توسط zahra riyahi zahra riyahi بدون دیدگاه

اصول اولیه DAX در Power BI Desktop

این آموزش مخصوص کاربران جدید Power BI Desktop می باشد. این به این معنی است که یک معرفی ساده و کوتاه از اینکه چطور می توانید از Data Analysis Expressions (DAX)  برای انجام تعدادی از محاسبات پایه ای و تجزیه و تحلیل دیتا استفاده کنید. در این مقاله ما برخی مفاهیم, یک سری از کارهایی که می توانید انجام دهید, و تعدادی آزمون کوچک برای آزمایش آنچه آموخته اید را مرور خواهیم کرد. پس از کامل شدن این مقاله, شما باید درک خوبی از مهمترین مفاهیم اساسی در DAX داشته باشید.

DAX چیست؟

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

چرا DAX  اهمیت بسیاری دارد؟

بسیار کار ساده ایست که یک فایل Power BI Desktop جدید درست کنید و مقداری دیتا را به آن وارد کنید. به هیچ وجه نمی توانید بدون استفاده از فرمول های DAX گزارش هایی را ایجاد کنید که بینش ارزشمندی به شما بدهد. اما, در صورتی که نیاز به تحلیل نرخ در صدی رشد در دسته بندی محصولات و در بازه های زمانی متفاوت داشته باشید چطور؟ یا نیاز به محاسبه رشد سالانه و مقایسه آن نسبت به روند بازار داشته باشید؟  فرمول های DAX این توانایی و بسیاری توانایی های مهم دیگر را برای شما فراهم می کند. یادگیری نحوه ایجاد یک فرمول DAX  موثر به شما کمک می کند تا از دیتای خود نهایت استفاده را ببرید. وقتی اطلاعات مورد نیاز خود را بدست می آورید, می توانید شروع به حل مشکلات کسب و کارهای واقعی کنید که خط سیر اصلی شما را تحت تاثیر قرار داده اند. این قدرت Power BI است و DAX به شما کمک خواهد کرد که به آن دست پیدا کنید.

پیش نیازها

ممکن است شما در حال حاضر با فرمول نویسی در Microsoft Excel آشنایی داشته باشید. این دانش شما برای یادگیری DAX می تواند برای شما مفید باشد, اما حتی اگر شما هیچ تجربه ای از فرمول نویسی در Excel نداشته باشید نیز , مفاهیم توضیح داده شده در این مقاله به شما کمک خواهد کرد تا بلافاصله فرمول نویسی در DAX  را شروع کنید و به حل مشکلات BI در دنیای واقعی بپردازید.

ما قصد داریم بر روی یادگیری فرمول نویسی DAX در محاسبات, و به طور خاص در Measure  ها و ستون های محاسباتی تمرکز کنیم. شما باید در حال حاضر با Power BI Desktop, وارد کردن دیتا, اضافه کردن Field ها به یگ گزارش و نیز مفاهیم اساسی Measure و Calculated Column ( ستون های محاسباتی) آشنایی داشته باشید.

Measure

Power BI Desktop به شما کمک می کنه تا تنها با چند کلیک بینشی از دیتای خود بدست بیاورید. اما گاهی اوقات دیتای در دسترس شامل تمام مواردی که برای پاسخ دادن به برخی سئوالات مهمتان دارید نمی باشد, Measure ها به شما کمک می کنند تا به این موارد دسترسی پیدا کنید.

در Power BI Desktop, Measure ها در View Report یا Data View تعریف می شوند . Measure هایی که شما تعریف می کنید در قسمت Field ها با آیکن ماشین حساب نمایش داده می شوند. شما می توانید Measure هایتان را به هر اسمی که می خواهید نامگداری کنید, و آنها را به یک ویژوال جدید یا یک ویژوال موجود اضافه کنید.

Columns (ستون های محاسباتی)

به وسیله ستون های محاسباتی, می توانید دیتای جدیدی را به یک جدول موجود در مدل خود اضافه کنید. اما به جای نوشتن کوئری و Load  کردن دیتا به ستون جدید از یک منبع داده, یک فرمول DAX  می نویسید که دیتای ستون های مورد نظرتان را مشخص می کند. در Power BI Desktop ستون های محاسباتی از طریق گزینه New Column در Report View ایجاد می شوند.

بهترین روش برای یادگیری DAX   نوشتن یک سری فرمول های پایه ای و اولیه می باشد. این کار را می توانید با یک دیتای واقعی انجام داده و نتایج خود را مشاهده کنید.

برای شروع

یادگیری و فهم ما از DAX  به وسیله سه مفهوم اصلی احاطه شده است: Syntax( نحوه نگارش),  Functions(توابع) و Context( مفاد). البته مفاهیم مهم دیگری در DAX وجود دارد, اما درک این سه مفهوم بهترین پایه را برای ایجاد مهارت های DAX  شما فراهم می کند.

Syntax (نحوه نگارش)

قبل از اینکه فرمول را بنویسید, اجازه دهید نگاهی به Syntax فرمول در DAX بیندازیم. Syntax شامل عناصر متفاوتی است که یک فرمول را به وجود می آورند, یا به بیان ساده تر, نحوه نوشتن یک فرمول. برای مثال, اجازه دهید یک فرمول ساده DAX را برای یک Measure بررسی کنیم.

این فرمول شامل نکات Syntax زیر می باشد:

  1. نام Measure, Total Sales می باشد.
  2. اپراتور ( = ) نشان دهنده شروع فرمول می باشد. وقتی محاسبه ای انجام می شود, نتیجه ای را بر می گرداند.
  3. تابع SUM تمام ارقام موجود در ستون Sales[SalesAmount] را جمع می کند.
  4. پرانتز () یک Expression شامل یک یا چند آرگومان را احاطه می کند. تمامی توابع به حداقل یک آرگومان نیاز دارند. یک آرگومان یک مقدار را به تابع انتقال می دهد.
  5. جدول مورد نظر Sales
  6. ستون مورد نظر [SalesAmount] در جدول Sales . با این آرگومان, تابع SUM متوجه می شود در کدام ستون عملیات Sum را انجام بدهد.

زمانی که سعی می کنید فرمول های DAX را یاد بگیرید, برای شما بسیار مفید خواهد بود که تمام عناصر فرمول را به زبانی که هر روز فکر می کنید و صحبت می کنید بشکنید. برای مثال, فرمول بالا را به این صورت می توانید بخوانید:

برای Measure با نام Total Sales, محاسبه کن (=) مجموع تمام مقادیر ستون [SalesAmount] را در جدول Sales.

وقتی این Measure را به یک گزارش اضافه می کنید, این Measure مقدار فروش را برای هر یک از فیلد های دیگر مثلا شماره تلفن های موبایل در آمریکا محاسبه می کند و باز می گرداند.

ممکن است شما فکر کنید که, آیا این Measure همان کاری را انجام نمی دهد که انگار من می خواهم تنها ستون SalesAmount را به گزارش اضافه کنم؟ بله, ولی دلیل خوبی وجود دارد  برای اینکه Measure  را بنویسیم که مقادیر را از ستون SalesAmount جمع میکند: اینکه می توانیم از این Measure به عنوان یک آرگومان در دیگر فرمول ها استفاده کنیم. این ممکن است در حال حاضر کمی گیج کننده به نظر بیاید, اما با افزایش مهارت هایتان در فرمول نویسی DAX , دانستن این مطلب فرمول ها و مدل شما را کارآمد تر می کند. در حقیقت, Total Sales Measure را بعدها به عنوان یک آرگومان در فرمول های دیگر مشاهده خواهید کرد.

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

ملاحضه میکنید که اسم جدول Sales که ستون در آن قرار دارد بر نام ستون [SalesAmount] مقدم شده است. این به عنوان یک نام کامل شناخته می شود که شامل نام جدول و نام ستون می باشد, که نام جدول بر نام ستون تقدم دارد. برای ستون های دیگری که در این جدول وجود دارند نیازی به ذکر             نام جدول در فرمول نمی باشد. این می تواند فرمول های بزرگی را به وجود آورد که شامل ستون های بسیاری به صورت کوتاه تر و ساده تر باشند. با این حال, تمرین خوبی خواهد بود برای شما که اسم جدول را در فرمول Measure خود وارد کنید, حتی اگر در جدول یکسانی باشند.

نکته مهمی که باید به آن توجه شود این است که اگر نام جدول شامل Space, لغات کلیدی, یا کاراکترهای غیرمجاز باشد, لازم است که نام جدول را داخل Single quotation (‘ ‘)  قرار دهید. هنچنین اگر این نام شامل کاراکترهای خارج از محدوده حروف ANSI باشد, صرف نظر از اینکه سیستم شما از آنها پشتیبانی می کند یا خیر, لازم است نام جدول را نیز داخل quotation mark قرار بدهید.

بسیار اهمییت دارد که فرمول شما syntax درستی داشته باشید. در بسیاری موارد, در صورتی که Syntax درست نباشد, با Syntax Error مواجه می شویم. در موارد دیگر, ممکن است Syntax درست باشد ولی مقادیر آنچه را که شما نیاز دارید را باز نمی گرداند. DAX Editor در Power BI Desktop شامل ویژگی پیشنهاد دادن می باشد, که برای کمک به شما در انتخاب عناصر صحیح و فرمول های درست به لحاظ Syntax استفاده می شود.

اجازه بدهید یک فرمول ساده بنویسیم. این بخش به شما کمک خواهد کرد که Syntax فرمول را بهتر درک کنید و اینکه چطور ویژگی پیشنهاد دادن در نوار فرمول به شما کمک خواهد کرد.

Task: نوشتن یک فرمول Measure

در نمونه دیتای موجود

  • در Report View , در لیست Field ها, بر روی جدول Sales راست کلیک کرده, و سپس بر روی گزینه New Measure کلیک می کنیم.
  • در نوار فرمول باز شده, نام Measure را به Previous Quarter Sales تغییر می دهیم.
  • بعد از = حروف ابتدایی CAL را تایپ می کنیم, سپس بر روی نام Function مورد نظر که قصد استفاده از آن را داریم, دابل کلیک می کنیم. در این فرمول, شما می خواهید از تابع CALCULATE استفاده کنید.

از تابع CALCULATE برای فیلتر مقادیری که میخواهیم با آرگومانی که در تابع Calculate وارد کرده ایم جمع کنیم استفاده می کنیم, تابع Calculate باید حداقل دارای ۲ آرگومان باشد, اولین ستون ستونی است که می خواهیم محاسبه کنیم و دومین ستون ستونی است که قرار است بر روی آن فیلتر شود.

  • بعد از باز کردن پرانتز نیاز هست که آرگومان دیگری را به تابع SUM پاس بدهیم.
  • سپس حروف ابتدایی جدول مورد نظر را تایپ کرده و نام جدول و ستون مورد نظر را انتخاب می کنیم, و سپس پرانتز را می بندیم. این اولین آرگومان تابع Calculate ما می باشد.
  • سپس یک کاما و Space را برای مشخص کردن اولین فیلتر تایپ می کنیم, سپس PREVIOUSQUARTER را تایپ می کنیم این فیلتر ما می باشد.

از تابع PREVIOUSQUARTER برای فیلتر کردن نتایج تابع SUM در فصل اخیر استفاده می کنیم.

  • بعد از پرانتز باز در تابع PREVIOUSQUARTER ستونی را که شامل رنجی از دیتا می باشد را وارد می کنیم که در این مثال نام ستون Calendar[DateKey] می باشد. تابع PREVIOUSQUARTER نیازمند یک آرگومان می باشد.
  • اطمینان حاصل کنید که هر دو آرگومان را در تابع وارد کرده اید, و سپس با دو پرانتز تابع را ببندید.

در نهایت فرمول شما به این صورت خواهد بود:

Previous Quarter Sales = CALCULATE(SUM(Sales[SalesAmount]), PREVIOUSQUARTER(Calendar[DateKey]))

  • سپس در آخر گزینه و یا Enter را برای اعمال تغییرات کلیک میکنیم.

 

توسط zahra riyahi zahra riyahi بدون دیدگاه

ترکیب دیتا

در ادامه مقاله قبل مبنی بر تغییر شکل و ترکیب دیتا, اکنون می پردازیم به ترکیب و ادغام دیتای استخراج شده از دو Data Source متفاوت

تاکنون توانستیم دیتا را براساس نیاز تغییر دهیم, حال قصد داریم بهData source  دیگری وصل شده و دیتا را ترکیب کنیم.

ترکیب دیتا

دیتای در دسترس ما درباره نواحی مختلف جالب می باشد, و برای ایجاد آنالیز های بیشتر مفید می باشد. ولی یک مشکل وجود دارد : اکثر داده های موجود در آن از یک مخفف دو حرفی برای کدهای ناحیه استفاده کرده است و نه نام کامل, بنابراین ما به راهی نیاز داریم تا نامهای ایایالت ها را با نام های مختصرشان مرتبط کنیم.

برای این کار به دیتای دیگری نیاز داریم که حاوی اطلاعات مورد نیاز ما باشد.

http://en.wikipedia.org/wiki/List_of_U.S._state_abbreviations

سپس از نوار Home در Query Editor , New Source و سپس گزینه Web  را انتخاب می کنیم و آدرس سایت مورد نظر را که حاوی این اطلاعات می باشد را وارد کرده و سپس Connect را کلیک می کنیم, در این مرحله در قسمت Navigator آنچه در Page مورد نظر یافت می شود نشان داده می شود که از بین این موارد ما Codes and abbreviations  را انتخاب می کنیم که حاوی دیتای مورد نظر ما می باشد.

برای شکل دادن به این دیتا مراحل زیر را انجام می دهیم:

  • سطر اول را حذف می کنیم, این سطر نتیجه روشی است که جدول در Web ایجاد شده است, و به آن نیازی نداریم. از نوار Home گزینه Reduce Rows را کلیک کرده, سپس گزینه Remove Rows و در نهایت Remove Top Rows را کلیک می کنیم.
  • پنجره Remove Top Rows ظاهر می شود, به شما این امکان را می دهد ک تعداد سطرهایی که می خواهید حذف کنید را مشخص کنید.( در صورتی که Power BI اتفاقی سرستون جداول را به عنوان یک سطر وارد دیتای شما کرد, می توانید گزینه Use First Row As Headers را از Home Tab و یا Transform برای اصلاح جدول خود انتخاب کنید. )
    • خذف ۲۶ سطر از پایین جدول, این سطور درباره مناطق هستند, و ما نیازی به آنها نداریم. از نوار Home, Reduce Rows,Remove Rows ,  Remove Bottom Rows را انتخاب می کنیم.

    • از آنجایی که ستون Retirement Stats برای Washington DC اطلاعاتی ندارد, لازم است که آن را از لیست فیلتر کنیم. برای این منظور نوار کنار ستون Region Status را باز می کنیم, سپس علامت تیک کنار Federal district را بر میداریم.

  • حذف تعدادی از ستون هایی که نیازی به آنها نداریم, ما تنها به ارتباط بین نواحی و کلمه دو حرفی اختصاری آن نیاز داریم, بنابراین می توانیم تعدادی از ستون ها را حذف کنیم. ابتدا یکی از ستون ها را انتخاب کرده سپس با نگه داشتن دکمه CTRL باقی ستون ها را نیز انتخاب می کنیم و سپس از Home Tab , Remove Columns> Remove Columns را انتخاب می کنیم.
  • تغییر نام ستون ها و جداول, به طور معمول چند روش برای تغییر نام یک ستون وجود دارد, ابتدا ستون را انتخاب کرده و سپس گزینه rename را از Transform tab انتخاب می کنیم, و یا با راست کلیک کردن بر روی نام ستون گزینه Rename را از نوار باز شده انتخاب می کنیم.
    • برای تغییر نام جدول تنها کافی است که نام جدول را در قسمت Name مربوط به نام Query Settings وارد کنید.

    حالا میتوانیم جدول را به روشی که می خواهیم تغییر دهیم, ابتدا اجازه دهید این دو جدول را با یکدیگر ترکیب کرده و تبدیل به یک جدول کنیم, از آنجایی که جداول ما اکنون نتیجه ای هستند از کوئری هایی که بر روی داده ها استفاده کردیم, آنها را در قالب کوئری در نظر می گیریم.

    دوروش ابتدایی برای ترکیب کوئری ها وجود دارد, Merging و Appending

    وقتی شما یک یا چند ستون دارید که میخواهید به کوئری دیگری اضافه کنید, لازم است که کوئری ها را Merge کنید. و زمانی که سطرهایی دارید که میخواهید به کوئری اضافه کنید باید کوئری ها را Append کنید.

    در این مثال, ما می خواهیم کوئری ها را Merge کنیم. برای شروع, از سمت چپ Query Editor کوئری را انتخاب می کنیم که می خواهیم با کوئری دیگری Merge کنیم, که در این مثال Retirement Stats می باشد. سپس گزینه Combine>Merge Queries را از Home Tab انتخاب می کنیم.

    ممکن است نیاز باشد که سطوح حریم را مشخص کنید, تا اطمینان حاصل کنید که دیتا با دیتا هایی که نمیخواهید ترکیب نمی شود.

    سپس پنجره Merge باز می شود, به ما این امکان را می دهد که انتخاب کنیم که کدام جدول با جدول انتخاب شده ما ترکیب شود, و سپس ستون های ستون های هماهنگ با یکدیگر را برای Merge انتخاب می کنیم, در صورتی که ستون ها را درست انتخاب کرده باشیم گزینه OK فعال می شود.

    یک ستون جدید در انتهای جدول و یا کوئری ایجاد می شود, که شامل محتوای جدول و یا کوئری می باشد که با کوئری موجود ادغام شده است. تمام ستون های کوئری های Merge شده در ستون جدید جمع می شوند, اما می توانید با انتخاب گزینه  Expand, از جدول, ستونی را که می خواهید انتخاب کنید.

    برای Expand  کردن جدول Merge, و انتخاب ستون های مورد نظر, آیکن Expand () را کلیک کنید. پنجره Expand ظاهر می شود.

    در این مثال, فقط ستون State Code را می خواهیم, بنابراین تنها این ستون را انتخاب می کنیم و سپس OK می کنیم. و تیک گزینه Use original column name as prefix را بر می داریم چون به آن نیازی نداریم یا آن را نمی خواهیم, اگر این گزینه را در حالت انتخاب شده رها کنیم, ستون Merge شده New Column. State Code نامیده می شود (اسم ستون اصلی, یا New Column, سپس یک نقطه و سپس نام ستونی که داخل کوئری آورده شده است).

    اکنون یک کوئری (جدول) واحد داریم که از ادغام دو Data Source ایجاد شده است, که هر کدام براساس نیاز ما تغییر شکل داده شده اند.

    این کوئری می تواند به عنوان یک جدول پایه برای بدست آوردن آمار ها و اطلاعات جالب زیادی از قبیل آمار هزینه مسکن, آمار جمعیت و یا فرصت های شغلی در هر ایالت مورد استفاده قرار بگیرد.

    برای اعمال کردن تغییرات به وجود آورده و بستن Query Editor , گزینه Close & Apply را از نوار Home انتخاب می کنیم. Dataset تغییر یافته در Power BI Desktop ظاهر می شود, که برای ایجاد گزارش ها آماده می باشد.