PRESTO + dose presto cordinator 可以管理 160 个 worker 节点吗?

PRESTO + dose presto cordinator can manage 160 workers node?

我们有一个包含 160 个工作节点的 presto 集群。

基本问题是 - - 如果带有 presto 协调器的机器可以为 160 台工人机器提供服务

除此之外:

  1. 我们如何为presto协调器(内存,cpu)调整大小?

  2. 协调器机器的最佳实践大小计算公式是什么?

  3. Dose presto coordinator 可以处理和管理 160 台工人机器? ,

  4. Dose Presto 协调器机器仅限于管理 X 台工作机器?

崇敬 - http://prestodb.github.io/docs/current/overview/concepts.html

协调员 Presto 协调器是负责解析语句、计划查询和管理 Presto 工作节点的服务器。它是 Presto 安装的“大脑”,也是客户端连接以提交语句以供执行的节点。每个 Presto 安装都必须有一个 Presto 协调器和一个或多个 Presto worker。出于开发或测试目的,可以配置 Presto 的单个实例来执行这两个角色。

协调器跟踪每个工作人员的 activity 并协调查询的执行。协调器创建一个涉及一系列阶段的查询逻辑模型,然后将其转换为 Presto 工作集群上的一系列连接任务 运行。

协调员使用 REST API.

与工作人员和客户沟通

工人 Presto worker 是 Presto 安装中的服务器,负责执行任务和处理数据。工作节点从连接器获取数据并相互交换中间数据。 coordinator负责从worker中获取结果,并将最终结果返回给client。

当 Presto 工作进程启动时,它会向协调器中的发现服务器通告自己,这使得 Presto 协调器可以执行任务。

工作人员使用 REST API.

与其他工作人员和 Presto 协调员进行通信

TL;DR 通常,协调器可以轻松处理比 160 个多得多的工作节点,但您的里程数可能会有所不同。

更长的版本 Presto 协调器可以管理 1000 个工人。 但是,您需要一个具有特定内存和 CPU 资源的协调器。答案是——这取决于

协调员跟踪跨工作人员的任务执行情况,因此内存限制取决于查询的复杂性。此外,当您查询分区表时(例如在 S3、Hive 中),一些有关查询访问的分区的信息需要保留在内存中。当您有多个查询时,这会加起来。