在 AWS 上优化 Tableau Server 的性能

这是存档内容

继续支持公有云部署,但不再更新第三方公有云部署的内容。

有关最新的 Tableau Server 部署内容,请参见企业部署指南(链接在新窗口中打开)和 Tableau Server 帮助的(链接在新窗口中打开)部分。

对于那些有权访问的客户,我们建议使用 Tableau Cloud。有关更多详细信息,请参见:

简介

如果在 AWS 云中的 Amazon EC2 实例上安装 Tableau Server 时优化其性能,则会添加另一个维度来调整 Tableau Server 解决方案。本节讨论针对云调整 Tableau Server。有关一般性能调整的信息,请参见 Tableau Server 性能概述。有关可用于帮助优化性能的工具的信息,请参见性能资源

重要的是要记住,AWS 上 Tableau Server 的每个部署都是不同的,因为每个人的工作负载都是唯一的。您公司的员工是不同、利用不同的数据、询问不同的各种问题,并且具有与其他公司不同的业务需求。因此,我们建议在投入生产之前针对各种不同 Amazon EC2 实例类型测试 Tableau Server 工作负载。您的工作负载的需求可能会受到以下因素的影响:

  • 重度、轻度或中度 Tableau 数据提取使用量

  • 查看可视化项和仪表板的用户与同可视化项和仪表板交互的用户的比例

  • Tableau 数据提取在工作时间或之后进行的刷新

  • 任何给定期间中的并存个体数

  • 视图和仪表板复杂性

  • 利用 Tableau Web 制作的社区的大小

您可以遵循一些一般准则来增加选择正确实例类型的可能性。通过使用 TabJolt(由 Tableau 构建的免费可扩展性测试工具),您可以利用以下指标在 Amazon EC2 实例中运行负载测试,来测试性能和可扩展性:

  • 执行操作的虚拟用户数

  • 每秒钟的平均事务数

  • 平均成功响应时间

  • 平均错误率(测试考虑任何呈现错误所用时间超过 60 秒的虚拟化项)

性能最佳做法

在 AWS 上部署 Tableau 时,参考以下性能最佳做法可能对您很有用:

  • 每个 Amazon EC2 实例务必至少运行 8 个内核

    即使用户数量相对较少,vCPU 少于 16 个(相当于 8 个内核)的 EC2 实例也不能始终如一地表现出良好的性能。例如,与各具有 8vCPU 的两个 r4.2xlarge 实例相比,一个具有 16vCPU 的 r4.4xlarge 实例能够处理更多的用户,响应时间更短且错误率更低。当您扩展时,此模式是一致的,四个 16vCPU 实例和两个 32vCPU 实例的性能显着优于八个 8vCPU 实例。

  • 工作负载很大程度上决定了结果

    工作负载的稳健性对确定其在不同 EC2 实例类型上的执行方式大有裨益。例如,如果使用不同的一组仪表板,则您将看到性能与相同底层虚拟机实例的性能有明显差异。尝试使用非自己的任何其他工作负载比较性能不是很有用。

  • CPU 越多越好

    CPU 经常是 Tableau Server 性能的主要瓶颈。一般来说,当您想要使用 Tableau 执行更多操作时,我们建议您添加更多更好的 CPU。

  • 确保您的 Amazon EC2 实例具有足够的 RAM

    当我们在具有较少 CPU 但 RAM 较大的实例上运行相同的工作负载时,我们感觉到每秒钟处理的事务数 (TPS) 更多、响应时间更短和错误率更低。RAM 太少的 EC2 实例可能会抵消高端 CPU 的好处。在生产中,运行时至少要有 30 GB 的内存,但每个内核要得到 8 GB 的 RAM。虽然选择一个具有大量 CPU 的实例很重要,但在急需 RAM 的实例上运行 Tableau Server 将导致性能低下 - 无论您有多少 CPU 都是如此。

  • 您想要使用基于 SSD 的卷,但可能不需要预配的 IOPS

    Tableau Server 包含许多进程和组件,包括存储系统元数据的工业级数据库 (PostgreSQL)。为了有出色的性能,Tableau Server 需要合理的磁盘吞吐量水平,我们建议仅使用基于 SSD 的 Amazon 弹性块存储 (EBS) 卷。磁盘缺乏有效处理数据库请求所需的吞吐量。在我们的测试中,我们运行通用 SSD (gp2) 和 EBS 预配 IOPS 卷(具有两个用于大多数测试的 EBS 磁盘)。大多数 EBS 卷有 1500 个预配 IOPS。在用通用 SSD 再次运行测试后,我们的结果与中等要求的工作负载几乎相同。尽管在某些情况下,预配的 IOPS 在 AWS 上会显著影响 Tableau Server 工作负载的性能,但您不应假设默认情况下需要配置 IOPS。当然,想知道答案的最好方法就是自己测试 Tableau Server 的工作负载。

  • 用 TabJolt 做自己的测试

    您的工作负载和 Amazon EC2 实例的配置可能会对 Tableau Server 的工作性能产生重大影响。EC2 的灵活性使您可以轻松确定设置和实例类型的组合,以满足您的需求。例如,在几台机器上隔离一些需要 RAM 和 CPU 的进程,而不是在群集中的所有计算机上运行它们,从而对每秒处理的事务数 (TPS) 产生巨大影响。要顶住比较不同工作负载的性能特征的诱惑。虽然这真的很有趣,但这不是很有用。相反,请将相同的工作负载和修补程序与您的硬件和软件配置配合使用以获得最佳效果。AWS 使这很容易做到。

感谢您的反馈!您的反馈已成功提交。谢谢!