오랜만에 올리는 글이네요. 요즘 프로젝트 막바지라서.. ㅎㅎ
FDW 기능을 이용해서 오라클의 external table 기능을 시연해보이겠습니다.
/var/lib/pgsql/a.txt 화일의 내용은 다음과 같습니다.
[postgres@pg-00:/var/lib/pgsql]$ pwd
/var/lib/pgsql
[postgres@pg-00:/var/lib/pgsql]$ cat a.txt
superman|spiderman|ironman
임꺽정||장길산
[postgres@pg-00:/var/lib/pgsql]$ psql -U Postgres
SQL> create extension file_fdw schema public # extension 설치
CREATE EXTENSION
postgres@[local]:5432:postgres]
SQL>
SQL> create server "pg-00" foreign data wrapper file_fdw; # localhsot 서버명 지정
CREATE SERVER
postgres@[local]:5432:postgres] ## 텍스트화일에 매칭되는 테이블 생성
create foreign table csv_tab(a varchar(50), b varchar(50), c varchar(50))
server "pg-00"
options (format 'csv', header 'false', filename '/var/lib/pgsql/a.txt', delimiter '|', null '');
postgres@[local]:5432:postgres]
SQL> select * from csv_tab;
a | b | c
----------+-----------+---------
superman | spiderman | ironman
임꺽정 | NULL | 장길산
(2 rows)
postgres@[local]:5432:postgres]
SQL>
csv_tab 이라는 테이블을 조회하면 a.txt 화일의 내용을 읽어서 보여줍니다.
오라클의 external table 기능이랑 똑같습니다.
다들 즐거운 연휴 보내시길..