用例¶
本节将 Presto 置于视角,以便潜在的管理员和最终用户了解 Presto 的预期功能。
Presto 不是什么¶
由于 Presto 被社区中的许多成员称为“数据库”,因此从定义 Presto 不是什么开始是有意义的。
不要将 Presto 理解 SQL 的事实与它提供标准数据库的功能混淆。Presto 不是通用关系数据库。它不是 MySQL、PostgreSQL 或 Oracle 等数据库的替代品。Presto 的设计初衷不是处理联机事务处理 (OLTP)。对于许多其他为数据仓库或分析而设计和优化的数据库来说,这也是如此。
Presto 是什么¶
Presto 是一种旨在使用分布式查询高效地查询海量数据的工具。如果您使用的是 TB 或 PB 级数据,则可能正在使用与 Hadoop 和 HDFS 交互的工具。Presto 的设计初衷是作为使用 MapReduce 作业管道(如 Hive 或 Pig)查询 HDFS 的工具的替代方案,但 Presto 不限于访问 HDFS。Presto 可以并且已经扩展到在不同类型的数据源上运行,包括传统的关联数据库和其他数据源,如 Cassandra。
Presto 的设计初衷是处理数据仓库和分析:数据分析、汇总海量数据和生成报告。这些工作负载通常被归类为联机分析处理 (OLAP)。
谁在使用 Presto?¶
Presto 是一个开源项目,在 Presto 基金会的管理下运行,该基金会是 Linux 基金会 的一部分。Presto 由 Meta 发明,并继续由 Meta、字节跳动、IBM、Uber、Twitter 等社区成员开发。