رفع مشکلات عملکرد در Power BI
گاهی اوقات، سازمان ها باید هنگام اجرای گزارش ها به مسائل مربوط به عملکرد رسیدگی کنند. Power BI ابزار Performance Analyzer را برای کمک به عیبیابی و سادهسازی فرآیند ارائه میکند. سناریویی را در نظر بگیرید که در آن در حال تهیه گزارش برای تیم فروش در سازمان خود هستید.
شما داده های خود را که در چندین جدول در پایگاه داده SQL تیم فروش قرار دارد، با ایجاد یک اتصال داده به پایگاه داده از طریق DirectQuery وارد کرده اید. همانطور که تصاویر و فیلترهای اولیه را ایجاد می کنید، متوجه خواهید شد که برخی از جداول سریعتر از بقیه درخواست می شوند و پردازش برخی از فیلترها نسبت به سایرین زمان بیشتری می برد.
بهینه سازی عملکرد در Power Query
عملکرد Power Query به عملکرد در سطح منبع داده بستگی دارد. تنوع منابع داده ای که Power Query ارائه می دهد بسیار زیاد است و تکنیک های تنظیم عملکرد برای هر منبع به همان اندازه گسترده است.
برای مثال، اگر دادهها را از Microsoft SQL Server استخراج میکنید، باید دستورالعملهای تنظیم عملکرد محصول را دنبال کنید. تکنیکهای تنظیم دقیق عملکرد SQL Server شامل پروفایلسازی، ارتقاء سختافزار، تنظیم زمان اجرا و فشردهسازی دادهها است.
این موضوعات در اینجا خارج از محدوده هستند و تنها به عنوان مثال برای آشنایی بیشتر با منبع داده و استفاده از استفاده از Power BI و Power Query توضیح داده شده اند.
Power Query با استفاده از تکنیکی به نام Query Folding از عملکرد خوب منبع داده بهره می برد.
Query Folding
Query Folding در Power Query Editor به شما کمک میکند تا عملکرد گزارشهای Power BI خود را افزایش دهید. کوئری Folding فرآیندی است که توسط آن تغییرات و ویرایش هایی را در Power Query Editor انجام می دهید.
آنها به طور همزمان به عنوان پرس و جوهای اصلی یا دستورات ساده Select SQL ردیابی می شوند در حالی که شما به طور فعال تغییرات را ایجاد می کنید. دلیل اجرای این فرآیند این است که اطمینان حاصل شود که این تغییرات در سرور منبع داده اصلی رخ می دهد و بر منابع محاسباتی Power BI تأثیر نمی گذارد.
می توانید از Power Query برای بارگذاری داده ها در Power BI استفاده کنید. با استفاده از ویرایشگر Power Query، می توانید تغییرات بیشتری در داده های خود ایجاد کنید، مانند تغییر نام یا حذف ستون ها، پیوستن، تقسیم، فیلتر کردن یا گروه بندی داده های خود.
سناریویی را در نظر بگیرید که در آن نام چند ستون را در دادههای فروش تغییر دادهاید و ستونهای شهر و ایالت را در قالب «ایالت شهر» ادغام کردهاید. در همین حال، ویژگی query query این تغییرات را در نمایش داده های بومی ردیابی می کند.
سپس، زمانی که دادههای خود را بارگیری میکنید، تبدیلها به طور مستقل در منبع اصلی اتفاق میافتند و از بهینهسازی عملکرد در Power BI اطمینان حاصل میکنند.
مزایای Query Folding
- کارایی بیشتر در به روز رسانی داده ها و به روز رسانی افزایشی. وقتی جداول داده را با استفاده از پرس و جو وارد میکنید، Power BI میتواند منابع را بهتر تخصیص دهد و دادهها را سریعتر تازهسازی کند، زیرا Power BI نیازی به انجام هیچ تغییری به صورت محلی ندارد.
- سازگاری خودکار با حالتهای DirectQuery و Dual Storage. همه منابع داده DirectQuery و حالت ذخیره سازی دوگانه باید دارای قابلیت پردازش سرور Back-end برای اتصال مستقیم باشند، به این معنی که تاشو query یک ویژگی خودکار است که می توانید از آن استفاده کنید. اگر بتوان همه تبدیلها را به یک عبارت Select کاهش داد، کوئری میتواند ایجاد شود.
سناریوی زیر پرس و جو در حال انجام را نشان می دهد.
در این سناریو، شما مجموعه ای از پرس و جوها را در چندین جدول اعمال می کنید.
پس از افزودن یک منبع داده جدید با استفاده از Power Query و رفتن به Power Query Editor، به تنظیمات Query رفته و مطابق شکل زیر بر روی آخرین مرحله اعمال شده کلیک راست کنید.
اگر گزینه View Native Query در دسترس نباشد (با حروف پررنگ نمایش داده نمی شود)، این مرحله تاشو query برای این مرحله امکان پذیر نیست و باید در قسمت Apps Steps کار کنید تا به مرحله ای برسید که View Native Query است.
موجود (نمایش داده شده به صورت پررنگ). این فرآیند پرس و جو اصلی مورد استفاده برای تبدیل مجموعه داده را نشان می دهد.
درخواستهای اصلی برای تبدیلهای زیر امکان پذیر نیست:
- افزودن ستون فهرست
- ادغام و الحاق ستون جداول مختلف با دو منبع متفاوت
- تغییر نوع داده یک ستون
- اجرای توابع پیچیده DAX
یک دستورالعمل خوب برای به خاطر سپردن این است که اگر بتوانید به یک دستور SELECT SQL تبدیل کنید، که شامل عملگرها و بندهایی مانند GROUP BY، SORT BY، WHERE، UNION ALL و JOIN است، می توانید از پرس و جوی تاشو استفاده کنید.
در حالی که پرس و جو یکی از گزینه ها برای بهینه سازی عملکرد هنگام بازیابی، وارد کردن و آماده سازی داده ها است، گزینه دیگر تشخیص پرس و جو است.
تشخیص پرس و جو
ابزار دیگری که می توانید برای مطالعه عملکرد پرس و جو استفاده کنید، تشخیص پرس و جو است. این ویژگی به شما امکان میدهد تعیین کنید که چه تنگناهایی (در صورت وجود) هنگام بارگیری و اصلاح دادهها، تازه کردن دادهها در Power Query، اجرای دستورات SQL در Query Editor و غیره وجود دارد. برای دسترسی به Query Diagnostics در Power Query Editor، به نوار ابزار در نوار صفحه بروید.
هنگامی که آماده شروع به تغییر داده های خود یا انجام سایر ویرایش ها در ویرایشگر Power Query هستید، در برگه Session Diagnostics، Start Diagnostics را انتخاب کنید.
پس از اتمام، مطمئن شوید که Stop Diagnostics را انتخاب کرده اید.
با انتخاب مرحله تشخیص، همانطور که در تصویر زیر نشان داده شده است، به شما نشان می دهد که چقدر طول می کشد تا آن مرحله را اجرا کنید.
این انتخاب می تواند به شما بگوید که آیا یک مرحله بیشتر از سایر مراحل طول می کشد، که بعداً به عنوان نقطه شروعی برای تحقیقات بیشتر عمل می کند.
این ابزار زمانی مفید است که می خواهید عملکرد Power Query را برای کارهایی مانند بارگیری مجموعه داده ها ، بازخوانی داده ها یا اجرای سایر کارهای دگرگون کننده تجزیه و تحلیل کنید.
تکنیک های دیگر برای بهینه سازی عملکرد
راه های دیگر برای بهینه سازی عملکرد پرس و جو در Power BI عبارتند از:
- تا حد امکان داده ها را در منبع داده اصلی پردازش کنید.
Power Query و Power Query Editor به شما امکان پردازش داده ها را می دهند. با این حال، قدرت پردازش مورد نیاز برای تکمیل این کار ممکن است عملکرد سایر بخشهای گزارشهای شما را کاهش دهد.
به طور کلی، پردازش تا حد امکان در منبع داده بومی روش خوبی است.
- از پرس و جوهای SQL بومی استفاده کنید.
هنگام استفاده از DirectQuery برای پایگاه داده های SQL، همانطور که برای سناریوی ما وجود دارد، مطمئن شوید که داده ها را از رویه های ذخیره شده یا عبارات جدول رایج (CTE) استخراج نمی کنید.
- تاریخ و زمان را در صورت پیوستن از هم جدا کنید.
اگر هر یک از جداول شما دارای ستون هایی است که تاریخ و زمان را با هم ترکیب می کند، قبل از وارد کردن آنها به Power BI، مطمئن شوید که آنها را در ستون های جداگانه جدا کرده اید.
این روش توانایی فشرده سازی را افزایش می دهد.
برای خرید لایسنس نرم افزار Power BI ، میتوانید از خدمات ما استفاده نموده و درخواست خود را از طریق فرم زیر ثبت نمایید.