通过节点角色管理工作负载
使用节点角色,您可以配置在 Tableau Server 安装上的何处对某些类型的工作负载进行处理。节点角色功能允许您将资源专用于特定工作负载并进行扩展。您可以为后台程序和文件存储配置节点角色。
后台程序节点角色指定应在节点上运行的后台任务类型,而文件存储节点角色指定应在节点上运行的类型数据提取工作负载。两个节点角色都是在节点级别指定的。虽然这些节点角色可以独立工作以优化选定的工作负载,但两个节点角色的组合可用于专门化服务器节点优先执行选定的工作负载,从而优化性能数据提取繁重的工作负载。稍后在文件存储节点角色部分更详细地讨论了这种组合。
后台程序节点角色
后台程序进程运行Tableau Server 任务,包括数据提取刷新、订阅、流程任务、“立即运行”任务以及通过 tabcmd 启动的任务。运行所有这些任务可能会使用大量的计算机资源。如果群集中有多个后台程序节点,则可以指定后台程序可使用后台程序节点角色功能在节点上运行的任务类型,从而对后台程序工作负载进行管理。
此配置选项目前仅通过 TSM CLI 命令提供,并且仅可在多节点群集上使用。如果只有一个节点,则默认情况下后台程序设置为运行所有任务,并且无法更改。
使用后台程序节点角色
后台程序节点角色功能旨在使您更好地控制和管理在 Tableau Server 安装中的何处处理特定类型的后台程序工作负载,并允许您将资源专用于特定工作负载并进行扩展。
举例来说,如果部署需要大量的数据提取,并且用户正在运行许多数据提取刷新或加密作业,则将某个节点专用于数据提取刷新可能很有好处。同样,对于订阅,如果 Tableau Server 安装处理大量订阅,并且您希望确保其他作业不占用订阅的资源,则可以将一个节点专用于订阅。在这些情况下,您还需要将其他后台程序节点专用于除数据提取刷新或订阅外的工作负载。
为了支持高可用性,Tableau 建议使用多个专用于特定工作负载的节点。举例来说,如果您将一个节点专用于数据提取刷新,则还应该配置另一个节点来处理提取刷新工作负载。这样,如果专用于数据提取刷新的节点变得不可用,其他节点仍然能够处理数据提取刷新。
配置选项
配置 | 作业 |
all-jobs(默认值) | 所有 Tableau Server 作业 |
flows | 流程运行作业。 |
no-flows | 除流程外的所有作业。 |
extract-refreshes | 针对以下各项创建的作业: 增量刷新、完全刷新、所有数据提取(包括流程输出创建的数据提取)的加密和解密。 |
subscriptions | 订阅作业 |
system | 与其他 Tableau Server 进程交互的系统维护作业。例如,清理崩溃的作业、获取数据库事件以及同步 Active Directory。 |
extract-refreshes-and-subscriptions | 数据提取刷新、所有数据提取(包括流程输出创建的所有数据提取)的加密和解密,以及订阅作业。 |
no-extract-refreshes | 除数据提取刷新、所有数据提取(包括通过流程输出创建的数据提取)的数据提取加密和解密外的所有作业。 |
no-subscriptions | 除订阅外的所有作业。 |
no-extract-refreshes-and-subscriptions | 除数据提取刷新、所有数据提取(包括通过流程输出创建的数据提取)的加密和解密以及订阅外的所有作业。 |
no-system | 除系统维护作业之外的所有作业。 |
有关如何使用 tsm 命令设置节点角色的详细信息,请参见 tsm topology。
注意:对节点角色进行配置需要重新启动服务器,并且将需要停机一段时间。有关详细信息,请参见tsm pending-changes。
许可证要求
将节点配置为仅执行特定类型的任务(如流程、数据提取刷新和订阅),您必须在 Tableau Server 上激活以下许可证之一:
若要将节点配置为运行流程,您必须在服务器上激活有效的 Data Management 许可证,并在该节点上运行 Tableau Prep Conductor。若要详细了解 Tableau Prep Conductor,请参见Tableau Prep Conductor。
若要将节点配置为运行数据提取刷新、订阅以及与数据提取刷新和订阅相关的任何组合,您必须在 Tableau Server 上启用 Advanced Management 功能。如果许可证过期或已停用,您只要更改服务器配置就会出现错误。有关 Advanced Management 的详细信息,请参见关于 Tableau Server 上的 Tableau Advanced Management。
非常重要!
尽管流程、数据提取刷新和订阅可能成本高昂并且会消耗大量资源,但它们是可能需要专用资源的唯一作业。在“所有作业”组中,有各种各样后台程序执行的系统作业,例如工作簿的缩略图生成。确保运行除数据提取刷新、订阅或流程外的作业的节点具有足够的计算机资源。
有关使用 TSM 命令配置节点角色的详细信息,请参见tsm topology set-node-role。
注意事项
在配置后台程序节点角色时,您必须要考虑一些规则,下面列出了这些规则:
一次只能为节点设置一个节点角色配置。不能在一个节点上配置多个节点角色。
若要配置节点角色,该节点上至少必须有一个后台程序进程。
如果只有一个后台程序节点,则必须将此节点配置为运行所有作业。这是默认配置,不需要额外许可。
如果有多个合并的后台程序节点,则必须将它们配置为处理所有作业。可以通过以下方式实现这一点:
使用所有作业选项将其中一个节点配置为运行所有作业。这是最简单、最直接的方法。
在其中一个节点上使用例外配置之一:
- no-flows
- no-subscriptions
- no-extract-refreshes
- no-extract-refreshes-and-subscriptions
举例来说,在有三个后台程序的群集中,您可以将一个节点配置为运行流程、将一个节点配置为运行订阅和数据提取刷新,并将另一个配置为运行除流程、订阅和数据提取刷新之外的所有作业。
注意:2019.1 中引入了相应功能,可指定节点角色来运行流程、运行除流程外的所有作业,或者运行所有作业。
文件存储节点角色
Tableau Server 文件存储控制数据提取的存储。依赖于数据提取的工作负载大致分为三类。
数据提取工作负载 | 执行服务 |
刷新 | 后台程序 |
查询 | 数据引擎 |
备份/还原 | 备份/还原 |
通过将文件存储节点角色管理与后台程序节点角色管理结合使用,服务器管理员将服务器节点专门用于优先执行选定的工作负载,从而优化所有类别大量使用数据提取的工作负载的性能。
通过仅具有独立数据引擎节点的拓扑,可以将某个节点专用于执行数据提取查询工作负载。有关详细信息,请参见针对数据提取查询密集型环境进行优化。但是,这是以牺牲由后台程序节点执行的数据提取刷新工作负载为代价的。使用基于拓扑的隔离方法,大量使用提取刷的工作负载的速度很变慢,因为任何后台程序节点都没有文件存储,因此所有数据提取刷新流量都将通过网络。
使用“文件存储节点角色”配置选项,可以指定从可处理数据提取查询的服务器节点列表中优先选择具备该能力的某些服务器节点。这将允许服务器管理员在后台程序服务器节点上启用文件存储,从而防止数据提取查询在这些节点上执行,籍此加快诸如备份和数据提取刷新等工作负载的速度。如果有大量使用数据提取的查询工作负载和刷新工作负载,并且想要实现最佳数据提取查询性能,此功能非常有用。
针对数据提取刷新以及备份或还原工作负载的优化指导原则
从一个具有专用数据引擎节点的拓扑开始(请参见针对数据提取查询密集型环境进行优化)。
注意:在下图和过程中,节点 1 是初始节点,节点 2 是附加节点 1,节点 3 是附加节点 2,节点 4 是附加节点 3。
- 将文件存储添加到节点 1。
tsm topology set-process -n node1 -pr filestore -c 1
- 指定节点 3 和节点 4 来优先执行数据提取刷新工作负载
tsm topology set-node-role -n node3, node4 -r extract-queries
- 指定节点 1 来优先执行数据提取刷新工作负载。
tsm topology set-node-role -n node1 -r extract-refreshes
- 指定节点 2 来优先执行非数据提取刷新工作负载。
tsm topology set-node-role -n node2 -r no-extract-refreshes
- 应用待处理的更改。
tsm pending-changes apply
注意:在 Tableau Server 部署中,如果向现有节点中添加文件存储角色,则在同步新的文件存储时会暂时增加所有文件存储节点之间的网络 I/O。此操作的持续时间取决于文件存储上的数据量和网络带宽容量。可以使用 TSM Web GUI 监视同步状态。如果要向部署中添加多个文件存储,建议以连续方式添加,并在每次添加文件存储后等待初始同步完成。
微调数据提取查询工作负载管理
当在用户以交互方式查看基于数据提取的可视化项的同时运行针对电子邮件订阅和指标通知的数据提取查询时,用户可能会遇到比正常可视化项加载时间慢的情况。使用以下节点角色微调这些工作负载的优先划分方式。
要使用的节点角色 | 数据提取查询工作负载的类型 | 示例 |
extract-queries | 已计划 | 电子邮件订阅和指标通知 |
extract-queries-interactive | 交互式 | 查看基于数据提取的可视化项的用户 |
在服务器部署中,如果出现电子邮件订阅和指标通知增长的情况,您可以添加节点并分配 extract-queries
节点角色,从而使得它们更容易处理订阅和通知。
在服务器部署中,如果出现查看基于数据提取的可视化项的用户增长的情况,您可以添加节点并分配 extract-queries-interactive
节点角色,从而使它们确定交互式数据提取查询的优先级,以缩短基于数据提取的可视化项加载时间。extract-queries-interactive
节点角色是首选项,而不是紧密隔离。这意味着会将查询路由到已分配 extract-queries-interactive
节点角色的节点。如果有多个具有 extract-queries-interactive
角色的节点,则会根据节点运行状况路由查询。
例如,添加一个节点并将其指定为优先执行 extract-queries-interactive
工作负载。
tsm topology set-node-role -n node4 -r extract-queries-interactive
配置选项
配置 | 作业 |
all-jobs(默认值) | 所有 Tableau Server 作业 |
extract-queries | 为数据提取查询创建的作业。选定节点将以 all-jobs 方式运行,并将优先处理数据提取查询。 |
extract-queries-interactive | 为数据提取查询创建的作业。所选节点将以 all-jobs 方式运行,并将优先处理交互式数据提取查询,例如当用户查看其屏幕并等待加载基于数据提取的仪表板时运行的节点。这是一项高级设置,只有在群集具有繁重的订阅和通知作业工作负载,导致用户在与计划负载几乎同时运行的可视化项加载时上遇到性能下降时,才应使用该设置。 |
有关使用 TSM 命令配置节点角色的详细信息,请参见tsm topology set-node-role。
许可证要求
若要将节点配置为运行数据提取查询,您必须在 Tableau Server 上激活有效的 Advanced Management 许可证。
如何查看节点角色
使用以下命令查看 Tableau Server 上当前配置了哪些节点角色:tsm topology list-nodes -v
谁可以执行此操作
Tableau Server 管理员可以配置节点角色并激活任何必需的产品密钥。