php小程序商城青島谷歌優(yōu)化
Power Query中一些忽略的細(xì)節(jié)
- 重新認(rèn)識(shí)Power Query
- 查詢(xún)的引用----提高數(shù)據(jù)加載效率
- 透視逆透視----一對(duì)“好朋友”
- 神奇的拼接----實(shí)現(xiàn)很多意想不到的操作
重新認(rèn)識(shí)Power Query
?關(guān)于它的定義,這里不再贅述,主要說(shuō)一些新的理解。
?Power Query 可以理解就是一個(gè) ETL 工具;他可以從幾乎所有類(lèi)型的數(shù)據(jù)源中提取數(shù)據(jù),根據(jù)業(yè)務(wù)進(jìn)行轉(zhuǎn)換,然后加載應(yīng)用。雖然,乍一看,它的很多功能在Excel都能實(shí)現(xiàn),那它是不是就是Excel的替換品呢?答案是否定的。
?當(dāng)應(yīng)用場(chǎng)景是只需要一次的處理,且數(shù)據(jù)量不大的情況下,Excel方便、快捷、上手快;但當(dāng)這個(gè)處理過(guò)程是要每天循環(huán)呢?Excel就顯得有點(diǎn)力不從心,所以這就是PQ的優(yōu)點(diǎn):
1.把重復(fù)的工作變成一次性工作(之后刷新即可更新數(shù)據(jù))
2.很多數(shù)據(jù)處理操作,PQ有更高的效率和更方便的操作方式,不出現(xiàn)Excel中的 “卡死” 現(xiàn)象
查詢(xún)的引用----提高數(shù)據(jù)加載效率
?想象有這樣一個(gè)業(yè)務(wù)場(chǎng)景:
對(duì)同一個(gè)數(shù)據(jù)源,需要進(jìn)行不同的操作(分組、透視、提取、分裂等),然后使用相應(yīng)的結(jié)果去做后續(xù)的分析,幾次結(jié)果之間沒(méi)法使用一張表呈現(xiàn),怎么解決呢?
?當(dāng)然,最簡(jiǎn)單的肯定是用幾次就做幾個(gè)查詢(xún),然后問(wèn)題就解決了!
是的,按上述的方法可以解決,但是,當(dāng)業(yè)務(wù)數(shù)據(jù)很大時(shí),加載就會(huì)花費(fèi)很多的時(shí)間,這是業(yè)務(wù)中最不愿看到的,這就不得不說(shuō)說(shuō)PQ中的暫存設(shè)置。
?基本思路就是加載一次數(shù)據(jù)源,對(duì)數(shù)據(jù)源不做任何操作,后續(xù)不同的操作直接對(duì)數(shù)據(jù)源進(jìn)行引用,然后進(jìn)行相應(yīng)各自的操作,減少數(shù)據(jù)加載次數(shù)。具體步驟如下:
1.數(shù)據(jù)源直接加載,不做操作
2.對(duì)數(shù)據(jù)源右鍵選擇引用(引用的數(shù)據(jù)源變成之前的數(shù)據(jù)源,而不是加載路徑,只要之前的數(shù)據(jù)源變動(dòng),它也更著變動(dòng))
3.再在引用的查詢(xún)后面進(jìn)行相應(yīng)的操作即可,不會(huì)影響數(shù)據(jù)源,也不會(huì)影響其他數(shù)據(jù)源的引用,而且數(shù)據(jù)只加載的一次(加載數(shù)據(jù)源)
?筆者測(cè)試的原本更新一次數(shù)據(jù)源要花費(fèi)200s(不暫存,直接加載三次數(shù)據(jù)源),而更換暫存邏輯后,更新一次數(shù)據(jù),只需要90s,效果還是很明顯的,尤其是在數(shù)據(jù)很大的業(yè)務(wù)中。
透視逆透視----一對(duì)“好朋友”
?
?這里對(duì)透視和逆透視不再贅述,感興趣的可以參考 透視和逆透視
?
這里只是說(shuō)下,透視就是把行數(shù)據(jù)變成列數(shù)據(jù),而逆透視就是把列數(shù)據(jù)換成行數(shù)據(jù)
?
換句話(huà)說(shuō),透視是把一維數(shù)據(jù)變成二(多)維數(shù)據(jù),逆透視是把二(多)維數(shù)據(jù)變成一維數(shù)據(jù)
神奇的拼接----實(shí)現(xiàn)很多意想不到的操作
?這里對(duì)拼接不再贅述,感興趣的可以參考 PQ中的各種拼接
?拼接的使用場(chǎng)景
1.多個(gè)相同數(shù)據(jù)的合并(縱向)
2.批量合并文件(可以理解成1的應(yīng)用)
3.實(shí)現(xiàn)Excel中的vlookup(xlookup)等復(fù)雜映射(橫向)
?
需要說(shuō)明的是:PQ實(shí)現(xiàn)的拼接比Excel更加強(qiáng)大和復(fù)雜,類(lèi)似于SQL中的內(nèi)外聯(lián),實(shí)際業(yè)務(wù)中引用很方便