資料來源和分析的更新功能

從 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.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 前的工作簿,且該工作簿在檢視中使用「記錄數量」,您可能會在「資料」窗格中看到「記錄數量」欄位。

如果導出欄位的所有輸入欄位都來自同一個表,則導出欄位會連同原始欄位一起列出。

集合和群組會連同其原始欄位一起顯示在表下方。

不屬於某個特定的表或沒有歸類於資料夾中的欄位,會顯示於表下方的一般區域中。其中包括:彙總計算、使用多表欄位的計算、記錄數量(若適用)、度量名稱及度量值。

檢視資料

在「檢視資料」視窗中,當資料來源包含多個邏輯資料表時,在不同的索引標籤中,會於每個表的本機詳細層級列出列數與資料。

有關詳情,請參閱檢視基礎資料

導出欄位會和其原始欄位一起列出。

LOD 計算不一定會出現在邏輯表的「檢視資料」中,因為 LOD 計算的粒度可能與表本身的粒度不同。如果 LOD calc 的維度包含單一表中的欄位,則該 LOD 計算將顯示在「資料」窗格中的所屬表中。

在 Tableau 版本 2020.2 和更新版本中,「檢視資料」欄順序已變更

在 Tableau 版本 2020.2 及更新版本中開啟 Tableau 版本 2020.1 及更早版本的資料來源時,欄順序可能會有所不同。在「檢視資料」視窗中,欄可能以不同的方式顯示,並且將資料匯出為 CSV 格式時,欄順序可能會有所不同。

為支援關係和邏輯資料表,需要變更「檢視資料」視窗中處理欄順序的方式。

若使用依賴於自訂欄順序的指令碼,建議對「檢視資料」使用 Tableau 擴充功能 API,以將基礎資料下載為 CSV 格式。

變更使用多表資料來源的分析

使用具有多個相關資料表的資料來源時,會影響分析在 Tableau 中的運作方式。因為多個相關表具有獨立的領域,且保有其原生的詳細程度,因此當您將欄位拖曳至檢視中時:

  • 資料會在其自然的詳細資訊層級查詢。
  • 僅查詢與視覺效果相關的資料。
  • 表之間的關係會影響查詢的結果。建置視覺效果的流程,可能會因為欄位表在資料模型中彼此關聯的方式,或其是否未直接關聯,而有所不同。

使用具有關係的多表資料來源的優點:

  • 關係使用聯結,但會自動執行。Tableau 會根據視覺效果中所使用的欄位,自動選取聯結類型。在分析過程中,Tableau 會聰明地調整聯結類型,並保留資料中的本機詳細層級。
  • Tableau 會根據工作表中所使用之欄位的目前內容,在分析過程中使用關係來產生正確的彙總與適當的聯結。
  • 單一資料來源中支援不同詳細層級的多個表,因此代表相同資料所需的資料來源數量就減少了。
  • 不相符的度量值不會捨棄(不會意外遺失資料)。
  • 可避免有時會因為聯結而導致的資料重複與篩選問題。

有關詳細資訊,請參閱與您的資料建立關聯使用關係的多表資料來源的分析方式多資料表分析疑難排解

有關關係查詢如何工作的相關資訊,請參閱以下 Tableau 部落格文章:

沒有變更的部分為何?

Tableau 中的單一表分析行為並未變更。對包含維度和度量混合的單一邏輯資料表進行分析的運作方式,與 Tableau 2020.2 預發行版本的運作方式相同。

僅維度視覺效果

將多表資料來源與相關資料表搭配使用時:如果建置僅維度的視覺效果,Tableau 會使用內部聯結,而且您無法看到完整的不相符網域。

若要查看維度值的部分組合,您可以:

  • 使用「顯示空列/欄」以查看所有可能的列。按一下「分析」功能表,然後選取「表配置」>「顯示空列」「顯示空欄」。請注意,此設定也會觸發「日期」與「數位資料桶」欄位的密集化,這可能是不必要的。
  • 將度量新增到檢視中,例如,視覺效果中呈現之其中一個表的 <YourTable>(Count)。這樣可確保您看見來自該表之維度的所有值。

維度的不相符值行為可能會令您感到意外

在建立使用來自多個邏輯資料表的維度的視覺效果時,其行為在一開始時可能會令人意外。在預設情況下,如果視覺效果中的維度或列層級計算的輸入使用來自多個邏輯資料表的欄位,則 Tableau 僅會顯示所有維度均具有相符值的結果。

舉例而言,假設有一個包含兩個邏輯資料表的資料集(「客戶」與「購買」),而其中某些客戶並沒有進行購買,而且「購買」表中沒有相符列。如果您要使用 [Customers].[Customer Name] 維度,您將會看見所有客戶的清單,無論該客戶是否有進行購買。之後,如果您將 [Purchases].[Product] 新增至視覺效果中,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 中的效能記錄程式。

  1. 按一下「說明」功能表,然後選取「設定和效能」>「啟動效能記錄」
  2. 將欄位拖曳到檢視中以建立視覺效果。
  3. 按一下「說明」功能表,然後選取「設定和效能」>「停止效能記錄」。「效能記錄」工作簿將自動開啟。
  4. 在「效能摘要」儀表板窗格中的「依時間排序的事件」下,按一下「執行查詢」列,並檢視下方查詢。

另一個更進階的選項,是使用 GitHub 上的 Tableau 記錄檢視器(連結在新視窗開啟)。您可以使用 end-protocol.query 來篩選特定關鍵字。有關詳情,請先參閱 GitHub 中的 Tableau 記錄檢視器 Wiki 頁面(連結在新視窗開啟)

感謝您的意見反應!已成功提交您的意見回饋。謝謝!