分布式SQL查询引擎技术选型presto及部署文档

本文介绍了Presto,一个Facebook开源的分布式SQL查询引擎,适用于大规模数据的交互式分析。Presto以其低延迟、高并发、支持多种数据源等优势在大数据查询领域脱颖而出。文章详细讲解了Presto的架构、执行过程、数据模型,以及如何在单机上部署Presto,包括安装、配置和启动步骤。
摘要由CSDN通过智能技术生成

分布式SQL查询引擎技术选型presto及部署文档

在这里插入图片描述

简介

Presto是一个facebook开源的分布式SQL查询引擎,适用于交互式分析查询,数据量支持GB到PB字节。

  • Presto是Facebook开发的数据查询引擎,可对250PB以上的数据进行快速地交互式分析。
  • 该项目始于 2012 年秋季开始开发,目前该项目已经在超过 1000 名 Facebook 雇员中使用,运行超过 30000 个查询,每日数据在 1PB 级别。Facebook 称 Presto 的性能比Hive要好上 10 倍有多。2013年Facebook正式宣布开源 Presto。领先的互联网公司包括Airbnb和Dropbox都在使用Presto。

presto的架构由关系型数据库的架构演化而来。presto之所以能在各个内存计算型数据库中脱颖而出,在于以下几点:

  • 清晰的架构,是一个能够独立运行的系统,不依赖于任何其他外部系统。例如调度,presto自身提供了对集群的监控,可以根据监控信息完成调度。
  • 简单的数据结构,列式存储,逻辑行,大部分数据都可以轻易的转化成presto所需要的这种数据结构。

场景

Presto 支持 SQL 并提供了一个标准数据库的语法特性,但其不是一个通常意义上的关系数据库,他不是关系数据库,如 MySQL、PostgreSQL 或者 Oracle 的替代品。Presto 不是设计用来解决在线事物处理(OLTP);
Presto 是一个工具,被用来通过分布式查询来有效的查询大量的数据。Presto 是一个可选的工具,可以用来查询 HDFS,通过使用 MapReduce 的作业的流水线,例如 hive,pig,但是又不限于查询 HDFS 数据,它还能查询其他的不同数据源的数据,包括关系数据库以及其他的数据源,比如 cassandra;
Presto 被设计为处理数据仓库和分析:分析数据,聚合大量的数据并产生报表,这些场景通常被定义为 OLAP。

优势

  • 多数据源,支持SQL,自定义扩展Connector

  • 混合计算(同一种数据源的不同库 or表;将多个数据源的数据进行合并)

  • 低延迟,高并发,纯内存计算引擎,高性能

Presto是一个低延迟高并发的内存计算引擎,相比Hive,执行效率要高很多。

举例:

SELECT id,
	   name,
       source_type,
       created_at
FROM dw_dwb.dwb_user_day
WHERE dt='2018-06-03'
  AND created_at>’2018-05-20’;

上述SQL在Presto运行时间不到1秒钟,在Hive里要几十秒钟。

架构

在这里插入图片描述
presto提供插件化的connector来支持外部数据查询,原生支持hive、cassandra、elasticsear

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值