資料來源和分析的更新功能
從 Tableau 版本 2020.2 開始提供的幾項重大增強功能讓使多資料表分析更加輕鬆和直觀。
Tableau 中的資料建模功能有助於更輕鬆地跨多個表分析資料。您可藉由資料來源中的邏輯層與關係,利用不同詳細資料層級 (LOD) 的多重要素資料表,以星型及雪花型架構的形式建立多資料表資料模型。
- 資料來源更易於建立、維護與分析。資料來源有一個新的邏輯層,可供您在其中建立資料表之間的靈活關係。藉由為不同詳細層級的資料表建立關聯,來建立多資料表、多事實資料模型。輕鬆引入多個表中的資料,並維護較少的資料來源,以滿足您的分析需求。
- 關係可使分析體驗更加直覺化。您不再需要進行廣泛的聯結規劃,也不必假設需要哪些聯結類型,以備妥您的資料供分析使用。Tableau 會根據視覺效果中所使用的欄位,自動選取聯結類型。在分析過程中,Tableau 會聰明地調整聯結類型,並保留資料中的本機詳細層級。您可以按視覺效果中的欄位具備的詳細層級來檢視彙總資料,而無須考量基礎聯結。關係可以是多對多的,且支援完整外部聯結。您無須使用 LOD 運算式(如 FIXED)來刪除相關資料表中的重複資料。
- 「資料來源」頁面、「檢視資料」視窗與「資料」窗格均已更新,以支援多資料表分析體驗。您「資料來源」頁面畫布中的第一個檢視是邏輯層,可供您在此定義資料表之間的關係。為支援多資料表分析,已變更 Tableau 介面中的多個部分。工作表中的「資料來源」頁面(畫布、資料網格)、「檢視資料」視窗與「資料」窗格均已更新,以支援多資料表分析體驗。有關詳細資訊,請參閱介面的各部分變更(連結在新視窗開啟)。存取「檢視資料」的 API 也已更新,以支援多資料表分析。
- 內容感知查詢會視需要引入相關資料。運用關係的資料來源可以更輕鬆地將更多表、更多資料列和多個事實資料表引入單一資料來源。Tableau 不會查詢整個資料來源,而是根據視覺效果中使用的欄位從工作表所需的表中提取資料。
觀看視訊:有關資料來源增強功能的概觀,以及在 Tableau 中使用關係的介紹,請參閱這則 5 分鐘的視訊。
附註:此影片中顯示的編輯關係介面與當前版本略有不同,但功能相同。
您可以在以下 Tableau 部落格文章中瞭解關係查詢如何工作的詳情:
另請參閱「動作分析」(連結在新視窗開啟)中有關關係的影片播客,例如 Tableau 為何發明關係?(連結在新視窗開啟)按一下內容庫(連結在新視窗開啟)中的「影片播客」以查看更多資訊。
資料來源、資料模型與查詢語意的變更
支援多表資料來源
Tableau 中的資料來源可識別並保留標準化資料。使用多表資料來源,Tableau 可以在單一資料來源中處理多個詳細層級。這項支援可讓您更輕鬆地準備與瀏覽資料,而不需要編寫專用的計算來控制諸如平均值及總數等彙總。您可以使用星型及雪花型架構來合併表,以便順利無礙地為多個事實資料表建立關聯。新邏輯層使用關聯式的動態聯結,並提供您更好的網域控制(請參閱支援的資料模型架構)。
Tableau 可識別和維護表之間的基礎關係,因此所需的聯結和計算更少。因為這些增強後的資料來源可以回答更廣泛的問題,您得以整合建立和維護所需的不同資料來源數量。用來代表相同資料所需的資料來源更少了。
沒有變更的部分為何?
邏輯層中的關係為您提供了合併資料的更多選項(沒有移除任何內容)。您仍可在 Tableau 中建立單一表資料來源。您可以使用聯結、聯集、自訂 SQL 等機制的組合來建置邏輯資料表。Tableau 中的單一資料表分析行為並未變更。對包含維度和度量混合的單一邏輯資料表進行分析的工作方式與 Tableau 版本 2020.1 及更早版本相同。
另請參閱關係、資料模型和資料來源的相關問題。
資料來源中的新邏輯層
在舊版的 Tableau 中,資料來源中的資料模型是由單一實體層組成,您可以在其中指定聯結(連結在新視窗開啟)和聯集。新增到實體層(透過聯結或聯集)的表會建立單一扁平表(非標準化)以進行分析。
先前的版本 | 2020.2 及更高版本 | |
---|---|---|
從 Tableau 版本 2020.2 開始,資料來源中的資料模型包含實體層上方的新語意層(又稱為邏輯層),您可以在其中根據相符的欄位對來新增多個表並相互建立關聯。邏輯層的表不會合併到資料來源中,而會保有差異性(標準化),並保有其原生的詳細資料層級。
邏輯資料表的作用類似於實體資料表的容器。您仍可以使用實體表之間的聯結和聯集。只需按兩下邏輯表,即可開啟,並使用聯結和聯集。
邏輯層可以讓您更輕鬆地為各種分析案例合併資料。您可以採用星型和雪花型架構形式,建立標準化的資料模型,以及含不同粒度之事實資料表的靈活模型。
有關詳細資訊,請參閱Tableau 資料模型與支援的資料模型架構。
以關係為基礎的查詢語意
關係是合併多個表中的資料以進行分析的動態彈性方式。關係可以是多對多的,且支援完整外部聯結。您無須使用 LOD 運算式(如 FIXED)來刪除相關資料表中的重複資料。
您可以將關係視為兩個表之間的合約。當您使用這些表中的欄位建立視覺效果時,Tableau 會使用這項合約從表中擷取資料,以便建立具有適當聯結的查詢。
在合併資料時,建議您以關係作為優先採用的方法,因為它可備妥資料,並且讓分析更加簡單而直覺化。在絕對必要時,才使用聯結(連結在新視窗開啟)。
- 沒有前置聯結類型。只需要選取相符欄位即可定義關係(沒有聯結類型)。由於並未指定聯結類型,因此您在設定關係時將不會看到文氏圖表。
- 自動化與內容感知。關係會使連結受制於分析的時間和環境。Tableau 會根據視覺效果中所使用的欄位,自動選取聯結類型。在分析過程中,Tableau 會聰明地調整聯結類型,並保留資料中的本機詳細層級。您可以按視覺效果中的欄位具備的詳細層級來檢視彙總資料,而無須考量基礎聯結。
- 彈性。在使用關係合併資料表時,就如同為每個視覺效果建立自訂的彈性資料來源一樣,全都位於工作簿的單一資料來源中。由於 Tableau 僅會依據視覺效果中的欄位與篩選條件來查詢所需的表,所以您可以建立可用於各種分析流程的資料來源。
有關詳情,請參閱與您的資料建立關聯(連結在新視窗開啟)、善加運用關係(連結在新視窗開啟)和關係,第 1 部分:在 Tableau 中導入新的資料建模(連結在新視窗開啟)。
附註:若要前往原始聯結畫布,請按兩下上層檢視中的邏輯表(資料來源的邏輯層)。您仍然可以在資料來源的實體層中新增表之間的聯結和聯集。有關詳情,請參閱 Tableau 資料模型。
移轉的資料來源
當您在 Tableau 版本 2020.2 及更新版本中開啟 2020.2 前的工作簿或資料來源時,資料來源將在畫布中顯示單一邏輯資料表。您可以像之前一樣繼續使用工作簿。
如果資料來源包含多個已建立聯結或聯集的表,則會顯示名為「移轉資料」的單一邏輯資料表。您可以重新命名「移轉資料」表。
若要查看組成單一邏輯資料表的實體資料表,請按兩下該邏輯資料表,在實體層中加以開啟。您將看到其基礎實體資料表,包括聯結和聯集。
Web 製作
您的工作簿必須使用嵌入資料來源,才能在 Tableau Server 或 Tableau Cloud 的 Web 製作中的「資料來源」頁面中,編輯關係與效能選項。
擷取
可將擷取資料根據邏輯資料表(取代了「單一資料表」選項)或實體資料表(取代了「多資料表」選項)進行儲存。有關詳情,請參閱擷取資料。
介面的不同部分所做的變更
「資料來源」頁面變更
「資料來源」頁面畫布中有兩層:邏輯層與實體層。您在「資料來源」頁面中看到的預設檢視是新功能;其目前顯示在資料表之間使用關係(暱稱為「關聯線」)的邏輯層。
您仍然可以在實體層中新增表之間的聯結與聯集,只要在邏輯上層檢視中按兩下邏輯資料表,即可切換至實體層。有關詳情,請參閱 Tableau 資料模型。
資料格
資料來源由多個相關表組成時,選取邏輯資料表會在資料模型下方顯示的資料格中顯示該表的資料。由於使用關係時,資料尚未合併,因此您將看到目前所選邏輯資料表的值。如果您需要轉置欄,您必須開啟邏輯資料表,並於資料來源的實體資料表檢視中轉置資料。
工作表中的「資料」窗格
為支援關係與多資料表分析,已更新「資料」窗格。
「資料」窗格中不會再顯示「維度」與「度量」標籤。您可以使用表 (依資料來源表歸類) 或資料夾 (依資料夾歸類) 來整理「維度」與「度量」欄位。每個表或資料夾的灰色線上方會顯示維度,下方則顯示度量。在某些情況下,表可能只會顯示維度,或者僅顯示開頭的度量。
您將不會在包含邏輯資料表的資料來源中看到「記錄數量」欄位。每個表在該表的詳細層級都會包含其記錄的計數,以名為 TableName(Count) 的欄位表示。在先前的範例中,您可以看見 Addresses(Count)、Customers(Count) 和 LineItems(Count)。
表計數 = 每個表的記錄數量總和。您無法對表的「計數」欄位建置計算。「計數」只能進行彙總。
附註:如果您開啟了 2020.2 前的工作簿,且該工作簿在檢視中使用「記錄數量」,您可能會在「資料」窗格中看到「記錄數量」欄位。
如果導出欄位的所有輸入欄位都來自同一個表,則導出欄位會連同原始欄位一起列出。
集合和群組會連同其原始欄位一起顯示在表下方。
不屬於某個特定的表或沒有歸類於資料夾中的欄位,會顯示於表下方的一般區域中。這些欄位類型包括:彙總計算、使用多個表中欄位的計算、記錄數量(若適用)、度量名稱及度量值。
在版本 2024.2 及之後版本中:如果欄位名稱與檢視中使用的任意欄位均不關聯,則會在「資料」窗格中以淺灰色文字顯示該欄位名稱。您仍然可以在視覺效果中使用這些欄位進行分析,但非關聯欄位在分析中的評估方式與關聯欄位不同。如果您正在使用具有多事實關係的資料來源(連結在新視窗開啟),則可能會看到此行為。
檢視資料
在「檢視資料」視窗中,當資料來源包含多個邏輯資料表時,在不同的索引標籤中,會於每個表的本機詳細層級列出列數與資料。
有關詳情,請參閱檢視基礎資料。
導出欄位會和其原始欄位一起列出。
LOD 計算不一定會出現在邏輯表的「檢視資料」中,因為 LOD 計算的粒度可能與表本身的粒度不同。如果 LOD calc 的維度包含單一表中的欄位,則該 LOD 計算將顯示在「資料」窗格中的所屬表中。
在 Tableau 版本 2020.2 和更新版本中,「檢視資料」欄順序已變更
在 Tableau 版本 2020.2 及更高版本中開啟 Tableau 版本 2020.1 及更早版本中的資料來源時,欄順序可能會有所不同。在「檢視資料」視窗中,欄可能以不同的方式顯示,並且將資料匯出為 CSV 格式時,欄順序可能會有所不同。
為支援關係和邏輯資料表,需要變更「檢視資料」視窗中處理欄順序的方式。
若使用依賴於自訂欄順序的指令碼,建議對「檢視資料」使用 Tableau 擴充功能 API,以將基礎資料下載為 CSV 格式。
變更使用多表資料來源的分析
使用具有多個相關資料表的資料來源時,會影響分析在 Tableau 中的運作方式。因為多個相關表具有獨立的領域,且保有其原生的詳細程度,因此當您將欄位拖曳至檢視中時:
- 資料會在其自然的詳細資訊層級查詢。
- 僅查詢與視覺效果相關的資料。
- 表之間的關係會影響查詢的結果。建置視覺效果的流程,可能會因為欄位表在資料模型中彼此關聯的方式,或其是否未直接關聯,而有所不同。
使用具有關係的多表資料來源的優點:
- 關係使用聯結,但會自動執行。Tableau 會根據視覺效果中所使用的欄位,自動選取聯結類型。在分析過程中,Tableau 會聰明地調整聯結類型,並保留資料中的本機詳細層級。
- Tableau 會根據工作表中所使用之欄位的目前內容,在分析過程中使用關係來產生正確的彙總與適當的聯結。
- 單一資料來源中支援不同詳細層級的多個表,因此代表相同資料所需的資料來源數量就減少了。
- 不相符的度量值不會捨棄(不會意外遺失資料)。
- 關聯資料表可減少或消除聯結有時可能導致的資料重複和篩選問題。
有關詳細資訊,請參閱與您的資料建立關聯、使用關係的多表資料來源的分析方式與多資料表分析疑難排解。
有關關係查詢如何工作的相關資訊,請參閱以下 Tableau 部落格文章:
在 Tableau 版本 2024.2 及之後版本中,Tableau 資料模型支援透過多重要素關係進行多事實分析與共用維度。有關詳情,請參閱關於多事實關係資料模型(連結在新視窗開啟)、何時使用多事實關係模型(連結在新視窗開啟)與建置多事實關係資料模型(連結在新視窗開啟)。
沒有變更的部分為何?
Tableau 中的單一資料表分析行為並未變更。對包含維度和度量混合的單一邏輯資料表進行分析的工作方式與 Tableau 2020.2 之前的版本相同。
僅維度視覺效果
將多表資料來源與相關資料表搭配使用時:如果建置僅維度的視覺效果,Tableau 會使用內部聯結,而且您無法看到完整的不相符網域。
若要查看維度值的部分組合,您可以:
- 使用「顯示空列/欄」以查看所有可能的列。按一下「分析」功能表,然後選取「表配置」>「顯示空列」或「顯示空欄」。請注意,此設定也會觸發「日期」與「數字資料桶」欄位的密集化,這可能是不需要的。
- 將度量新增到檢視中,例如,視覺效果中呈現之其中一個表的 <YourTable>(Count)。此步驟可確保您看見來自該表之維度的所有值。
維度的不相符值行為可能會令您感到意外
在建立使用來自多個邏輯資料表的維度的視覺效果時,其行為在一開始時可能會令人意外。在預設情況下,如果視覺效果中的維度或列層級計算的輸入使用來自多個邏輯資料表的欄位,則 Tableau 僅會顯示所有維度均具有相符值的結果。
例如,請考慮一個包含兩個邏輯資料表「客戶」和「購買」的資料集。某些客戶未進行任何購買,且「購買」表中沒有相符的列。若您使用維度 [客戶].[客戶名稱],您將看到所有客戶的清單,無論他們是否進行了購買。若您隨後將維度 [購買].[產品] 新增至視覺效果,Tableau 將更新以顯示有進行購買的客戶以及他們購買的產品。
您可以透過以下幾種方式處理此預設行為:
- 使用「顯示空列/欄」來查看所有可能的列,並恢復不相符的維度值。按一下「分析」功能表,然後選取「表配置」>「顯示空列」或「顯示空欄」。請注意,此設定也會觸發「日期」與「數字資料桶」欄位的密集化,這可能是您不想要的。
- 將其中一個維度轉換為度量。例如,切換為使用 COUNT([Purchases].[Product]),將可保留沒有進行購買的客戶,並使其顯示為「0」。若您想查看所有產品,此方法可能不可行。
- 使用不相符的值,使度量從表中進入檢視之中。例如,在詳細資料架上新增 COUNT([Customers]),將會回復不相符的客戶,同時仍會顯示所有產品。
- 您可以在實體層級使用外部聯結來聯結兩個表,而不是在邏輯層級為其建立關聯,就如同使用先前版本的 Tableau 一樣。這種方法將會顯示不相符的值,且會伴隨一些副作用。查詢將始終透過查詢兩個表來發出。即使沒有使用不相符表中的欄位,NULL 值也會出現在視覺效果和快速篩選器中。而且,您必須編寫 LOD 計算來移除聯結引入的任何不想要的重複。
使用表的「計數」欄位而非「記錄數量」
您將不會在包含邏輯資料表的資料來源中看到「記錄數量」欄位。每個表在該表的詳細層級都會包含其記錄的計數,以名為 TableName(Count) 的欄位表示。在先前的範例中,您可以看見 Addresses(Count)、Customers(Count) 和 LineItems(Count)。
表計數 = 每個表的記錄數量總和。您無法對表的「計數」欄位建置計算。「計數」只能進行彙總。
附註:如果您開啟了 2020.2 前的工作簿,且該工作簿在檢視中使用「記錄數量」,您可能會在「資料」窗格中看到「記錄數量」欄位。
跨表計算
您可以編寫跨多個表的計算。請注意,在預設情況下,跨表計算會使用內部聯結查詢語意。計算會位於其所引用的邏輯資料表之間的聯結上方。可以透過關係跨資料表編寫列層級計算,從而產生外部聯結。
計算會在新增 Null 維度之後進行評估,因此您可以使用類似 IFNULL([Dimension], “Missing”) 的計算,將 Null 變更為其他值。
使用 SUM 的總計
使用 SUM 的總計所反映出來的是欄位邏輯資料表的本機詳細層級的實際總計,而非小計的 SUM。
從關係產生的空值與自動聯結
於 Tableau 版本 2020.2 及更新版本中,在執行從關係所產生的聯結時,Tableau 不會對空值聯結空值。
不相符的 Null 行為
當您將度量新增至檢視時,如果度量所具有的值與維度並不相關,將會新增 Null 維度值。
此行為發生的原因,是由於 Tableau 會將不相符的值(或無關聯的維度值)視為與基礎資料來源中的 TRUE NULL 值相同。兩者的值會一起彙總或一起篩選。
舉例而言,對於 SUM(Sales),[State]
,每個相符的 State 都代表一個州。其 SUM(Sales) 為單一州的總和。對於不相符的空值,SUM(Sales) 可能會反映許多州。
如果您不希望出現此行為,可以清除資料,以確保度量表中的每一列都與維度表中的一個列相符。您可以使用 Tableau Prep。或者,您也可以在工作表中按一下「Null」並選取「排除」,將 Null 篩選出來。執行此操作之後,您可以在「效能選項」設定中選取「所有記錄相符」,來編輯度量表與維度表之間的關係。
在「編輯篩選條件」對話方塊中處理不相符的空值
當您對維度套用篩選條件時,出現 Null 的規則如下:
- 在「常規」索引標籤中,您可以使用核取方塊來明確包含或排除 Null 列。
- 在「萬用字元」索引標籤中,設定不會影響是否顯示 Null(因為只會將文字值篩選出來,而 Null 並不被視為文字值)。
- 在「條件」或「頂端」索引標籤中,若使用「無」以外的設定,將會導致「Null」狀態被篩選出來。
驗證關係
有多個選項可用來驗證資料模型以進行分析。當您為資料來源建立模型時,建議您前往工作表,選取該資料來源,然後建置視覺效果以探索記錄計數、預期的資料、不相符的值、null 或重複的度量值。請嘗試使用不同表中的欄位,以確定一切行為都如您所預期。
要查找的內容:
- 您在資料模型中的關係是否使用符合其表的正確欄位?
- 新增多個相符欄位配對,是否會使關係更精確?
- 將不同的維度與度量從不同的表中拖曳至檢視之中,會產生什麼結果?
- 您是否看到預期的列數?
- 如果您將任何效能選項設定變更為非預設的設定,您在視覺效果中看到的值是否符合預期?如果不是,您可能需要檢查設定,或重設為預設值。
驗證關係與資料模型的選項:
- 每個表在該表的詳細層級都會包含其記錄的計數,以名為 TableName(Count) 的欄位表示。若要查看表的計數,請將「計數」欄位拖曳至檢視中。若要查看所有表的計數,請在「資料」窗格中,選取每個表的「計數」欄位,然後按一下「顯示」中的「文字表」。
- 按一下「資料」窗格中的「檢視資料」,以查看每個表的列數和資料。此外,在開始建立關係之前,在分析之前或期間檢視資料來源中的資料,可能有助於您瞭解每個表的範圍。有關詳情,請參閱檢視基礎資料。
- 將維度拖曳到列,以查看狀態列中的「列數」。若要查看不符合的值,請按一下「分析」功能表,然後選取「表配置」>「顯示空列」或「顯示空欄」。您也可以將不同度量拖曳到檢視中,例如視覺效果中呈現之其中一個表的 <YourTable>(Count)。這樣可確保您從該表看見維度的所有值。
提示:若要查看針對關係所產生的查詢,可以使用 Tableau Desktop 中的效能記錄程式。
- 按一下「說明」功能表,然後選取「設定和效能」>「啟動效能記錄」。
- 將欄位拖曳到檢視中以建立視覺效果。
- 按一下「說明」功能表,然後選取「設定和效能」>「停止效能記錄」。「效能記錄」工作簿將自動開啟。
- 在「效能摘要」儀表板窗格中的「依時間排序的事件」下,按一下「執行查詢」列,並檢視下方查詢。
另一個更進階的選項,是使用 GitHub 上的 Tableau 記錄檢視器(連結在新視窗開啟)。您可以使用 end-protocol.query
來篩選特定關鍵字。有關詳情,請先參閱 GitHub 中的 Tableau 記錄檢視器 Wiki 頁面(連結在新視窗開啟)。