01 過濾源數(shù)據(jù)
僅從數(shù)據(jù)源導入需要的數(shù)據(jù)表,而避免導入與分析無關的數(shù)據(jù)。
比如你只是分析銷售情況,把訂單表和相應的維度表導入進來就可以了,沒有必要把人事、物流等各種數(shù)據(jù)也導進來。
即使是導入訂單表,也僅導入分析所需的行,如果你要分析的是過去三年的情況,就不要試圖導入所有的歷史記錄。
02 刪除無關列
刪除與分析無關的列,可以顯著的降低內存占用。
比如從CRM系統(tǒng)提取過來的訂單表,可能有幾十列,而分析需要的可能只是某幾列,那么其他的數(shù)據(jù)列要果斷的刪除。
03 聚合分析粒度
數(shù)據(jù)源中的表經(jīng)常是最細顆粒度的數(shù)據(jù),及時聚合到分析的維度是必要的。
比如訂單表,?訂單時間可能精確到某一天的幾點幾分幾秒,而要分析的粒度可能是月份、季度和年份,那么盡早將數(shù)據(jù)聚合到分析的粒度,就可以顯著的降低數(shù)據(jù)的行數(shù)。
04 整理字段
數(shù)據(jù)導入進來以后,一般情況下我們只是看看數(shù)據(jù)類型是否正確,而不做更細的整理,其實以下的操作可以減少內存的占用:
舍入數(shù)字以刪除多余的小數(shù)位;
將日期中不用的分秒數(shù)據(jù)舍去;
將日期時間型數(shù)據(jù)拆分為日期列和時間列;
將可拆分的一個文本列,拆分為兩列,比如某一列的數(shù)據(jù)是省份+城市,將其拆分為省份列和城市列。
05 禁用不必要的加載
對于最終模型中不需要的表,禁用加載至關重要。
從數(shù)據(jù)源將導入數(shù)據(jù)到PowerQuery編輯器之后,我們一般會進行各種轉換,比如將多個表合并到一個表中,或許最終我們使用的是合并表。但在默認情況下,點擊"上載"之后,PQ中的所有表都會加載到Power?BI模型的內存中。
06 禁用系統(tǒng)日期表
禁用內置的日期表,可以提升PowerBI的運行速度。
PowerBI?會自動為模型中的每個日期字段創(chuàng)建內置日期表,以支持時間智能函數(shù)。這些表是隱藏的,它們消耗內存,因此及時打開選項,去掉“自動日期/時間”的勾選,
07 選擇適當?shù)臄?shù)據(jù)類型
確保所有列都具有正確、精準的數(shù)據(jù)類型,我們往往更關注類型是否正確,而不太關注類型是否精準。
比如:我們一般更關注是文本型還是數(shù)值型,而對于數(shù)值型,其實還可細分為整數(shù)型和小數(shù)型,他們兩個都是數(shù)值型,不會影響運算結果,但會影響運算效率,盡量直接修改為最合
適的數(shù)據(jù)類型,可以用整數(shù)型就不要用小數(shù),能用定點小數(shù)就不要用浮點小數(shù)。
08 選擇合適的連接方式
Power?BI主要有兩種連接模式:import和DirectQuery,對于一般的數(shù)據(jù)源,應盡可能使用import方式將數(shù)據(jù)導入到PowerBI,Import利用Power?BI的高性能查詢引擎,為你提供高度互動和全功能的體驗。
但是,如果通過import無法滿足你的目標,請考慮使用DirectQuery。?
09?避免使用計算列
從Excel帶過來的“壞習慣“之一就是更偏好使用計算列,它的結果可以直觀看到,但計算列帶有隱藏成本,它更消耗內存,會增加數(shù)據(jù)刷新時間。
一種更有效的方法是使用度量替換計算列,度量值不占用內存,只有在上下文中才進行計算,所以盡早養(yǎng)成使用度量值的好習慣!
10? 不斷優(yōu)化DAX
剛開始學習時,對DAX的要求很低,只要能正確的計算出結果就行,但隨著學習的深入,你還應了解一些函數(shù)的計算原理,不斷尋找更好的函數(shù)和更快的代碼。
比如:SUMMARIZECOLUMNS函數(shù)的性能明顯優(yōu)于ADDCOLUMNS+SUMMARIZE組合;使用VAR定義變量的方式處理速度會更快等。
解決同一個問題,會有不同的方案,識別并選擇最優(yōu)的那一個!
11? 盡量使用默認可視化對象
能用默認的圖表就不要使用自定義圖表,能用簡單的圖表進行表達的,就不要使用高度復雜的可視化。
比如能用簡單柱形圖就可以清晰展現(xiàn)的,就沒有必要使用地圖。
12? 避免直接展示明細數(shù)據(jù)
如果你的某個維度有數(shù)萬個數(shù)據(jù)點,如果你打算在畫布上使用表格或者圖表全部展示出來,可能需要幾秒甚至幾分鐘才能刷新出來,這種體驗是不可接受的。
最佳做法是,只展示重點關注的信息,比如該維度的前20名,可以利用篩選器,輕松篩選出需要的數(shù)據(jù),并提升計算性能。
13? 避免過度使用交互
在PowerBI中可以創(chuàng)建豐富的交互式報表,功能強大、操作簡單,可同時在多個圖表,甚至多個頁面實現(xiàn)動態(tài)聯(lián)動。
但每次的交互聯(lián)動,都會觸發(fā)多個查詢,很可能會拖慢數(shù)據(jù)刷新速度,最佳做法是僅為相關的報表設置動態(tài)響應,移除無關的報表篩選,避免不必要的同步切片器等。
14? 簡化設計
很多人可能都是被PowerBI炫酷的可視化吸引過來學習的,所以初學者常犯的錯誤是創(chuàng)建過于“復雜”的報表。
比如單頁放置過多的圖表、圖表中顯示詳細數(shù)據(jù)、無節(jié)制的使用控件等,最終生成看起來花哨但運行緩慢且低效的報表或儀表板。
使用PowerBI與萬事萬物一樣,物極必反,過猶不及。不要試圖把你想表達的內容都放到一個大而全的報表中,你應該引導用戶逐步深入探索更細粒度的數(shù)據(jù),而不是一次全部展示出來。
簡化設計,少即是多。
15? 定期更新PowerBI?Desktop
PowerBI在迅速迭代,不斷提升性能,可能你沒有作任何改變,僅僅是升級到最新版,就可以大大提升運行速度。
所以一定要養(yǎng)成定期更新的好習慣(win10系統(tǒng)可以自動更新),并且,如果你的電腦是64位的系統(tǒng),就不要安裝32位的軟件。








暫無數(shù)據(jù)