Presto PostgreSQL Connector


PostgreSQL Connector允许在外部PostgreSQL数据库中查询和创建表。这可用于连接不同系统(如PostgreSQL和Hive)之间或两个不同PostgreSQL实例之间的数据。

配置PostgreSQL Connector

要在Presto中配置PostgreSQL连接器,请在etc/catalog命名中创建目录属性文件,例如,postgresql.properties将PostgreSQL连接器安装为postgresql目录。创建包含以下内容的文件,根据您的设置替换连接属性:

connector.name=postgresql
connection-url=jdbc:postgresql://example.net:5432/database
connection-user=root
connection-password=secret

多个PostgreSQL数据库或服务器

Presto中的PostgreSQL连接器只能访问PostgreSQL服务器中的单个数据库。因此,如果您有多个PostgreSQL数据库,或者想要连接到多个PostgreSQL服务器,则必须配置PostgreSQL连接器的多个实例。

要添加另一个目录,只需添加另一个etc/catalog具有不同名称的属性文件(确保它以结尾.properties)。例如,如果您将属性文件sales.properties命名为,Presto将创建一个sales使用配置的连接器命名的目录。

查询PostgreSQL

PostgreSQL连接器为每个PostgreSQL模式提供一个模式。您可以通过运行以下命令查看可用的PostgreSQL模式:SHOWSCHEMAS

SHOWSCHEMASFROMpostgresql;

如果您有一个名为的PostgreSQL模式web,则可以通过运行以下命令查看此模式中的表:SHOWTABLES

SHOWTABLESFROMpostgresql.web;

您可以使用以下任一方法查看数据库clicks表中的列列表web:

DESCRIBEpostgresql.web.clicks;
SHOWCOLUMNSFROMpostgresql.web.clicks;

最后,您可以访问架构中的clicks表web:

SELECT*FROMpostgresql.web.clicks;

如果您为目录属性文件使用了不同的名称,请使用该目录名称而不是postgresql以上示例中的名称。

Presto中的PostgreSQL连接器限制

  • 尚不支持以下SQL语句:
  • 删除
  • 更改表
  • CREATETABLE(支持CREATETABLEAS)
  • 授予
  • 撤销
  • 显示赠款
  • 显示角色
  • 显示角色授权