Presto 是一种开源分布式 SQL 查询引擎,专为低延迟、临时的数据分析进行了优化。它支持 ANSI SQL 标准,包括复杂查询、聚合、连接和窗口函数。Presto 可处理来自多个数据源 (包括 Hadoop 分布式文件系统 [HDFS] 和 Amazon S3) 的数据。

您可以快速且轻松地从 AWS 管理控制台、AWS CLI 或 Amazon EMR API 中创建托管的 Presto 群集。此外,您还可以利用其他 Amazon EMR 功能,包括 Amazon S3 快速连接、与 Amazon EC2 竞价实例的集成、各种 Amazon EC2 实例 (含针对内存优化的实例) 的选择以及用于轻松添加实例或将其从群集中删除的 resize 命令。

PrestoLogo_withText

开始使用 Amazon EMR 上的 Presto

创建免费账户

需要帮助?询问我们!

如何借助 Amazon EMR 上的 Presto 和 Airpal 分析数据,AWS 专业服务顾问,Songzhi Liu。

 


S3_Sketch_Available

Presto 结合使用了定制查询执行引擎与用于支持 SQL 语义的运算符。与 Hive/MapReduce 不同的是,Presto 在内存中执行查询,并在各阶段之间跨网络进行流水线处理,因而避免了不必要的 I/O。流水线执行模型会并行运行多个阶段,并在数据可用时将其从一个阶段流式传输至下一阶段。 

S3_Sketch_HighPerformance

只需几分钟即可启动运行 Presto 的 Amazon EMR 群集。您不必担心节点预置、群集设置、配置或群集优化。Amazon EMR 自会处理这些任务,因此您只需集中精力进行分析即可。您还可以使用 Airpal 等工具,Airpal 是 Airbnb 提供的一种基于网络的开源查询执行工具。Airpal 的用户界面简化了数据探索和临时分析,并支持语法突出显示、将结果导出至 CSV、保存查询以待日后使用,以及浏览表格以便可视化架构等功能。

S3_Sketch_Simple

运行在 Amazon S3 中直接访问数据的交互式查询、使用 Amazon EC2 竞价实例容量节省成本、使用 Auto Scaling 动态添加和删除容量,以及启动长时间运行的或临时的群集以匹配工作负载。您还可以在您的群集上添加其他 Hadoop 生态系统应用程序。

Benefit_Workflow_Green

Presto 支持 ANSI SQL 标准,便于数据分析师和开发人员大规模查询结构化和非结构化的数据。当前,Presto 支持各种 SQL 功能,包括复杂查询、聚合、连接和窗口函数。


Netflix 已经选择 Presto 作为用于大数据的交互式 ANSI-SQL 兼容的查询引擎。Presto 是扩展性很好的开源引擎,集成了 Hive Metastore 和 Amazon S3,成为 Netflix 大数据仓库环境的主干。Netflix 在永久性 Amazon EMR 群集上运行 Presto,以便快速且灵活地在其约 25PB 的 Amazon S3 数据存储中进行查询。Netflix 是 Presto 的一个积极贡献者,并且 Amazon EMR 为 Netflix 提供了在 Amazon EMR 群集上构建自己的 Presto 的灵活性。Netflix 平均每天在 Presto 群集中运行约 3500 条查询。 

Jampp 是移动应用程序营销平台,使用高级广告重新定位目标技术促使参与用户使用应用程序。Jampp 借助其自身的转化驱动型实时出价 (RTB) 引擎购买移动媒体库存,从而实现目标,该引擎可跨 18 家 RTB 交易所和 150 多个移动广告网络为库存动态出价Jampp 利用在 Amazon EMR 上运行的 Presto 获取高级临时日志分析,将来自多个源的数据和重新定位的复杂分段计算结合起来。Jampp 的用户群增长率已达 600%,其复杂的分析查询需求增长率也随之达到了 600%。Jampp 从在 MySQL 上运行复杂的多核 Python 应用程序,转为运行 Presto,性能提高了 12 倍。Jampp 目前使用 Amazon EMR 上的 Presto 每天处理 40TB 的数据。

作为新创企业孵化器,Cogo Labs 运营着一个用于营销分析和商业智能的平台,供投资组合公司和内部团队使用。要支持创新速度极快的 OLAP 环境,他们在 SQL 中进行了标准化以便与数据交互。Cogo Labs 之所以选择 Presto 是因为其实时查询性能、对 ANSI-SQL 的支持,以及直接从 Amazon S3 处理数据的能力。借助在 Amazon EMR 上运行的 Presto,100 多名开发人员和分析师对存储在 Amazon S3 中超过 500TB 的数据运行 SQL 查询,从而进行数据探索、临时分析和报告。Cogo Labs 使用短期和永久性群集组合,并依靠 Amazon EMR 与竞价实例的集成来降低成本。

OpenSpan 提供自动化且智能的解决方案,可帮助桥接人力、流程和技术,从而更好地了解员工工作效率、简化交易以及与员工和客户进行互动。OpenSpan 利用 Amazon S3 中的数据从 HBase 迁移到了 Amazon EMR 上的 Presto。OpenSpan 之所以选择 Presto 是因为其 SQL 界面以及直接从 Amazon S3 中实时查询数据的能力;允许快速探索大量数据并快速迭代即将推出的数据产品。OpenSpan 使用 Parquet 文件格式,还使用 PrestogreSQL 连接至 Presto。OpenSpan 选择 Amazon EMR 和 Amazon S3 来经济高效地处理他们每天从客户处收到的数据。

Kanmu 是日本的一家金融服务行业初创公司,可根据消费者的信用卡使用情况提供与卡关联的产品服务。Kanmu 之所以从 Hive 转为使用 Amazon EMR 上的 Presto,是因为 Presto 以交互速度运行探索式迭代分析的能力、Amazon S3 的良好性能,以及查询大数据集的可扩展性。Kanmu 使用 Fluentd-plugin-s3 将数据推送到 Amazon S3,使用优化的行列式 (ORC) 格式存储数据并使用 shib,以及基于 node.js 的 Web 客户端运行 SQL 查询。



  1. 借助 Presto 和 Airpal 启动 Amazon EMR 群集
  2. 了解如何配置 Amazon EMR 上的 Presto