保存和共享工作

注意:从版本 2020.4 开始,您现在可以在 Tableau ServerTableau Online 中创建和编辑流程。除非特别指出,本主题中的内容适用于所有平台。有关在 Web 上制作流程的详细信息,请参见Web 上的 Tableau Prep

在流程的任何位置,您都可以手动保存工作,或者让 Tableau 在 Web 上创建或编辑流程时自动为您保存工作。在 Web 上处理流程时,存在一些差异。

Tableau Prep Builder Web 上的 Tableau Prep
  • 在 Tableau Desktop 中查看流程中数据的预览。
  • 在流程输入中包括直接文件连接或打包文件,然后将打包的流程发布到服务器。
  • 将流程输出到文件、已发布的数据源或数据库(版本 2020.3.1 及更高版本)。
  • 在 Web 上创建和编辑流程。
  • 上载流程输入的文件并连接到各种数据源。
  • 将流程输出到已发布的数据源或数据库。

若要使数据保持最新,您可以从 Tableau Prep Builder 中或通过命令行手动运行流程。您还可以运行在 Tableau Server 或 Tableau Online 上手动发布或按计划发布的流程。有关运行流程的详细信息,请参见运行流程

保存您的流程

Tableau Prep Builder 中,您可以手动保存流程以在执行任何其他操作之前备份您的工作。流程以 Tableau Prep 流程 (.tfl) 文件格式保存。

您也可以随流程一起打包本地文件(Excel、文本文件和 Tableau 数据提取)以与其他人共享,就像在 Tableau Desktop 中打包工作簿用于共享一样。只能随流程一起打包本地文件。举例来说,不会包括来自数据库连接的数据。

在 Web 制作中,本地文件会自动随流程打包在一起。尚不支持直接文件连接。

在保存打包流程时,流程将保存为打包 Tableau 流程文件 (.tflx)。

  • 若要手动保存流程,请从顶部菜单中选择“文件”>“保存”

  • Tableau Prep Builder 中,若要随流程一起打包数据文件,请从顶部菜单中执行以下操作之一:

    • 选择“文件”>“导出打包流程”

    • 选择“文件”>“另存为”。然后,在“另存为”对话框中,从“另存为类型”下拉菜单中选择“打包 Tableau 流程文件”

在 Web 上自动保存流程

在 Tableau Server 版本 2020.4 及更高版本上支持。

如果在 Web 上创建或编辑流程,则一旦对流程进行更改(连接到数据源、添加步骤等),您的工作就会每隔几秒钟自动保存一次草稿,这样您就不会丢失工作。

您只能将流程保存到当前已登录的服务器。您不能在一台服务器上创建草稿流程,并尝试将其保存或发布到另一台服务器。如果要将流程发布到服务器上的其他项目,请使用“文件”>“发布为”菜单选项,然后从对话框中选择项目。

草稿流程只能由您查看,直到您发布它们,并使其可供有权访问您服务器上的项目的任何人使用。处于草稿状态的流程会使用“草稿”徽章进行标记,以便您可以轻松地找到正在进行中的流程。 如果流程从未发布,则“草稿”徽章旁边将显示“从未发布”徽章。

发布流程以及编辑并重新发布流程后,将创建一个新版本。您可以在“修订历史记录”对话框中查看流程版本列表。从“浏览”页面中,单击 操作”菜单并选择“修订历史记录”

有关修订历史记录的详细信息,请参见 Tableau Desktop 帮助中的处理内容修订(链接在新窗口中打开)

注意:“自动保存”功能默认情况下已启用。管理员可以(但不建议)在站点上禁用自动保存。若要关闭自动保存,请使用 Tableau Server REST API 方法“更新站点”,并将 flowAutoSaveEnabled 属性设置为 false。有关详细信息,请参见 Tableau Server REST API 站点方法:更新站点(链接在新窗口中打开)

自动文件恢复

在 Tableau Prep Builder 版本 2021.3.3 及更高版本中受支持。

默认情况下,如果应用程序冻结或崩溃,Tableau Prep Builder 将自动保存任何已打开流程的草稿。草稿流程保存在“我的 Tableau Prep 存储库”中的“已恢复流程”文件夹中。下次打开应用程序时,将显示一个对话框,其中包含可供选择的已恢复流程的列表。您可以打开恢复的流程并在停止的位置继续,或者在不需要时删除恢复的流程文件。

注意:如果在“已恢复流程”文件夹中有已恢复流程,则每次打开应用程序时都会显示此对话框,直到该文件夹为空。

如果不希望启用此功能,作为管理员,您可以在安装期间或安装之后将其关闭。有关如何关闭此功能的详细信息,请参见 Tableau Desktop 和 Tableau Prep 部署指南中的关闭恢复(链接在新窗口中打开)

在 Tableau Desktop 中查看流程输出

注意:此选项在 Web 上不可用。

当您清理数据时,有时您可能希望通过在 Tableau Desktop 中查看数据来检查进度。当流程在 Tableau Desktop 中打开时,Tableau Prep Builder 会创建一个永久的 Tableau .hyper 文件和一个 Tableau 数据源 (.tds) 文件。这些文件保存在 Tableau 存储库的“数据源”文件中, 以便您能够随时试验数据。

在 Tableau Desktop 中打开流程时,您可以看到流程中您正在处理的数据样本,其已应用到所选步骤为止的操作。

注意:尽管您可以体验数据,但 Tableau 只会向您显示数据示例,您将无法将工作簿另存为打包工作簿 (.twbx)。当您准备在 Tableau 处理自己的数据时,请在流程中创建一个输出步骤,并将输出保存到文件或另存为发布的数据源,然后在 Tableau 中连接到完整数据源。

若要在 Tableau Desktop 中查看数据样本,请执行以下操作:

  1. 右键单击要在其中查看数据的步骤,并从上下文菜单中选择“在 Tableau Desktop 中预览”

  2. Tableau Desktop 将打开“工作表”选项卡。

创建数据提取文件和已发布数据源

重要信息:从 Tableau Prep Builder 版本 2020.3.1 开始,流程输出不再支持 Tableau 数据提取 (.tde) 文件。发布到服务器版本 2020.3 及更高版本、输出到此文件类型的任何流程必须转换为输出到 Hyper 数据提取 (.hyper) 文件类型。否则,流程将无法运行。如果流程已发布到 Tableau Server 或 Tableau Online,请下载流程,更改输出类型并重新发布流以避免流程运行错误。

若要创建流程输出,请运行流程。运行流程时,您所做的更改将应用于整个数据集。运行流程会生成 Tableau 数据源 (.tds) 和 Tableau 数据提取 (.hyper) 文件。

注意:您可以将数据提取或已发布数据源发布到 Tableau Server 版本 10.0 及更高版本,以及发布到 Tableau Online。

Tableau Prep Builder

您可以依据流程输出创建数据提取文件,以便在 Tableau Desktop 中使用,或与第三方共享数据。采用以下格式创建数据提取文件:

  • Hyper 数据提取 (.hyper):这是最新的 Tableau 数据提取文件类型,并且只能由 Tableau Desktop 或 Tableau Server 版本 10.5 及更高版本使用。

  • 逗号分隔值 (.csv):将数据提取保存到 .csv 文件以与第三方共享数据。导出的 CSV 文件的编码将为带 BOM 的 UTF-8。

  • Microsoft Excel (.xlsx):从版本 2021.1.2 开始,您可以将我们的流程数据输出到 Microsoft Excel 电子表格。不支持旧版 Microsoft Excel .xls 文件类型。

Tableau Prep Builder 以及在 Web 上

您可以将数据输出以已发布数据源形式发布到 Tableau Server 或 Tableau Online,以便共享数据并提供对您已清理、调整和合并的数据的集中访问。

您还可以将流程输出保存到数据库中,以使用干净、准备好的流程数据创建、替换或追加表数据。有关详细信息,请参见将流程输出数据保存到外部数据库

还可以使用增量刷新运行流程。此选项可以节省时间和资源,并使您能够仅刷新新数据,而不是刷新完整数据集。有关如何使用增量刷新配置和运行流程的信息,请参见使用增量刷新来刷新流程数据

注意:若要将 Tableau Prep Builder 输出发布到 Tableau Server,必须启用 Tableau Server REST API。有关详细信息,请参见 Tableau REST API 帮助中的 REST API 要求(链接在新窗口中打开)。若要发布到使用安全套接字层 (SSL) 加密证书的服务器,还要在运行 Tableau Prep Builder 的计算机上执行一些额外配置步骤。有关详细信息,请参见 Tableau Desktop 和 Tableau Prep Builder 部署指南中的安装之前(链接在新窗口中打开)

创建数据提取到文件

注意:在 Web 上创建或编辑流程时,此输出选项不可用。

  1. 单击步骤上的加号图标 ,并选择“添加输出”

    如果以前运行过流程,请单击输出步骤上的运行流程 按钮。这将运行流程并更新输出。

    “输出”窗格将打开,并显示数据的快照。

  2. 在左侧窗格中,从“将输出保存到”下拉列表中选择“文件”。在以前的版本中,选择“保存到文件”

  3. 单击“浏览”按钮,然后在“将数据提取另存为”对话框中输入文件的名称,并单击“接受”

  4. “输出类型”字段中,从以下输出类型中进行选择:

    • Tableau 数据提取 (.hyper)

    • 逗号分隔值 (.csv)

  5. (Tableau Prep Builder 版本 2020.2.1 及更高版本)在“写入选项”部分,查看用于将新数据写入文件并根据需要进行任何更改的默认写入选项。有关详细信息,请参见配置写入选项

    • 创建表:此选项创建新表,或将现有表替换为新输出。

    • 追加到表:此选项将新数据添加到现有表中。如果表不存在,将创建一个新表,后续运行会将新行添加到此表。

      注意:对于 .csv 输出类型,不支持“追加到表”。有关支持的刷新组合的详细信息,请参见流程刷新选项

  6. 单击“运行流程”以运行流程并生成数据提取文件。

创建数据提取到 Microsoft Excel 工作表

在 Tableau Prep Builder 版本 2021.1.2 及更高版本中受支持。在 Web 上创建或编辑流程时,此输出选项不可用。

当您流程数据输出到 Microsoft Excel 工作表时,您可以在现在工作表中附加或替换数据。以下条件适用:

  • 仅支持 Microsoft Excel .xlsx 文件格式。
  • 工作表行从单元格 A1 开始。
  • 在附加或替换数据时,会假定第一行为标题。
  • 创建新工作表时会添加标题名称,但在将数据添加到现有工作表时不会添加。
  • 现有工作表中的任何格式设置或公式不适用于流程输出。
  • 目前不支持写入到指定的表或范围。

将流程数据输出到 Microsoft Excel 工作表文件

  1. 单击步骤上的加号图标 ,并选择“添加输出”

    如果以前运行过流程,请单击输出步骤上的运行流程 按钮。这将运行流程并更新输出。

    “输出”窗格将打开,并显示数据的快照。

  2. 在左侧窗格中,从“将输出保存到”下拉列表中选择“文件”

  3. 单击“浏览”按钮,然后在“将数据提取另存为”对话框中输入或选择文件名,并单击“接受”

  4. “输出类型”字段中,选择“ Microsoft Excel (.xlsx)”。

  5. “工作表”字段中,选择要将结果写入的工作表,或改为在字段中输入新名称,然后单击“创建新表”
  6. “写入选项”部分中,选择以下写入选项之一:

    • 创建表:使用流程数据创建或重新创建(如果文件已经存在)工作表。

    • 追加到表:在现有工作表中添加新行。如果工作表不存在,则创建一个,并且后续流程运行会向该工作表添加行。

    • 替换数据:用流程数据替换现有工作表中的第一行以外的所有现有数据。

      字段比较显示流程中与工作表中字段匹配的字段(如果工作表已存在)。如果工作表是新的,则显示一对一字段匹配。任何不匹配的字段都被忽略。

  7. 单击“运行流程”以运行流程并生成 Microsoft Excel 数据提取文件。

创建发布的数据源

  1. 单击步骤上的加号图标 ,并选择“添加输出”

    注意:Tableau Prep Builder 将刷新以前发布的数据源,并保留数据源中可能包含的任何数据建模(例如计算字段、数字格式设置等)。如果无法刷新数据源,则将改为替换数据源。

  2. “输出”窗格将打开,并显示数据的快照。

  3. “将输出保存到”下拉列表中,选择“已发布数据源”(在以前的版本中选择 “发布为数据源”)。填写以下字段:

    • 服务器(仅限 Tableau Prep Builder):选择要在其中发布数据源和数据提取的服务器。如果未登录到服务器,则会提示您登录。

      注意:从 Tableau Prep Builder 版本 2020.1.4 开始,在您登录到服务器后,Tableau Prep Builder 会在关闭应用程序时记住服务器名称和凭据。下次打开应用程序时,您已经登录服务器。

      在 Mac 上,可能会提示您提供对 Mac 密钥链的访问权限,以便 Tableau Prep Builder 能够安全地使用 SSL 证书来连接到 Tableau Server 或 Tableau Online 环境。

      如果要输出到 Tableau Online,请在“serverUrl”中包括您的站点托管于其上的 pod。例如,“https://eu-west-1a.online.tableau.com”,而不是“https://online.tableau.com”。

    • 项目:选择要在其中加载数据源和数据提取的项目。

    • 名称:输入文件名。

    • 说明:输入数据源的说明。

  4. (Tableau Prep Builder 版本 2020.2.1 及更高版本)在“写入选项”部分,查看用于将新数据写入文件并根据需要进行任何更改的默认写入选项。有关详细信息,请参见配置写入选项

    • 创建表:此选项创建新表,或将现有表替换为新输出。

    • 追加到表:此选项将新数据添加到现有表中。如果表不存在,将创建一个新表,后续运行会将新行添加到此表。

  5. 单击“运行流程”以运行流程并发布数据源。

将流程输出数据保存到外部数据库

在 Tableau Prep Builder 版本 2020.3.1 及更高版本中受支持,以及从版本 2020.4 开始,在 Tableau Server 和 Tableau Online 上受支持

重要信息:此功能使您能够永久删除和替换外部数据库中的数据。请确保您具有写入数据库的权限。
为了防止数据丢失,您可以使用“自定义 SQL”选项复制表数据,并在将流程数据写入表之前运行它。

可以通过 Tableau Prep Builder 或 Web 支持的任何连接器连接到数据,并将数据输出到外部数据库。这使您能够在每次运行流程时使用干净、准备好的数据在数据库中添加或更新数据。此功能可用于增量刷新和完全刷新选项。有关如何配置增量刷新的详细信息,请参见使用增量刷新来刷新流程数据

将流程输出保存到外部数据库时,Tableau Prep 将执行以下操作:

  1. 生成行并针对数据库运行任何 SQL 命令。
  2. 将数据写入输出数据库中的临时表(如果输出到 Snowflake,则为暂存区域)。
  3. 如果操作成功,数据将从临时表(或 Snowflake 的暂存区域)移动到目标表中。
  4. 运行将数据写入数据库后要运行的任何 SQL 命令。

如果 SQL 脚本失败,流程将失败。但是,您的数据仍将加载到数据库表中。您可以尝试再次运行流程,也可以在数据库上手动运行 SQL 脚本以应用它。

输出选项

将数据写入数据库时,可以选择以下选项。如果表不存在,则在首次运行流程时创建该表。

  • 追加到表:此选项将数据添加到现有表中。如果表不存在,则在首次运行流程时创建该表,并在每次后续流程运行时将数据添加到该表中。
  • 创建表:此选项使用流程中的数据创建一个新表。如果该表已存在,则删除表和为表定义的任何现有数据结构或属性,并替换为使用流程数据结构的新表。流程中存在的任何字段都将添加到新的数据库表中。
  • 替换数据:此选项删除现有表中的数据并将其替换为流程中的数据,但保留数据库表的结构和属性。如果表不存在,则在首次运行流程时创建该表,并且在每次后续流程运行时,表数据将替换。

其他选项

除了写入选项之外,还可以包括自定义 SQL 脚本或向数据库添加新表。

  • 自定义 SQL 脚本:输入自定义 SQL 并选择是在将数据写入数据库表之前、之后还是同时运行脚本。可以使用这些脚本在将流程数据写入表、添加索引、添加其他表属性等之前创建数据库表的副本。
  • 添加新表:向数据库添加具有唯一名称的新表,而不是从现有表列表中选择一个表。如果要应用默认架构(Microsoft SQL Server 和 PostgreSQL)以外的架构,可以使用语法 [schema name].[table name] 指定该架构。

支持的数据库和数据库要求

Tableau Prep 支持将流程数据写入特定数量的数据库中的表。在 Tableau Online 中按计划运行的流程只有在云托管时才能写入这些数据库。

某些数据库具有数据限制或要求。Tableau Prep 可能还会施加一些限制,以便在将数据写入支持的数据库时保持最佳性能。下表列出了可在其中保存流程数据的数据库,以及任何数据库限制或要求。不符合这些要求的数据在运行流程时可能会导致错误。

注意:尚不支持为字段设置字符限制。但是,您可以在数据库中创建包含字符限制约束的表,然后使用“替换数据”选项替换数据,但保留数据库中的表结构。

数据库 要求或限制
Amazon Redshift
  • 不支持排序规则顺序。有关详细信息,请参见 Amazon Redshift(链接在新窗口中打开) 文档。
  • 字段名将转换为全小写。
  • 可为文本字段值最多写入 8192 个字符。更长的值将被截断。
Google BigQuery
  • Tableau 最多可以将 2GB 作为输出写入表。

Microsoft SQL Server
  • 可为文本字段值最多写入 3072 个字符。更长的值将被截断。

MySQL
  • 可为文本字段值最多写入 8192 个字符。更长的值将被截断。
Oracle
  • 字段名和表名不能超过 30 个字符。
  • 可为文本字段值最多写入 1000 个字符。更长的值将被截断。
  • 字段名中的特殊字符可能会导致错误。
PostgreSQL
  • 可为文本字段值最多写入 8192 个字符。更长的值将被截断。
Snowflake
  • 可为文本字段值最多写入 8192 个字符。更长的值将被截断。
  • 必须将仓库选项设置为自动恢复,以使 Tableau Prep 能够将数据写入数据库仓库。有关详细信息,请参见 Snowflake 文档中的自动暂停和自动恢复(链接在新窗口中打开)

Teradata
  • 可为文本字段值最多写入 1000 个字符。更长的值将被截断。

将流程数据保存到数据库

注意:不支持使用 Windows 身份验证将流程输出写入数据库。如果使用这种身份验证方法,则需要更改连接身份验证以使用用户名和密码。

您可以在发布流程时为数据库嵌入凭据。有关嵌入凭据的详细信息,请参见从 Tableau Prep Builder 中发布流程中的“数据库”部分。

  1. 单击步骤上的加号图标 ,并选择“添加输出”
  2. “将输出保存到”下拉列表中,选择“数据库表”
  3. “设置”选项卡中,输入以下信息:
    • “连接”下拉列表中,选择要在其中写入流程输出的数据库连接器。 仅显示受支持的连接器。这可以是用于流程输入的连接器的同一连接器或其他连接器。如果选择其他连接器,系统将提示您登录。

      重要信息:请确保您对选择的数据库具有写入权限。否则,流程可能只会部分处理数据。

    • “数据库”下拉列表中,选择要在其中保存流程输出数据的数据库。
    • “表”下拉列表中,选择要在其中保存流程输出数据的表。根据所选的“写入选项”,将创建一个新表,流程数据将替换表中的任何现有数据,或者流程数据将添加到现有表中。

      若要在数据库中创建新表,请改为在字段中输入唯一的表名,然后单击“创建新表”。首次运行流程时,无论选择哪个写入选项,都将使用与流程相同的架构在数据库中创建表。

  4. 输出窗格将显示数据的快照。字段比较显示流程中与表中字段匹配的字段(如果表已存在)。如果表是新的,则显示一对一字段匹配。

    如果存在任何字段不匹配,状态说明会显示任何错误。

    • 不匹配:字段将被忽略:字段存在于流程中,但不在数据库中。除非选择“创建表”写入选项并执行完全刷新 ,否则不会将该字段添加到数据库表中。然后将流程字段添加到数据库表并使用流程输出架构。
    • 不匹配:字段将包含 Null 值:字段存在于数据库中,但不在流程中。流程将 Null 值传递到字段的数据库表。如果该字段确实存在流程中,但由于字段名不同而不匹配,您可以导航到清理步骤并编辑字段名以匹配数据库字段名。有关如何编辑字段名的详细信息,请参见应用清理操作
    • 错误:字段数据类型不匹配:分配给流程中字段和向其中写入输出的数据库表的数据类型必须匹配,否则流程将失败。您可以导航到清理步骤并编辑字段数据类型来修复此问题。有关更改数据类型的信息,请参见查看分配给数据的数据类型
  5. 选择写入选项:您可以为完全刷新和增量刷新选择其他选项,并在选择流程运行方法时应用该选项。有关使用增量刷新运行流程的详细信息,请参见使用增量刷新来刷新流程数据
    • 追加到表:此选项将数据添加到现有表中。如果表不存在,则在首次运行流程时创建该表,并在每次后续流程运行时将数据添加到该表中。
    • 创建表:此选项将创建新表。如果具有相同名称的表已存在,则删除现有表并替换为新表。为表定义的任何现有数据结构或属性也将被删除,并替换为流程数据结构。流程中存在的任何字段都将添加到新的数据库表中。
    • 替换数据:此选项删除现有表中的数据并将其替换为流程中的数据,但保留数据库表的结构和属性。
  6. (可选)单击“自定义 SQL”选项卡并输入 SQL 脚本。您可以输入要在将数据写入表之前之后运行的脚本。

  7. 单击“运行流程”以运行流程并将数据写入所选的数据库。

 

此部分中的其他文章

感谢您的反馈!