GreenPlum可写外部表操作实战

目录

 

一、什么是gp 可写外部表?

二、实例 


一、什么是gp 可写外部表?

创建可写外部表时需要声明WRITABLE。数据可以写入到gpfdist或者可执行程序,不支持写入本地文件。

  1. execute类型的外部数据URL格式是:EXECUTE ‘/var/load_scripts/get_log_data.sh’
  2. 其中execute指明了数据读写协议,/var/load_scripts/get_log_data.sh指定可执行程序。
  3. execute类型不仅支持读取外部数据,同时也支持写入外部数据。
  4. Greenplum外部表通过执行定义的外部执行程序:例如get_log_data.sh,和管道实现execute类型数据的读写。读外部数据:将程序的标准输出的作为数据来源;向外部写数据:将外部程序的标准输入作为数据表中的数据

二、实例 

2.1 创建一个外部表,查看每个Segment上执行命令时所有的环境变量。创建外部表如下

=# create external web table exec_example(id int, name varchar(100), value text) EXECUTE 'env|xargs -I {} echo $GP_SEGMENT_ID={}' format 'TEXT' (DELIMITER '=') LOG ERRORS SEGMENT REJECT LIMIT 10 ROWS;
=# select * from exec_example limit 10;
 id |         name          |                   value                    
----+-----------------------+--------------------------------------------
  3 | GP_USER               | gpadmin
  3 | GP_HADOOP_CONN_JARDIR | lib//hadoop
  3 | LC_MONETARY           | C
  3 | GP_CID                | 0
  3 | GPERA                 | 09877cd46d8003f1_201030102232
  3 | GP_SEG_PG_CONF        | /datap4/gpseg3/postgresql.conf
  3 | SHELL                 | /bin/bash
  3 | GPPERFMONHOME         | /usr/local/greenplum-cc-web-2.0.0-build-32
  3 | SSH_CLIENT            | 10.5***3 28799 22
  3 | LC_NUMERIC            | C

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章