Both external and foreign tables provide access to data stored in data sources outside of Greenplum Database as if the data were stored in regular database tables. You can read data from and write data to external and foreign tables.
ImportantGreenplum 7 internally converts external tables to foreign tables, and internally operates on and represents the table using the foreign table data structures and catalog. Refer to Understanding the External Table to Foreign Table Mapping for detailed information about this conversion, and its runtime implications.
Parent topic: Greenplum Database Administrator Guide
A foreign table is a Greenplum Database table backed with data that resides outside of the database. Foreign tables are often used to load and unload database data. You can both read from and write to the same foreign table. You can use foreign tables in SQL commands just as you would a regular database table. For example, you can SELECT
, INSERT
, and JOIN
foreign tables with other Greenplum tables.
Refer to Accessing External Data with Foreign Tables for more information about accessing external data using foreign tables.
An external table is different kind of Greenplum Database table backed with data that resides outside of the database. External tables are often used to load and unload database data. You create a readable external table to read data from the external data source and create a writable external table to write data to the external source. You can use external tables in SQL commands just as you would a regular database table. For example, you can SELECT
(readable external table), INSERT
(writable external table), and JOIN
external tables with other Greenplum tables.
Refer to Acessing External Data with External Tables for more information about using external tables to access external data.
You can use the gpfdist
file server utility and external tables to serve up external data to Greenplum. When external data is served by gpfdist
, all segments in the Greenplum Database system can read or write external table data in parallel. Refer to Using the Greenplum Parallel File Server (gpfdist) for more information.
Web-based external tables provide access to data served by an HTTP server or an operating system process. See Creating and Using External Web Tables for more about web-based tables.
Data managed by your organization may already reside in external sources such as Hadoop, object stores, and other SQL databases. The Greenplum Platform Extension Framework (PXF) provides access to this external data via built-in connectors that map an external data source to a Greenplum Database table definition. Refer to Accessing External Data with PXF for more information about using PXF.