JSON 檔案

本文介紹如何將 Tableau 連線到本機 JSON 檔並設定資料來源。

進行連線並設定資料來源

  1. 啟動 Tableau,並在 [連線] 下選取 [JSON 檔] 。然後執行以下操作:

    1. 選取要連線到的檔案,然後選取 [開啟]

    2. 在 [選取架構層級] 對話方塊中,選取您想要在 Tableau 中進行檢視和分析的架構層級,然後選取 [確定] 。有關詳情,請參閱選取架構層級

  2. 在資料來源頁面上,執行下列操作:

    1. (可選)在頁面頂端選取預設資料來源名稱,然後輸入要在 Tableau 中使用的唯一資料來源名稱。舉例來說,使用可幫助其他資料來源使用者推斷出要連線的資料來源的資料來源命名約定。

    2. 選取工作表索引標籤以開始分析。

JSON 檔案資料來源範例

下面是在 Windows 電腦上使用 Tableau Desktop 的 JSON 檔資料來源的範例:

選取架構層級

將 Tableau 連線到 JSON 檔時,Tableau 會掃描 JSON 檔案的前 10,000 列中的資料,並從該過程中推斷架構。Tableau 將使用這種推斷出的架構展平資料。 [選取架構層級] 對話方塊中列出了 JSON 檔架構層級。在 Tableau Desktop 中,若 JSON 檔案超過 10,000 列,則可以使用「掃描整個文件」選項來建立架構。

附註:「掃描整個文件」選項僅對超過 10,000 列的 JSON 檔案顯示。其在 Web 上不可用。

您在對話方塊中選取的架構層級確定哪些維度和度量可供您在 Tableau 中檢視和分析。這些架構層級還可決定發佈哪些資料。

附註:將工作簿發佈到 Web 時,任何架構更新都不適用於 Web 版本的視覺效果,若隨後重新整理視覺效果,可能會導致錯誤

如果選取某個子架構層級,則父層級也會被選定。

例如,下面是 JSON 檔案的一個片段:JSON 檔組建以下架構層級:

檢測新欄位

有時,列中存在沒有為建立推斷結構描述而掃描的更多欄位。如果您注意到 [架構] 下面缺少您需要的欄位,則可以選取執行以下操作之一:

  • 掃描整個 JSON 文件。完成掃描可能需要很長時間。

  • 從列出的架構中選取架構層級,然後選取 [確定] 。Tableau 會讀取整個文件,如果找到更多欄位,它們將列在 [選取架構層級] 對話方塊中。

每當 Tableau 檢測到新的欄位可用時,例如,在擷取重新整理期間或者在您選取架構層級之後 Tableau 建立擷取時,檔案名附近的資訊圖示或 [選取架構層級] 對話方塊上的通知將指明已經找到了其他欄位。

變更架構層級

透過轉到資料來源頁面並選取 [資料] > [[JSON 檔案名]] > [選取架構層級] ,您可以變更所選的架構層級。或者,將游標暫留在畫布上的檔案名上,並選取下拉式功能表 > [選取架構層級]

合併 JSON 檔

您可以合併 JSON 資料。若要聯集 JSON 檔案,它必須具有 .json、.txt 或 .log 副檔名。有關聯集的詳情,請參閱聯集資料

合併 JSON 檔時,將依據並集中每個檔案的前 10,000 列來推斷出架構。

可以在合併檔後變更架構層級。有關詳情,請參閱變更架構層級

階層式 JSON 檔案的維度資料夾組織方式

選取工作表標籤後,JSON 檔案的所選架構層級將顯示在 [資料] 窗格上的 [維度] 下。每個資料夾與您選取的架構層級相一致,而與該架構層級關聯的屬性則作為資料夾的子項列出。

例如,在下圖中,「Address」(位址)是架構層級「Businesses」(業務)資料夾下的一個維度。「Category」(類別)也是一個架構層級,但因為它是值清單,並且不是資料階層,因此它不需要其自己的資料夾,而是會在父資料夾以下分組。請注意, [選取架構層級] 對話方塊中的架構層級不會直接對應到 [資料] 窗格中的資料夾結構。 [資料] 窗格中的資料夾按物件分組,以便您可以輕鬆巡覽到欄位,並且還有欄位來源的上下文。

對於每個文件,將組建唯一的索引並存儲在展平的資料表示形式中。也會為架構中的每個層級組建索引。

例如,在上圖中,除了「文件索引(已組建)」項目外,「Attribute」(屬性)「Hours 」(小時)架構層級都有組建的索引。

為何要在階層式 JSON 檔案中計算度量

在展平階層式 JSON 檔時,資料可能會重複。為了使度量與其架構層級保持一致,Tableau 會建立詳細資料層級 (LOD) 計算來準確表示架構層級的資料。原始度量位於 [源度量] 資料夾中,您可以使用它們,但我們建議您使用計算出的度量。

「資料」窗格上,計算出的度量會標示為「Number of <measure name> per <parent name>」(每個 <父名稱> 的 <量值名稱> 數量

若要檢視某個度量的 LOD 計算,請按以下步驟進行操作:

  1. 選取該度量。

  2. 選取下拉箭頭,然後選取 [編輯]

以下顯示 [Revenue per Document] 的 LOD 計算。公式將為每個文件索引值選取最大收入。

使用 LOD 計算意味著您可以選取多個架構層級,並且不用擔心度量會被重複計數。

使用 JSON 資料的提示

這些提示可幫助您在 Tableau 中使用 JSON 資料。

  • 巢狀數組不要超過 10x10 的限制。

    大量的巢狀數組將建立大量的列。例如,10x10 巢狀數組將組建 100 億列。當超過 Tableau 可載入到記憶體中的列數時,將會顯示錯誤。在這種情況下,請使用 [選取架構層級] 對話方塊減少選取的架構層級數。

  • 包含超過 100 個 JSON 物件層級的資料來源可能要花費很長時間載入。

    大量的層級會建立大量的列,從而可能要花費很長時間處理。例如,100 個層級可能會花費超過兩分鐘才能載入資料。最佳做法是,將架構層級數減少到恰好符合您的分析需求的層級數。

  • 單一 JSON 物件不能超過 128 MB。

    當單一物件頂層陣列超過 128 MB 時,您必須將其轉換為每行定義一個 JSON 物件的檔案。

  • 不支援樞紐分析表選項。

關於 .ttde 與 .hhyper 檔案

在電腦的目錄中巡覽時,您可能會注意到 .ttde 或 .hhyper 檔案。當您建立連線至資料的 Tableau 資料來源時,Tableau 會建立 .ttde 或 .hhyper 檔案。此檔案(也稱為陰影擷取)用於幫助提高 Tableau Desktop 中的資料來源載入速度。儘管陰影擷取包含類似於標準 Tableau 擷取的基礎資料和其他資訊,但陰影擷取將以其他格式儲存,並且無法用於恢復資料。

附註:2024.2 之後的 Tableau 版本不再支援 .tde 檔案。所有擷取現在均為 .hyper 格式。

 

另請參閱

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