مقالات

بهترین قوانین تمرین برای بهبود عملکرد در Power BI

بهترین قوانین تمرین برای بهبود عملکرد در Power BI

تعداد زیادی مقاله ، پست وبلاگ و فیلم وجود دارد که توصیه هایی را برای بهترین روش ها برای Power BI و مدل جدولی به اشتراک می گذارند.

 خواندن این موارد برای یادگیری رویکرد توسعه مناسب البته ضروری است.

با این حال ، آیا خوب نیست که این بهترین روش ها در یک مکان واحد مدون شوند و هنگام تهیه مدل خود ، شما را از یک مسئله مدل سازی آگاه کنند؟

بهترین قوانین تمرین برای بهبود عملکرد در Power BI
قوانین Power BI

 به نحوه کارکرد «غلط گیر املا» در Microsoft Word فکر کنید.

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

این شامل توصیه هایی برای نامگذاری ، تجربه کاربر و بهینه سازی های رایج است که می تواند برای بهبود عملکرد ارائه شود.

خوشبختانه اساس این ابزار از قبل وجود دارد. این بهترین تجزیه و تحلیل تجربی در Tabular Editor است.

 Tabular Editor ابزاری برای جامعه منبع باز است که توسط Daniel Otykier که Power BI MVP و عضو برجسته برنامه مشارکت کننده Power BI است ، ساخته شده است.

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

در عرض چند ثانیه کل مدل شما را در برابر هر یک از قوانین اسکن می کند و لیستی از تمام اشیا را که شرایط موجود در هر قاعده را برآورده می کنند ، ارائه می دهد.

 انجام این کار به صورت دستی انجام می شود … مخصوصاً در مدلی با جدول ها و اندازه گیری های زیاد. درعوض ، این کار سریع انجام می شود!

برای روشن شدن ، این موتور قاعده ممکن است در برابر هر مبدا / مقصد مدل جدولی مورد استفاده قرار گیرد – خواه این مدل در Power BI Desktop ، Analysis Services ، Azure Analysis Services یا Power BI Premium باشد.

قوانین Power BI

اکنون ، بیایید بهترین قوانین تمرین را ببینیم. همانطور که در زیر می بینید ، قوانین به چند دسته تقسیم می شوند.

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

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

عبارات DAX

  • برای تقسیم از تابع DIVIDE استفاده کنید
  • استفاده ازعملکرد IFERROR خودداری کنید
  • منابع ستون باید کاملاً واجد شرایط باشند
  • منابع اندازه گیری باید فاقد صلاحیت باشد
  • اقدامات نباید ارجاع مستقیم سایر اقدامات باشد
  • هیچ دو اقدامی نباید تعریف یکسانی داشته باشند
  • برای روابط مجازی از عملکرد TREATAS به جای INTERSECT استفاده کنید

پیشگیری از خطا

  • ستون های داده باید دارای یک ستون منبع باشند
  • ستون های محاسبه شده باید یک عبارت داشته باشند

قالب بندی

  • افزودن دسته داده برای ستون ها
  • ستون های عددی را خلاصه نکنید
  • حرف اول اشیا باید بزرگ باشد
  • ستون های جدول واقعیت را پنهان کنید
  • کلیدهای خارجی را مخفی کنید
  • کلیدهای اصلی را علامت گذاری کنید
  • ماه (به عنوان یک رشته) باید مرتب شود
  • اشیا should نباید با فاصله شروع یا ختم شوند
  • درصد ها باید با هزاران جدا کننده و یک اعشاری قالب بندی شوند
  • ستون های پرچم را به صورت رشته های مقدار Yes / No قالب بندی کنید
  • رشته قالب را برای ستون های “تاریخ” ارائه دهید
  • رشته قالب را برای ستون های “ماه” ارائه دهید
  • رشته فرمت را برای اقدامات ارائه دهید
  • ستون های رابطه باید از نوع داده های عدد صحیح باشند
  • اعداد کامل باید با هزار جدا کننده و بدون اعشار قالب بندی شوند

نگهداری

  • اطمینان حاصل کنید که جداول دارای روابط هستند
  • اشیا with بدون شرح
  • منابع داده ای را که هیچ پارتیشن به آنها ارجاع نمی دهد حذف کنید
  • نقشهای بدون عضو را حذف کنید
  • ستون های غیر ضروری را بردارید
  • اقدامات غیرضروری را حذف کنید

نامگذاری کنوانسیون ها

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

کارایی

  • از روابط دو جهته در برابر ستونهای با کاردینیت بالا جلوگیری کنید *
  • از روابط بیش از حد دو جهته یا چند به چند پرهیز کنید
  • از معماری طرحواره دانه های برف اجتناب کنید
  • از انواع داده های شناور استفاده نکنید
  • جداول بزرگ باید تقسیم شوند *
  • منطق سطح سطح ردیف (RLS) را محدود کنید
  • روابط بسیاری به بسیاری باید یک جهت باشد
  • تحولات پرس و جو برق را به حداقل برسانید
  • مدل باید یک جدول تاریخ داشته باشد
  • با استفاده از پرس و جو مستقیم و بدون تجمع
  • تعداد ستون های محاسبه شده را کاهش دهید
  • استفاده از ستون های محاسبه شده ای که از عملکرد RELATED استفاده می کنند را کاهش دهید
  • استفاده از جداول محاسبه شده را کاهش دهید
  • استفاده از ستون های طولانی با cardinality بالا را کاهش دهید **
  • جدول تاریخ خودکار را حذف کنید
  • ستون های زائد را در جداول مربوطه حذف کنید
  • IsAvaiableInMdx را روی ستون های غیر مشخص روی false تنظیم کنید
  • تقسیم تاریخ و زمان ***
  • جداول تاریخ / تقویم باید به عنوان جدول تاریخ علامت گذاری شوند
  • داده های محوری غیرمحور (ماه)

* برای اجرای این قانون ، ابتدا باید این اسکریپت را به صورت مستند در اینجا اجرا کنید.

** برای اجرای این قانون ، ابتدا باید این اسکریپت را به همان روال یادداشت بالا اجرا کنید.

*** برای اجرای این قانون ، ابتدا باید این اسکریپت را به همان روال یادداشت بالا اجرا کنید.

توجه: هر یک از قوانین ستاره دار (*) به Tabular Editor نسخه ۲.۱۲.۱ یا بالاتر نیاز دارد.

بارگیری قوانین

در اینجا مراحل بارگیری بهترین قوانین در ویرایشگر محلی Tabular وجود دارد.

  1. Tabular Editor را بارگیری و نصب کنید.
  2. Tabular Editor را باز کرده و کد زیر را در پنجره Advanced Scripting اجرا کنید. *

System.Net.WebClient w = new System.Net.WebClient();

string path = System.Environment.GetFolderPath(System.Environment.SpecialFolder.LocalApplicationData);

string url = “https://raw.githubusercontent.com/microsoft/Analysis-Services/master/BestPracticeRules/BPARules.json”;

string downloadLoc = path+@”\TabularEditor\BPARules.json”;

w.DownloadFile(url, downloadLoc);

 

  1. Tabular Editor را ببندید و دوباره باز کنید.

نکته: کد فوق را به عنوان یک اقدام سفارشی ذخیره کنید تا بتوانید به راحتی آخرین قوانین را از GitHub وارد کنید.

متناوباً ، در اینجا روش “کمتر فانتزی” برای بارگذاری قوانین در مثال خود از Tabular Editor (نگه داشتن مرحله ۱ از بالا) وجود دارد.

۲- بهترین قوانین تمرین را از GitHub (BPARules.json) بارگیری کنید.

۳- در فهرست شروع ،٪ localappdata٪ را تایپ کرده و Enter را بزنید.

۴- به پوشه “TabularEditor” بروید.

۵- فایل قوانین (.json) را کپی کرده و در پوشه TabularEditor جایگذاری کنید. *

۶- Tabular Editor را باز کرده و به مدل خود متصل شوید.

۷- از منوی File “Tools” را انتخاب کرده و “Best Analyzer” را انتخاب کنید.

۸- روی نماد Refresh (به رنگ آبی) کلیک کنید.

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

* توجه: این پرونده BPARules.json موجود را بازنویسی می کند (در صورت داشتن قوانین قبلی).

مشاهده جزئیات قانون

برای مشاهده جزئیات بیشتر در مورد یک قانون خاص ، به “Tools -> Manage BPA Rules” در Tabular Editor بروید. روی “Rules for the local user ” (قوانین برای کاربر محلی) کلیک کنید.

بهترین قوانین تمرین برای بهبود عملکرد در Power BI
قوانین Power BI

بعد ، بر روی هر قانونی در مجموعه زیر کلیک کنید و “Edit Rule ” (ویرایش قانون) را کلیک کنید.

بهترین قوانین تمرین برای بهبود عملکرد در Power BI
قوانین Power BI

 

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

برای دانلود دوره آموزشی پاور بی آی کلیک کنید.

رفع مشکلات

برخی از موارد برجسته شده توسط بهترین قوانین تمرین بسیار ساده هستند و در عرض چند ثانیه قابل رفع هستند.

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

تمام کاری که شما باید انجام دهید این است که بر روی یک شی کلیک راست کنید (یا چندین قانون را در یک قاعده انتخاب کنید) در بهترین تجزیه و تحلیل بهترین روش و “ایجاد اسکریپت رفع” (Generate fix script) این یک اسکریپت C # را کپی می کند که می تواند در پنجره Advanced Scripting در Tabular Editor جایگذاری و اجرا شود.

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

همچنین می توانید از گزینه “Apply fix” استفاده کنید. این بلافاصله اسکریپت Generate fix را اجرا می کند.

 من توصیه می کنم افراد با استفاده از اسکریپت Generate fix شروع کنید زیرا به شما امکان می دهد دقیقاً آنچه اتفاق می افتد را ببینید.

هرچه با این ابزار راحت تر می شوید ، احساس راحتی کنید و “Apply fix” را امتحان کنید.

بهترین قوانین تمرین برای بهبود عملکرد در Power BI

با کلیک راست روی یک شی object می توانید گزینه ای برای تولید یک اسکریپت ثابت یا اعمال یک اصلاح فراهم کنید. این فقط برای مجموعه محدودی از قوانین امکان پذیر است.

بهترین قوانین تمرین برای بهبود عملکرد در Power BI
قوانین Power BI

این اسکریپت C # است که توسط “Generate fix script” تولید شده است. در اینجا آن را به پنجره Advanced Scripting چسبانده شده است.

همانطور که قبلاً ذکر شد ، فقط برخی از قوانین دارای مکانیزم تعمیر داخلی هستند. قوانین پیچیده دیگر اینگونه نیست.

اینجاست که ضروری است قانون را در پنجره “Manage Best Practice Rules” پیدا کنید ، روی “Edit Rule” کلیک کنید و شرح قانون را بخوانید.

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

غیرفعال کردن قوانین

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

ابتدا می توانید علامت یک قانون را در پنجره «مدیریت بهترین روش های عملی»( Manage Best Practice Rules) بردارید. با این کار قانون به طور کلی غیرفعال می شود.

اگر می خواهید برای یک شی خاص قانونی غیرفعال کنید ، می توانید روی یک شی در بهترین تجزیه و تحلیل بهترین روش کلیک راست کرده و “نادیده گرفتن موارد” (Ignore items) را کلیک کنید (به تصویر قبلی مراجعه کنید).

شدت قانون

گزینه ای برای تعیین سطح “شدت” (Severity) برای هر قانون وجود دارد.

وقتی قوانین تجزیه و تحلیل بهترین روش در داخل Tabular Editor اجرا شود ، این هیچ تأثیری ندارد.

با این حال ، اگر مدلی را با استفاده از گزینه Command Line مستقر کرده و قوانین بهترین تجزیه و تحلیل را برای اجرا تعیین کنید ، سطح شدت بازی می شود.

نتیجه

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

برای دانلود دوره آموزشی پاور بی آی کلیک کنید.


پیام بگذارید

پشتیبانی 24 ساعته آنلاین