跳到主要內容

Tableau 數據連接與混合數據源方式


 數據分析經常需要利用到不同的表的連接甚至是跨數據庫異質平台的數據連接,這點在Tableau上操作相當方便

如果是同數據庫的不同表之間可以用一般的 Join 方式,這時的連接會發生在數據庫本身


如果是異質數據來源我們可以用Blending 或者是 Cross Database join 方式來連接

以Blending來說, 數據會先各自在自己的數據庫進行查詢得到聚合的值之後在於Tableau上進行連接,因此連接時不是逐行連接

以Cross Database Join 來說, 數據如果一般Join是逐行的連接, 但因為跨數據庫所以這個連接動作會發生在Tableau上, Tableau需要取的數據庫上每一行的數據後逐行處理, 因此這可能會相當消耗各項資源。

但Blending使用上有些限制, 因此有時我們還是會根據情況選擇改用Cross Database join

Joins
(
連接)
Blends
(
混合數據源)
Cross Database Joins
發生在哪裡
資料庫
本地端記憶體內
本地端記憶體內
作業的順序
Join再聚合
先聚合再Join
Join再聚合
甚麼樣的數據進到Tableau
單個聚合結果集
在每個標記的一行
每個數據源的聚合結果,聚合到混合字段的級別和其中的維度。
連接鍵的每一行和所有字段中的每一行
效能考量
Database 本身執行Join 的效能
混合字段的基數(即唯一成員的數量)
表中的行數

留言

這個網誌中的熱門文章

[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上面 最後調整顏色 & 格式 &文字,然後需要的話可以將數值顯示在中間 那整個完成後的視圖如下: