首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Presto作业未在群集模式下工作,仅使用一个节点性能

Presto作业未在群集模式下工作,仅使用一个节点性能
EN

Stack Overflow用户
提问于 2019-07-25 16:04:38
回答 1查看 112关注 0票数 0

我有2个节点的集群,当我运行查询时,它只在一个节点上运行,

代码语言:javascript
复制
config.properties

coordinator=false
node-scheduler.include-coordinator=false
http-server.http.port=8181
query.max-memory=5GB
query.max-memory-per-node=1GB
query.max-total-memory-per-node=2GB
discovery.uri=http://10.0.0.30:8181

jvm.config

-server
-Xmx16G
-XX:+UseG1GC
-XX:G1HeapRegionSize=32M
-XX:+UseGCOverheadLimit
-XX:+ExplicitGCInvokesConcurrent
-XX:+HeapDumpOnOutOfMemoryError
-XX:+ExitOnOutOfMemoryError

node.properties

node.environment=production
node.id=ffffffff-ffff-ffff-ffff-fffffffffffa
node.data-dir=/var/presto/data

-----------presto coordinator------------
config.properties

coordinator=true
node-scheduler.include-coordinator=true
http-server.http.port=8181
query.max-memory=5GB
query.max-memory-per-node=1GB
query.max-total-memory-per-node=2GB
discovery-server.enabled=true
discovery.uri=http://10.0.0.30:8181

jvm.config

-server
-Xmx16G
-XX:+UseG1GC
-XX:G1HeapRegionSize=32M
-XX:+UseGCOverheadLimit
-XX:+ExplicitGCInvokesConcurrent
-XX:+HeapDumpOnOutOfMemoryError
-XX:+ExitOnOutOfMemoryError

node.properties

node.environment=production
node.id=ffffffff-ffff-ffff-ffff-ffffffffffff
node.data-dir=/var/presto/data

当我运行以下查询时,它只使用一个节点,从smsc_cdr_2019_07_12 where origination =‘0705529921’选择cdr_timestamp;

该表有40M条记录和35列。

当我使用一台服务器运行查询时,它将拆分为17,耗时3.30分钟,两台服务器也将拆分为17,也将拆分为3分钟+耗时

当运行2个节点时,对于presto,第二个节点的内存消耗几乎为0。请帮我解决这个问题。

EN

回答 1

Stack Overflow用户

发布于 2019-07-25 18:51:28

Presto JDBC-连接器通常是单线程的。在Presto的说法中,例如,MySQL连接器为查询中访问的每个表创建一个单独的拆分。因此,读取发生在单个节点上,在单个线程中。

有一个提议是将基于JDBC的连接器扩展为并行的:https://github.com/prestosql/presto/issues/389

注意:上述限制通常不是JDBC连接器所固有的,这只是事物的当前状态。例如Starburst Teradata connector supports parallel reads

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57197109

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档