8000 GitHub - xuxian73/postgres: Mirror of the official PostgreSQL GIT repository. Note that this is just a *mirror* - we don't work with pull requests on github. To contribute, please see https://wiki.postgresql.org/wiki/Submitting_a_Patch
[go: up one dir, main page]

Skip to content
forked from cmu-db/postgres

Mirror of the official PostgreSQL GIT repository. Note that this is just a *mirror* - we don't work with pull requests on github. To contribute, please see https://wiki.postgresql.org/wiki/Submitting_a_Patch

Notifications You must be signed in to change notification settings

xuxian73/postgres

 
 

Repository files navigation

# Foreign Data Wrapper Extension
=====================================

## Background: Foreign Data Wrappers
The SQL/MED ("Management of External Data") standard calls for extensions to SQL that allow you to access foreign data that lives outside your DBMS. For example, you may want to query a different file format (e.g., CSV, Parquet), different instance of the same DBMS (e.g., PostgreSQL on a different machine), or access remote data (e.g., S3).

PostgreSQL implements portions of the SQL/MED specification as documented in the manual (5.12). Foreign data is accessed through a foreign data wrapper (FDW). A FDW is a library that abstracts over connecting to the external data and obtaining data from it. A non-exhaustive list of some FDWs can be found in the PostgreSQL wiki.

This project write a foreign data wrapper for custom columnar file format db721. 

## Roadmap
[done] Write a db721 parser
[done] Implement SELECT * for the FDW 
[done] Implement support for WHERE clauses for the FDW 
[done] Implement the predicate pushdown and projection pushdown

About

Mirror of the official PostgreSQL GIT repository. Note that this is just a *mirror* - we don't work with pull requests on github. To contribute, please see https://wiki.postgresql.org/wiki/Submitting_a_Patch

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 86.6%
  • PLpgSQL 6.2%
  • Perl 3.4%
  • Yacc 1.3%
  • Makefile 0.7%
  • Ruby 0.5%
  • Other 1.3%
0