文档章节

Introducing Presto

Yulong_
 Yulong_
发布于 2017/08/14 09:30
字数 587
阅读 11
收藏 0

 

1 Presto简介

Presto是一个开源的分布式SQL查询引擎,支持从GB到PB数据量上的交互式分析查询。

Presto的设计和编写完全是为了解决像Facebook这样规模的商业数据仓库的交互式分析和处理速度的问题。

Presto支持在线数据查询,包括Hive, Cassandra, 关系数据库以及专有数据存储。 一条Presto查询可以将多个数据源的数据进行合并,可以跨越整个组织进行分析。

Presto以分析师的需求作为目标,他们期望响应时间小于1秒到几分钟。 Presto终结了数据分析的两难选择,要么使用速度快的昂贵的商业方案,要么使用消耗大量硬件的慢速的“免费”方案。

Facebook使用Presto进行交互式查询,用于多个内部数据存储,包括300PB的数据仓库。 每天有1000多名Facebook员工使用Presto,执行查询次数超过30000次,扫描数据总量超过1PB。

Presto被设计用来主要处理数据仓储与分析:数据缝隙,聚合大量的数据并且生产报告。

这样的工作通常被归类为Online Analytical Processing(OLAP)。

 

2 Presto架构

Presto查询引擎是一个Master-Slave的架构,由一个Coordinator节点(Discovery Server),多个Worker节点组成,Discovery Server通常内嵌于Coordinator节点中。

Coordinator负责解析SQL语句,生成执行计划,分发执行任务给Worker节点执行。Worker节点负责实际执行查询任务。

Worker节点启动后向Discovery Server服务注册,Coordinator从Discovery Server获得可以正常工作的Worker节点。

如果配置了Hive Connector,需要配置一个Hive MetaStore服务为Presto提供Hive元信息,Worker节点与HDFS交互读取数据。

 

3 Presto数据模型

Presto中访问多个数据源时,增加了一层catalog来映射不同数据源,通过配置不同的connector来连接多种类型的数据源,或者同种类型的多个数据源。

Presto并不存储任何实际数据与元数据,只是提供了计算引擎。模型定义以及实际数据仍存储在各数据源中,Presto只是提供了一个通用的数据源连接。

© 著作权归作者所有

共有 人打赏支持
Yulong_
粉丝 8
博文 93
码字总数 169760
作品 0
朝阳
部门经理
presto分布式环境搭建

1.Presto的基本需求 Linux or Mac OS X Java 8, 64-bit Python 2.4+ Presto支持从以下版本的Hadoop中读取Hive数据: Apache Hadoop 1.x Apache Hadoop 2.x Cloudera CDH 4 Cloudera CDH 5 支......

super_yu
2016/06/15
160
0
Centos 6.9 配置 Presto

解压缩 presto-server-0.166.tar.gz 2. 在 presto-server-0.166 目录下创建 etc 目录 3. 在 etc 目录下创建 catalog 目录 4. 在 catalog 目录下创建文件 hive.properties ,文件内容如下 5....

自东土大唐而来
03/05
5
0
大数据查询引擎--PrestoDB

Presto是Facebook最新研发的数据查询引擎,可对250PB以上的数据进行快速地交互式分析。据称该引擎的性能是 Hive 的 10 倍以上。 PrestoDB 是 Facebook 推出的一个大数据的分布式 SQL 查询引擎...

红薯
2013/06/13
25.4K
2
presto入门安装使用

为了分析海量数据,需要寻找一款分布式计算的开源项目,以前用的比较多的是hive,但是由于hive任务最终会被解析成MR任务,MR从硬盘读取数据并把中间结果写进硬盘,速度很慢,所以要寻找一款基...

Small-Liu
2016/06/24
1K
1
(部分转载)Presto上使用SQL遇到的一些坑

遇到过的问题: 很多的时候,在Presto上对数据库跨库查询,例如Mysql数据库。这个时候Presto的做法是从MySQL数据库端拉取最基本的数据,然后再去做进一步的处理,例如统计等聚合操作。 举个栗...

Avner
08/07
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

day60-20180818-流利阅读笔记-待学习

钉钉:工作的归工作,生活的…也归工作? 毛西 2018-08-18 1.今日导读 你用过“钉钉”么?被公司要求使用钉钉的感受是如何的呢?这款阿里巴巴旗下的移动办公社交平台在弯道超车微信、为许多企...

aibinxiao
50分钟前
8
0
Kubernetes的HTTPS和证书问题,汇总

通过Kubernetes建立服务网站,需要干的事情和HTTPS和证书问题,汇总如下: 建立Nginx服务器 搞服务器第一步,Ubuntu 18.04设置静态IP 安装Nginx服务。 Kubernetes的deployment使用 创建服务,...

openthings
今天
2
0
php 使用redis锁限制并发访问类

1.并发访问限制问题 对于一些需要限制同一个用户并发访问的场景,如果用户并发请求多次,而服务器处理没有加锁限制,用户则可以多次请求成功。 例如换领优惠券,如果用户同一时间并发提交换领...

豆花饭烧土豆
今天
0
0
Linux环境搭建 | 手把手教你配置Linux虚拟机

在上一节 「手把你教你安装Linux虚拟机」 里,我们已经安装好了Linux虚拟机,在这一节里,我们将配置安装好的Linux虚拟机,使其达到可以开发的程度。 Ubuntu刚安装完毕之后,还无法进行开发,...

良许Linux
今天
0
0
(三)Nginx配置·续

概述 前文写了关于Nginx环境配置,但是还没有完,接下来将会继续讲三个相关的配置 主要是以下三个 1.Nginx访问日志 2.Nginx日志切割 3.静态文件不记录日志和过期时间 Nginx访问日志 1.先看看...

杉下
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部