从命令行中自动执行数据提取刷新任务

您可以使用 Tableau 数据提取命令行实用工具自动执行数据提取刷新任务。此实用工具是 Tableau Desktop 附带的一种命令行实用工具,您可以通过其刷新发布的数据提取数据源,或将数据从文件附加到这些数据源。

若要使用 Tableau 数据提取命令行实用工具,需满足以下要求:

  • 它在 Windows 上随 Tableau Desktop 一起提供,并且只能在 Windows 系统上运行。

  • 您可以为不使用 Oauth 的数据提取数据源使用该实用工具。

  • 您只能使用它来刷新单连接数据源。它不适用于多连接数据源。

运行实用工具之前

对 Tableau 10.4 及更早版本中创建的数据提取(即 .tde 数据提取)执行数据提取刷新或附加数据操作时,数据提取会自动升级为 .hyper 数据提取。尽管升级到 .hyper 数据提取有许多优点,但您将无法使用以前版本的 Tableau Desktop 打开数据提取。

有关详细信息,请参阅数据提取升级为 .hyper 格式

运行实用工具

  1. 以管理员身份打开命令提示符,并转到 Tableau Desktop bin 目录。例如:

    cd C:\Program Files\Tableau\Tableau 2019.2\bin

  2. 使用下列命令之一,并添加下表中描述的参数。

    • tableau refreshextract

    • tableau addfiletoextract

注意:使用此实用工具时,始终要在命令行上或脚本中指定 tableau,决不要指定 tableau.exe

tableau refreshextract 命令的语法和参数

使用 tableau refreshextract 可刷新 Tableau Server 或 Tableau Online 上的数据提取。刷新数据提取将会使用自上次刷新后对数据源所做的任何修改更新现有数据提取。

要查看此命令的帮助,请在 Windows 命令提示符处键入以下命令:

tableau refreshextract --help

使用参数

  • 所有选项都有一个与双连字符结合使用的完整形式(例如,--server)。

  • 有些选项还有一个与单连字符结合使用的短形式(例如,-s)。

  • 如果选项的值包含空格,则用引号将选项值引起来。

  • 所刷新的数据源必须是原始数据源,而不是 .tde。

tableau refreshextract 命令选项

短形式 完整形式 说明
  --source-username <user name>

数据源连接的有效用户名。

将此选项与 --source-password 结合使用,或使用

--original-file,而不是用户名和密码选项。

注意:在刷新发布的数据提取时必须提供用户和密码,即使最初是利用嵌入式凭据发布数据源的。

  --source-password "<password>"

数据源用户的密码。

 

--original-file <path and file name>

--original-file <path and folder name>

将在服务器上进行刷新的数据源的路径和文件名。例如:--original-file c:\folder\file.csv

若要刷新多文件数据源,请将路径传递到包含数据文件的文件夹。例如:--original-file c:\folder

如果文件位于网络共享上,请为路径使用 UNC 格式:\\server\path\filename.csv

  --force-full-refresh

如果数据源设置为进行增量刷新,请使用此选项强制对数据提取进行完整刷新。如果不包括此选项,则执行增量刷新。并非所有数据源都支持增量刷新。

-s <server http address> --server <URL>

在其中发布数据的 Tableau Server 的 URL。

对于 Tableau Online,请指定 https://online.tableau.com

-t <site id> --site <siteid>

在多站点环境中,指定命令将应用于的站点。对于 Tableau Online,如果您的用户名与一个以上的站点关联,请使用此参数。对于 Tableau Server,如果未指定站点,则使用默认站点。

站点 ID 独立于站点名称,当您在浏览器中查看站点时,它会显示在 URL 中。例如,如果您登录到 Tableau Online 后看到的页面的 URL 是

https://online.tableau.com/t/vernazza/views

站点 ID 是 vernazza

  --datasource <datasource>

发布到 Tableau Server 或 Tableau Online 的数据源的名称。

  --project <projectname>

数据源所属的项目。如果不包括此选项,则假定为默认项目。

如果要指定的项目是嵌入在项目分层结构内的子项目,则必须随 --parent-project-path 参数一起使用此参数。

  --parent-project-path path/to/project

如果将数据源发布到的项目没有位于项目分层结构的顶层,请随 --project 参数一起使用此参数以指定嵌套项目的路径。

使用正斜杠字符 (/) 来分隔分层结构中的项目级别。使用反斜杠 (\) 对项目名称中的正斜杠或反斜杠字符进行转义。

例如,对于顶层“Marketing”下的项目“Social”中名为 Sandbox 的项目:

--project Sandbox --parent-project-path Marketing/Social

-u <user name> --username <username>

有效的 Tableau Server 或 Tableau Online 用户。

-p "<password>" --password "<password>"

指定的 Tableau Server 或 Tableau Online 用户的密码。

  --proxy-username <username>

代理服务器的用户名。

  --proxy-password "<password>"

代理服务器的密码。

-c "<path and file name>" --config-file "<path and file name>"

包含命令配置选项的文件的路径和文件名信息。始终将路径括在双引号内。有关详细信息,请参见下面的使用配置文件

tableau refreshextract 示例命令

以下命令可刷新已发布到 Tableau Online、名为 CurrentYrOverYrStats 的数据提取。此命令指定以下内容:

  • Tableau Online 用户和密码。
  • Tableau Online 站点和项目名称。
  • 数据源以及用于登录托管数据源的用户名和密码,在本例中,数据库源由云端数据源提供商(例如 Salesforce.com)托管。

C:\Program Files\Tableau\Tableau 2019.2\bin>tableau refreshextract --server https://online.tableau.com --username email@domain.com --password "OurServerPwd" --site vernazza --project "New Animations" --datasource "CurrentYrOverYrStats" --source-username database_user@hosted_datasource_provider.com --source-password "db_password"

若要刷新基于文件的数据源的数据提取,请提供您从中创建数据提取的原始文件路径。如果文件位于网络共享上,请使用 UNC 格式,而不是映射的驱动器。

C:\Program Files\Tableau\Tableau 2019.2\bin>tableau refreshextract --server https://online.tableau.com --username email@domain.com --password "OurServerPwd" --site vernazza --project "New Animations" --datasource "CurrentYrOverYrStats" --original-file "\\server\path\filename.csv"

tableau addfiletoextract 的语法

使用 tableau addfiletoextract 将文件内容附加到已发布到 Tableau Server 或 Tableau Online 的数据提取。此命令组合两个文件。

如果只想使用最新更改更新现有数据提取,请使用 refreshextract 命令。使用 addfiletoextract 更新现有数据提取将会复制数据。

要查看此命令的帮助,请在 Windows 命令提示符处键入以下命令:

tableau addfiletoextract --help

所有选项都有一个与双连字符结合使用的完整形式(例如,--server)。有些选项还有一个与单连字符结合使用的短形式(例如,-s)。如果选项的值包含空格,则用引号将选项值引起来。

tableau addfiletoextract 命令选项

短形式 完整形式 说明
  --file <path and file name>

包含要追加的数据的数据文件的路径和文件名信息。该文件可来自 Excel、Access、Tableau 数据提取,或者带分隔符的文本文件。它不能受密码保护。如果文件位于网络共享上,请使用 UNC 格式。例如,\\server\path\filename.csv

-s <server http address> --server <URL>

在其中发布数据的 Tableau Server 的 URL。

对于 Tableau Online,请指定 https://online.tableau.com

-t <site id> --site <site id>

在多站点环境中,指定命令将应用于的站点。对于 Tableau Online,如果您的用户名与一个以上的站点关联,则必须包括此参数。对于 Tableau Server,如果未指定站点,则使用默认站点。

  --datasource <datasource>

发布到 Tableau Server 或 Tableau Online 的数据源的名称。

  --project <projectname>

数据源所属的项目。如果不包括此选项,则假定为默认项目。

如果要指定的项目是嵌入在项目分层结构内的子项目,则必须随 --parent-project-path 参数一起使用此参数。

  --parent-project-path path/to/project

如果将数据源发布到的项目没有位于项目分层结构的顶层,请随 --project 参数一起使用此参数以指定嵌套项目的路径。

使用正斜杠字符 (/) 来分隔分层结构中的项目级别。使用反斜杠 (\) 对项目名称中的正斜杠或反斜杠字符进行转义。

例如,对于顶层“Marketing”下的项目“Social”中名为 Sandbox 的项目:

--project Sandbox --parent-project-path Marketing/Social

-u <username> --username <username>

有效的 Tableau Server 或 Tableau Online 用户。

-p "<password>" --password "<password>"

指定的 Tableau Server 或 Tableau Online 用户的密码。

  --proxy-username <username>

代理服务器的用户名。

  --proxy-password "<password>"

代理服务器的密码。

-c "<path and filename>" --config-file "<path and filename>"

包含命令配置选项的文件的路径和文件名信息。始终将路径括在双引号内。有关详细信息,请参见下面的使用配置文件

tableau addfiletoextract 示例命令

C:\Program Files\Tableau\Tableau 2019.2\bin>tableau addfiletoextract --server https://online.tableau.com --username email@domain.com --password "OurServerPwd" --site vernazza --project "New Animations" --datasource "CurrentYrOverYrStats" --file "C:\Users\user2\Documents\DataUploadFiles\AprMay.csv"

使用配置文件

可以使用纯文本编辑器(例如记事本或 Text Edit),来创建可用于 tableau refreshextracttableau addfiletoextract 的配置文件。如果希望在一段时间内定期更新同一数据源,配置文件可能非常有用。指定配置文件后,就无需在每次运行命令时都键入相同的选项。配置文件还有一个优势,那就是不会在命令行上泄漏用户名和密码。

创建配置文件

例如,假设您创建了一个名为 config.txt 的文件并将它保存到您的 Documents 文件夹。在该文件中,您包含了下面显示的参数信息。

对于从托管数据源发布到 Tableau Online 的数据源(其中服务器https://online.tableau.com):

server=https://online.tableau.com
site=vernazza
username=email@domain.com
password=OurPassword
project=New Animations
datasource=CurrentYrOverYrStats
source-username=database_user@hosted_datasource_provider.com
source-password=db_password

在命令行中引用配置文件

创建配置文件后,可以运行 tableau refreshextracttableau addfiletoextract 命令,指向配置文件,将其作为命令行中使用的唯一选项,并将配置文件的路径括在双引号内。语法如下:

tableau refreshextract --config-file "<path>"

例如,若要刷新在创建配置文件部分的示例中指定的数据提取,应运行以下命令(确保在所用 Tableau Desktop 版本的 bin 目录中工作):

C:\Program Files\Tableau\Tableau 2019.2\bin>tableau refreshextract --config-file "C:\Users\user1\Documents\config.txt"

配置文件的语法差异

用于在配置文件内指定选项的语法与命令行中使用的语法在以下方面有所不同:

  • 选项名称不以短横线或连字符开头。
  • 可使用等号(不含空格)分隔选项名称和选项值。
  • 值不需要(或不允许)用引号引起来,即使它们包含空格也是如此(就像前面示例中的 project 选项)。

使用 Windows 任务计划程序刷新数据提取

您可将 Windows 任务计划程序与 Tableau 数据提取命令行实用工具结合使用,以便从企业防火墙内自动执行对 Tableau Online 数据源的定期更新。可将任务配置为每天、每周或每月执行一次,或者在发生特定系统事件后执行。例如,在计算机启动时运行任务。

若要了解详细信息,请参见 Microsoft TechNet 库中的任务计划程序使用指南页。

感谢您提供反馈! 提交反馈时出错。请重试或向我们发送消息