Presto简介

Presto

Presto是基于大数据的分布式SQL查询引擎

Presto是开源的、基于大数据的交互式查询引擎。它设计的目的就是用来提高海量数据查询的速度。
Presto是运行在集群中的一个分布式系统,它可以分析海量数据。使用Presto,可以通过SQL接入和查询不同源头的数据。
Presto简介
Presto的整体架构包含一个coordinator和多个workers。通过客户端提交query给coordinator(比如Presto CLI)。coordinator负责解析分析成执行计划,然后将这些可执行计划部署到worker中。
Presto简介
Presto支持插件式connector,然后基于提供的数据做查询。不同connector的要求不同,比如可以支持:Hive,MySQL,Elasticsearch,Cassandra,kafka和其他。

应用场景

  • 交互式分析
  • 批量ETL
  • A/B测试
  • 应用分析

组件介绍

Presto集群中服务器有两种类型:coordinator和worker

Coordinator

Presto中的coordinator负责解析话术,生成计划,并且管理worker节点,它是Presto的“大脑”,并且也是集群中的一个可连接的节点。一个Presot集群中需要有一个coordinator和一个或多个worker,如果用于测试的话,可以将一个实例赋予两个角色。
Presto通过REST API与worker和client进行连接通信。

Worker

worker负责执行任务和处理数据,worker从connector获取数据并互相之间进行数据交换。coordinator负责从worker获取结果数据并返回给client。
当worker启动后会注册到coordinator中,然后coordinator可以给该worker分配任务。

上一篇:The import com.mysql cannot be resolved成功解决


下一篇:MYSQL常用语句总览