架构:Presto查询引擎是一个Master-Slave的架构,由下面三部分组成:
一个Coordinator节点
一个Discovery Server节点
多个Worker节点
Coordinator: 负责解析SQL语句,生成执行计划,分发执行任务给Worker节点执行
Discovery Server: 通常内嵌于Coordinator节点中
Worker节点: 负责实际执行查询任务,负责与HDFS交互读取数据
Worker节点启动后向Discovery Server服务注册,Coordinator从Discovery Server获得可以正常工作的Worker节点。如果配置了Hive Connector,需要配置一个Hive MetaStore服务为Presto提供Hive元信息
更具体的架构图
原理:参考:https://www.cnblogs.com/tgzhu/p/6033373.html
Presto低延迟原理
完全基于内存的并行计算
流水线式计算作业
本地化计算
动态编译执行计划
GC控制
优化: