跳转至

使用Foreign Table访问外部数据

使用外部表访问外部数据

SeaboxMPP数据库实现了SQL / MED规范的一部分,允许您使用常规SQL查询访问驻留在SeaboxMPP之外的数据。 这些数据称为外部数据。

您可以在外部数据包装器的帮助下访问外部数据。 外部数据包装器是与远程数据源通信的库。 该库隐藏了特定于源的连接和数据访问详细信息。 SeaboxMPP数据库发行版中提供的外部数据包装程序,包括file_fdwseaboxsql_fdw,已进行了修改,以利用SeaboxMPP的并行处理特性。

注意: 大多数SeaboxSQL外部数据包装器都应与SeaboxMPP数据库一起使用。 但是,SeaboxMPP发行版中未提供的任何外部数据包装器都可能仅通过coordinator服务器进行连接。

要访问外部数据,请创建外部服务器对象,该对象根据其支持的外部数据包装器使用的选项集定义如何连接到特定的远程数据源。 然后创建一个或多个外部表,这些表定义远程数据的结构。 外表可以像普通表一样在查询中使用,但外部表在SeaboxMPP数据库服务器中没有存储任何数据。 每当访问外部表时,SeaboxMPP数据库都会要求外部数据包装器从远程源中获取数据或更新数据(如果包装器支持)。

访问远程数据可能需要对远程数据源进行身份验证。 该信息可以由用户映射提供,该映射可以基于当前的SeaboxMPP数据库角色提供诸如用户名和密码之类的附加数据。

有关其他信息,请参阅 CREATE FOREIGN DATA WRAPPER, CREATE SERVER, CREATE USER MAPPING, 和 CREATE FOREIGN TABLE.