我们打算在 docker 容器上构建 presto 集群
我们有12 台 RHEL 机器,
简单的实现是在每台 Linux 机器的 docker 容器上设置 presto 服务
另一方面,我们正在考虑以下不同的计划,我们将不胜感激获得有关此计划的反馈
因为我们有 12 台物理 Linux 机器
我们可以在每台 Linux 机器上构建 4 个 docker 容器
当每个 docker 容器将包含 presto 服务时
所以总的 presto 工人将是 4 X 12 = 48
我们打算在 docker 容器上构建 presto 集群
我们有12 台 RHEL 机器,
简单的实现是在每台 Linux 机器的 docker 容器上设置 presto 服务
另一方面,我们正在考虑以下不同的计划,我们将不胜感激获得有关此计划的反馈
因为我们有 12 台物理 Linux 机器
我们可以在每台 Linux 机器上构建 4 个 docker 容器
当每个 docker 容器将包含 presto 服务时
所以总的 presto 工人将是 4 X 12 = 48
我认为问题是:我应该在每台机器上运行一个 Presto 工作者还是多个?
一般来说:每台机器一个 Presto 工作人员的性能要比多个工作人员好得多。
虽然有一些边缘情况。如果你的机器有超过 200 GB 的内存,你可能会因为相当大的堆大小而从 JVM 中获得一些性能损失。(然而,这需要更多的思考,所以不要把它作为每台机器运行多个工人的建议。)
确保您在 Java 11 或更高版本上运行。这实际上是Presto 要求 Java 11 从 Presto 333 开始的主要原因之一。
注意:您不需要构建自己的 Docker 映像。我们在https://hub.docker.com/r/prestosql/presto发布了一个基于 Centos 的镜像。希望这会有所帮助。