跳到主要內容

[HowTo] 如何避免在Tableau Desktop Extract 大量數據,但仍能夠在Tableau Server 上Extract 完整數據

當我們遇到巨大的數據量(幾千幾億筆的數據), 如果要Extract (提取)數據時因為數據量過大所以要花費非常多時間, 甚至Desktop端的硬體也無法承受
遇上這樣的問題有兩種方式解決


1. Tableau SDK (Extract API)

Tableau 官方的API , 使用者自行透過C, C++, Java, Python 開發程式來做data extract, 再將Extract後的TDE檔案發佈到Tableau Server
用這方式就完全不需要透過Desktop Extract, 排程更新也是自行定義不會受到Tableau Server 排程的最小時間15 分鐘限制 

2.Tableau Desktop Zero Extract

這個是參考自Tableau 官方的KB (Publishing and Populating Empty Extracts) & Blog (Easy empty local extracts) 我個人比較喜歡後者的方式
都是透過Filter, 一開始先讓Desktop Extract filter 條件設定下去之後會沒有符合的數據, 所以Extract 出來是空的, 但這Extract Filter的條件, Publish Data Source Server之後又會變動所以數據就會在Server Extract Data

a. 第一種方式, 先設定一個now()的計算字段(DATE), 然後套入ExtractFilter, 選擇Exclude(排除), 在這當下數據就因為時間符合而被排除
但發布數據源到Tableau之後的隔天,因為已經不在排除的日期內,所以就會顯示所有的數據

b. 第二種方法, 先建立一個boolean參數選擇, 並選擇參數為True

再建立一個計算字段, boolean參數引用進來, 並引用到Extract Filter ,
這邊同上面第一個方法的道理, 選擇Exclude 目前的值(True)來排除所有的數據

Desktop產生空的Extract之後, boolean參數切換為False之後publish Data Source


END


留言

這個網誌中的熱門文章

[HowTo] 怎樣才能畫出環圈圖(甜甜圈)

首先呢,要有個圓餅圖(Pie Chart) 接下來,在Rows上以滑鼠左鍵雙擊輸入數字"0",輸入後Tableau會建立一個SUM(0)

[HowTo] 地址批次轉換為經緯度

兩個我知道可以批次轉換地址為經緯度的網站 Batch Geocoding 這網站是透過 Google Map API, 因為非商用 google 是有限制的。 實際再用時當一次轉換筆數過多時中間容易會有失敗的現象 , 筆數越多失敗率越高

[HowTo] 用Tableau來繪製雷達圖

雷達圖 (Radar Chart) 經常被使用在需要同時評估多重指標時,例如戰力圖、財務狀態綜合指標、品質管制分析、員工能力分析等等 在 Tableau 最簡單要繪製雷達圖的方式是先將相關指標值轉換為 (x 、 y) 座標標示,在 Tableau 利用 polygon 將指標依序連接起來,最後放上一個雷達圖的底圖。

[HowTo] 關於排序的幾種方式 - 參數控制

排序 (sorting) 在做數據分析時經常會被使用。 在 Tableau 的設計中,簡單的排序只要畫面上點選就可以做到。 但有時候,設計者希望能透過參數的選擇方式,讓閱讀者能夠點選或切換排序依據。 這時候就需要一些稍微進階的作法。 這篇會說明透過參數與計算字段方式來產生動態的排序。 (update at 2020/04/24) 範例一 :  顯示各年度次類別的銷售,並可選擇依據哪個年度排序,且選擇遞增或遞減排列 如何做呢 ? 建立兩個參數,一個是年度,另一個是昇降冪 建立計算字段 計算字段如下,主要是透過一個邏輯判斷僅保留下參數選定的年度的Sales,然後乘上參數(+1/-1)來改變排序方向 最後在 Sub-Category 的排序中選擇以剛剛的計算字段作為排序依據 完成後如下 : 範例二 : 主要維度需要可以選擇 ( 次分類、洲或者區域與產品分組 ) 顯示銷售、利潤與毛利率,並可依據其中一項度量作為排序依據且選擇遞增或遞減排列。 如何做呢 ? 分別建立主欄位、度量、昇降冪的參數 建立計算字段  A.  建立維度的選擇計算字段如下 建立排序用的計算字段B,透過邏輯判斷先選擇度量的參數, 然後乘上參數(+1/-1)來改變排序方向 最後在前面創建的主欄位選擇維度(A)的排序中選擇剛剛的計算字段B 完成後如下 :

[HowTo] 用甜甜圈來呈現目標達成率

如何用環狀圖(甜甜圈)來呈現如下圖的單一個目標達成率的數字呢? 其實方法就是,用兩個數字XDDDD 如果你的數據跟我的Sample一樣已經有目標值(Goal) & 實際值(Sales),就要先算出與目標值的差距數值 如果你的數據已經是達成率,那就做一個 1-[達成率] 的計算字段來代替 接下來一樣是先選擇做一個Pie Chart, 但這時候是將Measure Names放到Color,然後將Measure Values 放到Angle Measure Values 只保留SUM(Sales) & SUM(Gap to Goal)兩項 再來就可以透過前一篇提到的甜甜圈作法,用雙軸的方式產生出一個小圓覆蓋在Pie Chart上面 最後調整顏色 & 格式 &文字,然後需要的話可以將數值顯示在中間 那整個完成後的視圖如下: