一、官方网站
二、介绍
- Presto是一个开源的分布式SQL查询引擎,适用于交互式查询,数据量支持GB到EB字节
- Presto支持在线数据查询,包括Hive、kafka、clickhouse、关系数据库以及专门数据存储,一条Presto查询可以将等多个数据源进行合并,可以跨越整个组织进行分析
- Presto以分析师的需求作为目标,他们期望相应速度小于1秒到几分钟,Presto终结了数据分析的两难选择,要么使用速度快的昂贵的商业方案,要么使用消耗大量硬件的慢速的“免费”方案
三、Connector连接器
- Presto通过Connector连接器来适应数据源,例如Hive或关系数据库。功能类似于数据库的驱动程序。允许Presto使用标准API与资源进行交互
- 每个Catalog都与一个特定的连接器关联。如果检查Catalog配置文件,将会看到每个都包含一个请执行属性connector.name,Catalog Manager使用此属性知道丁Catalog的连接器。可能有多个Catalog使用同一连接器来访问相似数据库的两个不同实例。比如,有两个Hive集群,则可以在单个Presto集群中配置两个都使用Hive连接器的Catalog,从而允许两个不同的Hive集群中查询数据(可以在同一SQL中查询)
四、Catalog连接目录
- Presto Catalog是数据源schema的上一级,并通过连接器访问数据源。例如,可以配置Hive Catalog以通过Hive Connector连接器提供对Hive信息的访问
- 在Presto中使用表时,标准表名始终是被支持的。例如,hive.test_data.test对的标准表名将引用hive catalog中test_data schema中的test table。
- Catalog需要再Presto的配置文件中进行配置
五、Schema
Schema是组织表的一种方式。Catalog和Schema共同定义了一组可以查询的表。当使用Presto访问Hive或关系数据库(例如MySQL)时,Schema会转换为目标数据库中的对应的Schema。
六、Table
Table表是一组无序的行,它们被组织成具有类型的命名列。与关系数据库中的含义相同