透過命令列重新整理輸出檔案

可以使用命令列而不是 Tableau Prep Builder 執行流程以重新整理流程輸出。您可以使用此方法一次執行一個流程。此選項在已安裝 Tableau Prep Builder 的 Windows 和 Mac 電腦上都可用。

連接器限制:

  • JDBC 或 ODBC 連接器:從版本 2019.2.3 開始,可以使用命令列執行包含這些連接器的流程。
  • 雲端連接器:包含雲端連接器(例如 Google BigQuery)的流程無法從命令列執行。而是要手動執行流程,或在 Tableau ServerTableau Online 中使用 Tableau Prep Conductor 根據排程執行流程。有關詳情,請參閱使流程資料保持最新狀態

對於 Windows 電腦,您也可以使用 Windows 工作排程器來排程此過程。有關詳細資訊,請參閱 Microsoft 線上說明中的工作排程器(Link opens in a new window)

使用命令列執行流程時,Tableau Prep Builder 會使用 Tableau Prep Builder 中指定的輸出步驟設定重新整理流程的所有輸出。有關如何指定輸出位置的資訊,請參閱建立和發佈擷取及資料來源(Link opens in a new window)。有關設定寫入選項(版本 2020.2.1 及更高版本)的資訊,請參閱設定寫入選項

執行流程之前

要使用命令列執行流程,您需要執行流程之電腦的管理員權限,同時需要下列資訊:

  • Tableau Prep Builder 的安裝路徑。

  • 如果連線至資料庫並將輸出檔案發佈到伺服器,則需要一個包含所有必需認證的 credentials .json 檔案。

  • Tableau 流程 (.tfl) 檔案所在的路徑。

Credentials .json 檔案要求

附註:如果流程連線到並輸出至本機檔案、網路共用上存放的檔案或使用 Windows 驗證 (SSPI) 的輸入檔案,則不需要 Credentials .json 檔案。有關 Windows 驗證的詳細資訊,請參閱 Microsoft 線上說明中的 SSPI 模型(Link opens in a new window)

下表列出了您需要包括在 credentials .json 檔案中的認證。

輸入連線 輸出位置
  • 主機名稱(伺服器名稱)
  • contentUrl (已發佈資料來源) 網站 ID。當您登入到 Tableau Server 或 Tableau Online 時,此資訊會出現在 URL 中的 /site/ 之後
  • 連接埠(連接埠 ID)
  • 使用者名稱
  • 密碼
  • serverUrl
  • contentUrl(網站 ID。當您登入到 Tableau Server 或 Tableau Online 時,此資訊出現在 URL 中的 /site/ 之後)
  • 使用者名稱
  • 密碼
  • 如果計劃重用資料,請將其放在不會被 Tableau Prep Builder 安裝過程覆蓋的資料夾中。
  • 如果要執行連線至資料庫檔案、已發佈資料來源或將輸出發佈至伺服器的流程,則 .json 檔案中必須包括連線到這些位置所需的認證。
  • 執行該程序時,會使用主機名稱、連接埠和使用者名稱尋找 Tableau 流程檔案 (.tfl) 中相符的連線,並在執行程序之前更新。「埠 ID」和「網站 ID」是可選的(如果連線不需要此資訊)。
  • 如果是連線到已發佈資料來源,請在輸入連線中包含主機名稱、contentUrl 及連接埠(http 為 80,https 則為 443)。需要主機名稱才能在 Tableau 流程檔案 (.tfl) 中尋找相符的連線,contentUrl 及連接埠則是用來建立與伺服器的連線。

  • 如果連線至 Tableau Online,請在輸入連線中包含要連線至的 Pod 適用的連接埠(80 或 443)。有關 Tableau Online 的詳細資訊,請參閱 Tableau Online 說明中的 Tableau Bridge 連線至 Tableau Online(Link opens in a new window)

Credentials .json 檔案範例

本節顯示您可以使用 credentials .json 要求建立的兩個不同認證檔案範例。

連線到已發佈資料來源

此範例顯示連線至已發佈資料來源,並將資料輸出至包含站點 ID 之伺服器的 .json 認證檔案

附註:如果 inputConnection 或 outputConnection 使用預設網站,則將 ContentUrl 設定為空白。例如,"contentUrl": ""

{
"inputConnections":[
  {
    "username": "jsmith",
    "contentUrl": "my-testing-site",
    "hostname":"https://my-server",
    "port":443,
    "password": "passw0rd$"
  }
],
"outputConnections":[
  {
    "serverUrl":"https://my-server",
    "contentUrl":"my-testing-site",
    "username":"jsmith",
    "password":"passw0rd$"
  }
]
}

連線至兩個資料庫

此範例顯示連線至 MySQL 及 Oracle,並將資料輸出至包含站點 ID 之伺服器的 .json 認證檔案。

{
"inputConnections":[
  {
    "username": "jsmith",
    "hostname":"mysql.example.lan",
    "port":1234,
    "password": "passw0rd"
  },
  {
    "username": "jsmith",
    "hostname":"Oracle.example.lan",
    "port":5678,
    "password": "passw0rd" 
  }
],
"outputConnections":[
  {
    "serverUrl":"http://MyServer",
    "contentUrl":"FinanceTeam",
    "username":"jsmith",
    "password":"passw0rd$"
  }
]
}

建立認證檔案的相關提示

如果使用遠端連線,Tableau Prep Builder 將使用流程檔案和 credentials .json 檔案中的資訊來執行流程。例如,遠端連線的資料庫名稱和輸出檔案的專案名稱來自於流程,伺服器名稱和登入認證來自於 credentials .json 檔案。

為了避免在執行流程時出現錯誤,請確保認證檔案遵循以下準則:

  • 如果使用 Tableau Prep Builder 版本 2018.2.2 至 2018.3.1,則始終包括「inputConnections」和「outputConnections」陣列,即使流程不為輸入或輸出使用遠端連線。只需將這些陣列保留為空白。

    如果使用 Tableau Prep Builder 版本 2018.3.2 及更新版本,則無需包括空白陣列。

    • 沒有遠端輸入連線?在 .json 檔案的頂部包括此語法

      {
      "inputConnections":[
        ],
    • 沒有遠端輸出連線?在 .json 檔案的底部包括此語法

    • "outputConnections":[
        ]
      }
  • 您的輸入連線是否沒有連接埠 ID,或者該連接埠已指定為伺服器名稱的一部分?

    如果您的連線沒有連接埠 ID,請不要在 .json 檔案中包括 "port":xxxx, 引用,連 "port": "" 也不要包括。如果伺服器名稱已包含連接埠 ID,請在主機名稱中包含連接埠 ID。例如,"hostname": "mssql.example.lan,1234"

  • 引用 "serverUrl": 時,不要在地址結尾包括「/」。例如,使用此 "serverUrl": "http://server",而不是此 "serverUrl": "http://server/"

  • 如果有多個輸入或輸出連線,請為檔案中的每個連線包括認證。

  • 若連線到已發佈資料來源,請務必在輸入連線中加入主機名稱和內容 URL。

執行流程

重要:以下範例包括 "Tableau Prep" 版本 2019.1.2 的名稱變更,變更為 "Tableau Prep Builder"。如果您使用的是更早版本,請改為使用 "Tableau Prep"。

  1. 以管理員身份開啟命令提示字元或終端命令提示字元 (MacOS)。

  2. 使用下方顯示的語法執行下面的一個命令。

    • 流程連線到本機檔案或網路共用上存放的檔案,並發佈至本機檔案、網路共用上存放的檔案,或使用 Windows 驗證:

      附註:如果連線到或輸出至網路共用上存放的檔案,請為路徑使用 UNC 格式:\\伺服器\路徑\檔案名。它不能透過密碼保護。

      Windows

       "\[Tableau Prep Builder install location]\Tableau Prep Builder <version>\scripts"\tableau-prep-cli.bat -t "path\to\[your flow file name].tfl"

      Mac

      /Applications/Tableau\ Prep\ Builder\ [Tableau Prep Builder version].app/Contents/scripts/./tableau-prep-cli -t path/to/[your flow file name].tfl
    • 流程連線至資料庫或發佈至伺服器:

      Windows

      "\[Tableau Prep Builder install location]\Tableau Prep Builder <version>\scripts"\tableau-prep-cli.bat -c "path\to\[your credential file name].json" -t "path\to\[your flow file name].tfl"

      Mac

      /Applications/Tableau\ Prep\ Builder\ [Tableau Prep Builder version].app/Contents/scripts/./tableau-prep-cli -c path/to/[your credential file name].json -t path/to/[your flow file name].tfl
    • 流程檔案或認證檔案存放在網路共用上(為路徑使用 UNC 格式:\\伺服器\路徑\檔案名):

      Windows

      "\[Tableau Prep Builder install location]\Tableau Prep Builder <version>\scripts"\tableau-prep-cli.bat -c "\server\path\[your credential file name].json" -t "\server\path\[your flow file name].tfl"

      Mac:將網路共用映射到 Finder 中的 /Volumes 以使其保持持久,然後使用 /Volumes/.../[your file] 指定路徑:

      /Applications/Tableau\ Prep\ Builder\ [Tableau Prep Builder version].app/Contents/scripts/./tableau-prep-cli -c /Volumes/.../[your credential file name].json -t path/to/[your flow file name].tfl

有關範例命令,請參閱語法範例。有關常見錯誤和解決方法,請參閱使用命令列執行流程時的常見錯誤

執行已啟用累加式重新整理的流程(版本 2020.2.1 及更高版本)

如果在伺服器上未啟用 Tableau Prep Conductor 來排程流程執行,則可以使用命令列中的累加式重新整理執行流程。只需在命令列中包括 --incrementalRefresh 參數,如下例所示。

Windows

 "\[Tableau Prep Builder install location]\Tableau Prep Builder <version>\scripts"\tableau-prep-cli.bat --incrementalRefresh -t "path\to\[your flow file name].tfl"

Mac

/Applications/Tableau\ Prep\ Builder\ [Tableau Prep Builder version].app/Contents/scripts/./tableau-prep-cli --incrementalRefresh -t path/to/[your flow file name].tfl

如果流程輸入步驟已啟用累加式重新整理,並正確設定累加式重新整理參數,Tableau Prep Builder 將執行以下操作:

  • 在已啟用累加式重新整理的流程中所有輸入都將使用累加式重新整理執行所有相應的輸出。
  • 如果流程中的輸入未啟用累加式重新整理,則將使用完整重新整理執行所有輸出。系統將以訊息顯示重新整理方法的詳細資訊。
  • 如果流程中的部分輸入已啟用累加式重新整理,則將使用累加式重新整理執行相應的輸出。其他輸出則將使用完整的重新整理執行,系統將以訊息顯示重新整理方法的詳細資訊。

有關設定流程以使用累加式重新整理的詳情,請參閱使用累加式重新整理重新整理流程資料

命令選項

如果要查看說明選項,請在命令列中包括 -h

命令選項 說明 說明
-c , --connections <arg> 認證檔案的連線路徑。 需要認證檔案所在的路徑。
-d, --debug 調試流程程序。 包括此選項以檢視更多資訊,來幫助調試重新整理流程的問題。記錄檔存放位置:My Tableau Prep Builder Repository\Command Line Repository\Logs
-dsv, --disableSslValidation 停用 SSL 驗證 (MacOS) 在 MacOS 上使用命令列執行流程時,可能會出現要求提供鑰匙圈使用者和密碼的對話方塊。從 Tableau Prep Builder 2019.3.2 版開始,您可以輸入這個額外參數來停用此鑰匙圈對話方塊。例如,/Applications/Tableau\ Prep\ Builder\ [Tableau Prep Builder version].app/Contents/scripts/./tableau-prep-cli -dsv -c path/to/[your credential file name].json -t path/to/[your flow file name].tfl
-h, --help 檢視語法選項的說明。

此說明選項或語法錯誤顯示以下資訊:

usage: tableau-prep-cli [-c <arg>] [-d]  [-h] [-t <arg>]
-c,--connections <arg>        Path to a file with all connection information
-d,--debug                    This option is for debugging
-dsv,--disableSslValidation   Disable SSL validation
-h,--help                     Print usage message
-inc,--incrementalRefresh     Run incremental refresh for all outputs that are configured to support it
-t,--tflFile <arg>            The Tableau Prep Builder flow file	
-inc, --incrementalRefresh 為設定為使用累加式重新整理的所有輸出執行累加式重新整理。

包括此選項,為設定為使用累加式重新整理的所有輸入執行累加式重新整理。累加式重新整理讓 Tableau Prep Builder 只能檢索和處理新列,而非流程中的所有列。

輸入步驟中的累加式重新整理配置設定可決定以累加方式執行哪些流程輸出。所有其他輸出則將使用完整的重新整理執行,系統將以訊息顯示重新整理方法的詳細資訊。

有關使用累加式重新整理執行流程的詳情,請參閱 使用累加式重新整理重新整理流程資料

-t, --tflFile <arg> .tfl 流程檔案 需要 .tfl 流程檔案所在的路徑。

語法範例

下面的命令列顯示使用以下條件執行流程的四個不同範例:

  • Tableau Prep Builder 版本:2020.2.2

    重要:以下範例包括 Tableau Prep 版本 2019.1.2 的名稱變更,變更為 Tableau Prep Builder。如果您使用的是更早版本,請改為使用「Tableau Prep」。

  • 流程名稱:Flow1.tfl

  • 流程位置:C:\Users\jsmith\Documents\My Tableau Prep Builder Repository\Flows

  • 憑據檔案名:Flow 1.json

  • 憑據檔位置:C:\Users\jsmith\Desktop\Flow credentials

  • 存放在網路共用上的認證檔案位置:\tsi.lan\files\Flow credentials

流程連線到並發佈至本機檔案

Windows

"\Program Files\Tableau\Tableau Prep Builder 2020.2.2\scripts"\tableau-prep-cli.bat   -t "\C:\Users\jsmith\Documents\My Tableau Prep Builder Repository\Flows\Flow1.tfl"

Mac

/Applications/Tableau\ Prep\ Builder\ 2020.2.2.app/Contents/scripts/./tableau-prep-cli  -t /Users/jsmith/Documents/My\ Tableau\ Prep\ Builder\ Repository/Flows.Flow1.tfl

流程連線並發佈到本機檔案,並使用短形式進行累加式重新整理

Windows

"\Program Files\Tableau\Tableau Prep Builder 2020.2.2\scripts"\tableau-prep-cli.bat -inc -t "\C:\Users\jsmith\Documents\My Tableau Prep Builder Repository\Flows\Flow1.tfl"

Mac

/Applications/Tableau\ Prep\ Builder\ 2020.2.2.app/Contents/scripts/./tableau-prep-cli -inc -t /Users/jsmith/Documents/My\ Tableau\ Prep\ Builder\ Repository/Flows.Flow1.tfl

流程連線至資料庫並發佈至伺服器

Windows

"\Program Files\Tableau\Tableau Prep Builder 2020.2.2\scripts"\tableau-prep-cli.bat -c "\C:\Users\jsmith\Desktop\Flow credentials\Flow1.json" -t "\C:\Users\jsmith\Documents\My Tableau Prep Builder Repository\Flows\Flow1.tfl"

Mac

/Applications/Tableau\ Prep\ Builder\ 2020.2.2.app/Contents/scripts/./tableau-prep-cli -c /Users/jsmith/Desktop/Flow\ credentials/Flow1.json -t /Users/jsmith/Documents/My\ Tableau\ Prep\ Builder\ Repository/Flows.Flow1.tfl

流程發佈至伺服器,並且認證檔案存放在網路共用上

Windows

"\Program Files\Tableau\Tableau Prep Builder 2020.2.2\scripts"\tableau-prep-cli.bat -c "\\tsi.lan\files\Flow credentials\Flow1.json" -t "\C:\Users\jsmith\Documents\My Tableau Prep Builder Repository\Flows\Flow1.tfl"

Mac

/Applications/Tableau\ Prep\ Builder\ 2020.2.2.app/Contents/scripts/./tableau-prep-cli -c /Volumes/files/Flow\ credentials/Flow1.json -t /Users/jsmith/Documents/My\ Tableau\ Prep\ Builder\ Repository/Flows.Flow1.tfl
感謝您的回饋! 提交意見回饋時發生錯誤。重試或傳送訊息給我們