架构

Presto查询引擎是一个Master-Slave的架构,由一个Coordinator节点,一个Discovery Server节点,多个Worker节点组成,Discovery Server通常内嵌于Coordinator节点中。Coordinator负责解析SQL语句,生成执行计划,分发执行任务给Worker节点执行。Worker节点负责实际执行查询任务。Worker节点启动后向Discovery Server服务注册,CoordinatorDiscovery Server获得可以正常工作的Worker节点。如果配置了Hive Connector,需要配置一个Hive MetaStore服务为Presto提供Hive元信息,Worker节点与HDFS交互读取数据。

Presto执行查询过程简介

既然Presto是一个交互式的查询引擎,我们最关心的就是Presto实现低延时查询的原理,我认为主要是下面几个关键点,当然还有一些传统的SQL优化原理,这里不介绍了。

完全基于内存的并行计算
流水线
本地化计算
动态编译执行计划
小心使用内存和数据结构
类BlinkDB的近似查询
GC控制

参考

Presto实现原理和美团的使用实践 - 美团技术团队
https://tech.meituan.com/2014/06/16/presto.html

Presto为什么快相关推荐

  1. 目前主流的四大浏览器内核Trident、Gecko、WebKit以及Presto

    浏览器最重要或者说核心的部分是"Rendering Engine",可大概译为"渲染引擎",不过我们一般习惯将之称为"浏览器内核".负责对网 ...

  2. Presto 在美图的实践

    导读:本文的主题是Presto高性能引擎在美图的实践,首先将介绍美图在处理ad-hoc场景下为何选择Presto,其次我们如何通过外部组件对Presto高可用与稳定性的增强.然后介绍在美图业务中如何做 ...

  3. Web前端工作笔记005---浏览器内核介绍

    JAVA技术交流QQ群:170933152 浏览器最重要或者说核心的部分是"Rendering Engine",可大概译为"渲染引擎",不过我们一般习惯将之称为 ...

  4. 浏览器内核以及解决兼容性的方法

    浏览器内核以及解决兼容性的方法 浏览器内核: 分类: 1.Trident(IE内核) Trident(IE内核):该内核程序在1997年的IE4中首次被采用,是微软在Mosaic代码的基础之上修改而来 ...

  5. 前端基础--主流浏览器及其内核

    IE trident Chrome webkit/blink firefox Gecko Opera presto Safari webkit   内核主要分成两部分:渲染引擎(layout engi ...

  6. 浏览器内核、排版引擎、js引擎

    [定义] 浏览器最重要或者说核心的部分是"Rendering Engine",可大概译为"渲染引擎",不过我们一般习惯将之称为"浏览器内核" ...

  7. 全方位测评Hive、SparkSQL、Presto 等七个大数据查询引擎,最快的竟是……| 程序员硬核测评...

    现在大数据组件非常多,众说不一,那么每个企业在不同的使用场景里究竟应该使用哪个引擎呢?易观Spark实战营团队选取了Hive.SparkSQL.Presto.Impala.HAWQ.ClickHous ...

  8. 浏览器内核Trident/Gecko/WebKit/Presto

    "浏览器内核"主要指渲染引擎(Rendering Engine),负责解析网页语法(如HTML.JavaScript)并渲染.展示网页.因此,所谓的浏览器内核通常也就是指浏览器所采 ...

  9. 万字干货 | 一文揭秘Presto在腾讯资讯业务中的应用

    随着产品矩阵和团队规模的扩张,跨业务.APP的数据处理和分析总是不可避免.一个显而易见的问题就是异构数据源的连通.我们基于PrestoDB构建了业务线内适应腾讯生态的联邦查询引擎,连通了部门内部20+ ...

最新文章

  1. python的用途实例-python assert的用处示例详解
  2. 使用%的符号问题(只与被除数有关)
  3. mysql 逗号 join_关于sql:MySQL中逗号分隔的连接和语法连接有什么区别?
  4. Object Tracking using OpenCV (C++/Python)(使用OpenCV进行目标跟踪)
  5. k-means 聚类过程演示
  6. ai怎么约束每个字的大小_人工智能的约束满意问题
  7. gateway配置mysql_gateway中这样使用mysql正确么
  8. 北京思源培训中心---C#下用P2P技术实现点对点聊天(2)
  9. 新手入门概览(一):机器学习
  10. python标准库os中用来列出_Python标准库os中的listdir()函数用来列出指定目录中
  11. word文字间距设置教程
  12. apple 关闭双重认证_这次Apple可以关闭工作吗?
  13. 贪心算法及其经典例题
  14. Python爬虫 | 2008-2018年各省专利统计数据
  15. python写一个数字字典生成器
  16. C语言编译预处理#define(x,y)语句中x*y 、(x)*(y)、(x*y)的问题
  17. android webView 全屏播放网络视频
  18. GlobalSign 企业型SSL 证书
  19. 传说中的AutoCAD公司 - 欧特克(Autodesk)招聘开发顾问-上海或北京
  20. python爬取论坛付费内容_Python进阶量化交易专栏场外篇20-爬虫抓取股票论坛帖子...

热门文章

  1. 阿里云商标注册服务及常见问题
  2. 计算机round是什么函数,round函数
  3. 图像特征计算与表示——基于内容的图像检索
  4. Android移动应用基础教程【数据存储】
  5. 在win10系统下安装ubuntu17.10以及基本配置
  6. chrome插件推荐
  7. 华为q1设置虚拟服务器,华为荣耀路由器怎么设置?华为路由器Q1的无线网络设置方法...
  8. python中函数的名称可以随意命名吗_函数的名称可以随意命名。(3.0分)_学小易找答案...
  9. 如何获取一个随机数:10 - 99
  10. 二级计算机选择题知识点资源,计算机省二级选择题.txt