2012年,Facebook的用户数量突破10亿,成为当时全球最大的社交网络。也是在这一年,Facebook的Hive数据仓库达到了250PB,每天需要处理成千上万条查询。在Facebook内部,Hive逐渐到达极限,并且它无法查询其他数据源。
同年,Dain Sundstrom、David Phillips、Martin Traverso和Eric Hwang加入Facebook的数据基础设施团队。这个四人小分队从零开始研发一个分布式查询引擎,目的是为PB级的数据仓库提供低延迟的即时查询和分析。
没人想到,这个出自四人小分队的项目,最终一跃成为大数据交互式查询领域的新贵。它本质上是高并行的分布式查询引擎,快速、易用、多用途,支持不同系统上的联邦查询、并行查询和横向集群扩展。Facebook给这个项目起了一个体现其速度的名字:Presto。
pres·to (prĕs′tō)
adv, adj.
Music to be played very fast.
大数据时代的数据存储机制日益多样:关系数据库、NoSQL数据库、文档数据库、数据湖、键值存储、对象存储……面对标准不一的存储系统,你可以利用Presto轻松打破壁垒,连通数据孤岛。
如今,Presto已经拥有欣欣向荣的开源社区,其开发者遍布世界各地。为了帮助社区将Presto的SQL-on-Anything精髓发挥到极致,创始团队联合推出了首本官方实战指南,由创始成员Martin Traverso参与执笔,另两位创始成员Dain Sundstrom和David Phillips作序推荐。
Matt Fuller、Manfred Moser、Martin Traverso 著
张晨 黄鹏程 傅宇 译
- SQL领域重磅力作,Presto官方指南
- Presto创始团队、Kafka联合创作者推荐
- 多位国内一线技术大咖力荐
- 亚马逊全五星好评
本书适合谁
Martin Traverso在书中这样写道:
本书是有关Presto分布式查询引擎的第一本也是十分重要的一本书,面向初学者和已经在使用Presto的用户。无论你的专业程度如何,我们都相信你能从本书中学到一些新知识。
为什么不是Trino实战
为了坚持自己的开源理想,Presto的创始成员在2018年离开了Facebook,并成立了Presto软件基金会。用创始团队的话说,“Presto从Facebook毕业了”。
此后,Presto项目有了两个分支:一个是由Facebook主导的PrestoDB项目,另一个是由Presto软件基金会维护的PrestoSQL项目。
在本书中文版出版前不久,2020年12月,PrestoSQL正式更名为Trino,其吉祥物是一只身穿宇航服的可爱兔子。
目前来看,这两个项目还并未产生大的分化,本书中大部分的讨论同时适用于这两个项目。
Trino的官方网站也专门为本书读者给出温馨提示:the content of this book continues to apply to Trino(本书内容适用于Trino)。
由于目前Presto的辨识度比Trino要高,因此中文版仍然沿用Presto这个名称。
大咖说
“这本书介绍了何谓Presto,以及能让你将其运用自如的所有关键知识。”
——Dain Sundstrom 和 David Phillips
Presto之父,Presto软件基金会发起人
“Presto在Pinterest的数据分析中发挥了关键作用,你可以通过这本书学习从使用场景到如何大规模运行Presto集群在内的重要知识。”
——Ashish Kumar Singh
Pinterest大数据查询处理平台技术负责人
“对于现代云架构,无论是社区构建还是数据的快速分析处理技术,Presto都设置了很高的标杆。如果想构建现代化的分析技术栈,那么这本书值得一读。”
——Jay Kreps
Apache Kafka联合创作者,Confluent联合创始人和首席执行官
“近些年,Presto社区成长迅速。作为又一款SQL-on-Hadoop查询引擎,它兼具优秀的性能、易用的接口和简洁的设计。国内外包括阿里巴巴在内的许多公司使用它,其优良的架构也让用户很容易进行定制和扩展。这本书既可以作为学习 Presto的实战入门指南,也可以当作手册供随时查阅。无论你之前是否使用过Presto,相信你都能从中受益。”
——曹伟
PolarDB创始人,阿里巴巴研究员
“Presto如何超越一时轰动的Impala和拥趸众多的Spark成为交互式分析的龙头?带着这个疑问,我快速看完了全书,颇有点后知后觉、相见恨晚的感觉。Presto一改大数据的窠臼,基于SQL-on-Anything的理念和开源开放的工程实践对接大小各种数据源,降低了解决实际问题的门槛,难怪大家都喜欢。这本书翻译流畅,紧跟业界进展。开源大数据爱好者可以先不要急着掉进源代码细节里,而是从这本书的内容起步,从问题和场景入手,搞懂大数据。”
——郑锴
Apache Hadoop PMC成员,阿里巴巴高级技术专家
“Presto引擎在大数据领域的重要性不言而喻,但参考资料屈指可数,这本书正是大家期待的那本‘官方指南’。无论是SQL编写、技术调研、运维部署,还是二次开发,都值得一读。书中第三部分为企业级应用做了详细解答,是一大亮点。”
——腾讯Presto Oteam团队
彩蛋:Trino之名何处来
为了给PrestoSQL起一个响亮的新名字,四人小分队经过了几个月的讨论。终于,在2020年圣诞节前夕,他们想到借中微子之名,寓意Presto之快速。
中微子(neutrino)是一种不带电的基本粒子。它以接近光速的速度自由地穿行于宇宙之中。或许,这也解释了Trino那只兔子为什么身着宇航服。
图源:trino.io
丨留 言 赠 书丨
你用过哪种SQL查询引擎?它有什么优点或槽点?请在留言区畅所欲言。图灵君将随机抽3位读者,每位送《Presto实战》1册。统计截止时间:2021年4月19日中午12点。
题图:freepik.com
喜欢这篇文章?点个“在看”吧~▼