Presto:基于内存的OLAP查询引擎



1、Presto概述

1.1、Presto背景


Facebook的数据仓库存储在少量大型Hadoop/HDFS集群。Hive是Facebook在十几年前专为Hadoop打造的一款数据仓库工具。在以前,Facebook的科学家和分析师一直依靠Hive来做数据分析。Hive使用MapReduce作底层计算框架,是专为批处理设计的

随着数据源的多样化、数据仓库的不断扩展以及数据湖的发展,使用Hive及时获得有用的见解可能变得困难。例如使用Hive进行一个简单的数据查询可能需要花费几分钟甚至几小时,这显然不能满足企业级交互式查询的需求

于是Facebook调研了其他比Hive更快的工具,但它们要么在功能有所限制,要么就太简单,以至于无法操作Facebook庞大的数据仓库

在Facebook试用了一些外部项目但都不合适后,2012年秋季,他们决定自己开发,Presto应运而生

2013年,Facebook正式宣布开源Presto。2015年,Netflix展示了Presto实际上比Hive快10倍,在某些情况下甚至更快

Hive的问题主要在于它将MapReduce查询的中间结果存储在磁盘上,这会导致在磁盘间产生大量的I/O开销。Presto凭借其新的架构和内存引擎,将显着降低其延迟和查询速度,从而允许更多的交互式查询

Presto的用例范围从交互式即席查询到长时间运行的批量ETL管道,使其能够灵活地适应各种数据驱动的用例和应用程序

1.2、什么是Presto


Presto是由FaceBook开源的一个MPP SQL引擎,主要用来解决Facebook海量Hadoop数据仓库的高延迟交互分析问题

Facebook版本的Presto更多的是以解决企业内部需求功能为主,也叫PrestoDB,版本号以0.xxx来划分,例如目前的最新版本0.284版本

后来,Presto其中的几个人出来创建了更通用的Presto分支,取名PrestoSQL,版本号以xxx来划分,例如315版本,这个开源版本也是更为被大家通用的版本

为了更好的与Facebook的Presto进行区分,PrestoSQL于2020年12月27日改名为Trino,除了名字改变了其他都没变。不管是PrestoDB还是PrestoSQL,它们“本是同根生”,因此它们的大部分的机制原理是一样的

在这里插入图片描述

PrestoDB官网:https://prestosql.io/https://prestodb.io/

PrestoDB官方文档1:https://prestodb.io/docs/0.284/overview.html

PrestoDB官方文档2:https://dzone.com/refcardz/getting-started-with-prestodb

PrestoSQL官网:https://trino.io

PrestoSQL官方文档:https://trino.io/docs/current/overview.html

Presto是一款灵活、可扩展的分布式SQL查询引擎,旨在填补Hive在速度和灵活性(对接多种数据源)上的不足。相似的SQL On Hadoop产品还有Impala和Spark SQL等

Presto本身并不存储数据,但是可以接入多个异构数据源上的大型数据集,并且支持跨数据源的级联查询。Presto基于内存运算,速度快,实时性高

Presto是一个OLAP工具,擅长对海量数据进行复杂的分析。Presto可以解析SQL,但它不是一个标准的数据库。不是MySQL、Oracle的替代品,也不能用来处理在线事务(OLTP)

和MySQL相比,MySQL是一个数据库,具有存储和计算分析能力;而Presto和Hive、Impala、Spark一样只有计算分析能力

和Hive相比,Hive只能从HDFS中读取数据,而Presto⽀持跨数据源进行数据查询和分析

Presto支持跨源查询,包括HDFS、Hive、关系数据库(MySQL、Oracle等)、NoSQL(MongoDB、Redis等)、Kafka以及一些专有数据存储。一条Presto查询可以将多个数据源的数据进行合并,可以跨越整个组织进行分析

1.3、Presto的特性


Presto使用Java语言进行开发,具备易用、高性能和强扩展能力等特点,具体如下:

  • 完全支持ANSI SQL
  • <
  • 24
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值