1.5 Trino简史
Facebook于2008年开源了Hive,它之后成了Apache Hive。在Facebook内部Hive被广泛用于在巨大的Apache Hadoop集群上执行HDFS上的数据分析任务。
Facebook的数据分析师使用Hive在大型数据仓库上执行交互式查询。在Facebook开发出Presto之前,所有的分析师都依赖于Hive,但Hive并不适用于Facebook这种大数据规模下的交互式查询。2012年,Facebook的Hive数据仓库已经有250PB了,它每天需要处理数百个用户的成千上万条查询。在Facebook内部,Hive逐渐到达极限,并且它无法查询其他数据源。
Facebook从零开始设计出了Presto,以便在其数据规模下快速地执行查询。Presto不是创建一个新系统并将数据迁移过去,而是通过可插拔的连接器系统在数据存储的本地读取数据。Hive连接器是Presto最早的连接器之一(参见6.4节),它直接查询存储在Hive数据仓库中的数据。
2012年,4名Facebook工程师开始研发Presto,以满足Facebook在分析场景中对性能、可扩展性和可伸缩性的需求。Presto最初就是要构建为开源项目。2013年年初,Facebook推出了Presto的初始版本。同年秋天,Facebook正式开源Presto。鉴于Presto在Facebook内部取得了成功,许多其他大型互联网公司也开始使用它,如Netflix、LinkedIn、Treasure Data等,还有更多的公司紧随其后。
2015年,Teradata声明将向Presto投入多达20名工程师来贡献代码,他们专注于添加企业特性,如安全提升和生态系统工具集成。2015年晚些时候,Amazon开始在AWS Elastic MapReduce(EMR)系统中添加Presto。2016年,Amazon发布了以Presto作为主要基石的Athena服务。2017年,我们见证了Starburst的诞生,这家公司致力于推动Presto在各地的成功。
2018年年底,Presto的创始人离开Facebook,成立了Presto软件基金会,以使该项目保持协作与独立。这个项目后来被称为PrestoSQL,整个社区的贡献者和用户与项目的创建者和维护者一起转移到PrestoSQL代码库。自那时起,该项目的创新和增长速度都更上一层楼。
2020年年底见证了该项目的另一个里程碑。为了减少PrestoSQL与遗留的PrestoDB项目和其他版本之间的混淆,社区决定对该项目进行重命名。在犹豫了很长时间之后,Trino被选中了。代码、网站和项目周围的一切都更新为使用Trino。该基金会更名为Trino软件基金会。PrestoSQL旗下的最后一个版本是350。版本351和更高版本使用Trino。社区拥抱这一变化,并与项目一起行动,为新吉祥物选择了一个名字:Covnmander Bun Bun。
今天,Trino社区欣欣向荣,Trino继续被许多知名公司(https://trino.io/users.html)大规模使用。围绕Trino的核心维护者和更广泛的社区不断推动创新,包括新的SQL支持、更新的Java 17运行时使用、支持容错执行和提高性能的现代化代码与架构,以及与客户端工具的集成,以满足报告和数据平台的需求。现在,来自世界各地许多公司的开发者和贡献者共同维护着Trino,这些公司包括Amazon、Bloomberg、Eventbrite、Gett、Google、Line、LinkedIn、Lyft、Netflix、Pinterest、Red Hat、Salesforce、Shopify、Starburst、Treasure Data、Zuora等。