zoukankan      html  css  js  c++  java
  • GPDB外部表创建示例

    创建以|为分隔符的外部表
    CREATE EXTERNAL TABLE ext_expenses ( name text,
    date date, amount float4, category text, desc1 text )
    LOCATION ('gpfdist://etlhost-1:8081/*',
    'gpfdist://etlhost-2:8081/*')
    FORMAT 'TEXT' (DELIMITER '|');

    创建分布式的外部表
    CREATE EXTERNAL TABLE ext_expenses ( name text,
    date date, amount float4, category text, desc1 text )
    LOCATION ('gpfdist://etlhost-1:8081/*.txt',
    'gpfdist://etlhost-2:8082/*.txt')
    FORMAT 'TEXT' ( DELIMITER '|' NULL ' ') ;

    创建ssl的外部表
    CREATE EXTERNAL TABLE ext_expenses ( name text,
    date date, amount float4, category text, desc1 text )
    LOCATION ('gpfdists://etlhost-1:8081/*.txt',
    'gpfdists://etlhost-2:8082/*.txt'

    创建日志记录的外部表
    CREATE EXTERNAL TABLE ext_expenses ( name text,
    date date, amount float4, category text, desc1 text )
    LOCATION ('gpfdist://etlhost-1:8081/*.txt',
    'gpfdist://etlhost-2:8082/*.txt')
    FORMAT 'TEXT' ( DELIMITER '|' NULL ' ')
    LOG ERRORS INTO err_customer SEGMENT REJECT LIMIT 5;

    创建csv格式的外部表
    CREATE EXTERNAL TABLE ext_expenses ( name text,
    date date, amount float4, category text, desc1 text )
    LOCATION ('gpfdist://etlhost-1:8081/*.txt',
    'gpfdist://etlhost-2:8082/*.txt')
    FORMAT 'CSV' ( DELIMITER ',' )
    LOG ERRORS INTO err_customer SEGMENT REJECT LIMIT 5;

    创建hadoop分布式外部表
    CREATE EXTERNAL TABLE ext_expenses ( name text,
    date date, amount float4, category text, desc1 text )
    LOCATION ('gphdfs://hdfshost-1:8081/data/filename.txt')
    FORMAT 'TEXT' (DELIMITER '|');

    自定义的hadoop格式外部表
    CREATE EXTERNAL TABLE ext_expenses
    LOCATION ('gphdfs://hdfshost-1:8081/data/custdat*.dat')
    FORMAT 'custom' (formatter='gphdfs_import');

    带压缩的写hadoop外部表
    CREATE WRITABLE EXTERNAL TABLE ext_expenses
    LOCATION ('gphdfs://hdfshost-1:8081/data/?compress=true&compression_type=BLOCK&codec=org.apache.hadoop.io.compress.DefaultCodec')
    FORMAT 'custom' (formatter='gphdfs_export');

    使用默认的压缩格式hadoop的外部表
    CREATE WRITABLE EXTERNAL TABLE ext_expenses
    LOCATION ('gphdfs://hdfshost-1:8081/data?compress=true')
    FORMAT 'custom' (formatter='gphdfs_export');

    CREATE EXTERNAL TABLE ext_expenses ( name text,
    date date, amount float4, category text, desc1 text )
    LOCATION ('file://filehost:5432/data/international/*',
    'file://filehost:5432/data/regional/*'
    'file://filehost:5432/data/supplement/*.csv')
    FORMAT 'CSV' (HEADER);

    创建带表达式的外部表
    CREATE EXTERNAL WEB TABLE log_output (linenum int, message text) EXECUTE '/var/load_scripts/get_log_data.sh' ON HOST
    FORMAT 'TEXT' (DELIMITER '|');

    创建可写的外部表
    CREATE WRITABLE EXTERNAL TABLE sales_out (LIKE sales)
    LOCATION ('gpfdist://etl1:8081/sales.out')
    FORMAT 'TEXT' ( DELIMITER '|' NULL ' ')
    DISTRIBUTED BY (txn_id);

    创建带表达式的外部表
    CREATE WRITABLE EXTERNAL WEB TABLE campaign_out
    (LIKE campaign)
    EXECUTE '/var/unload_scripts/to_adreport_etl.sh'
    FORMAT 'TEXT' (DELIMITER '|');

    插入外部表数据
    INSERT INTO campaign_out SELECT * FROM campaign WHERE customer_id=123;

    创建读取网页的外部表
    CREATE READABLE EXTERNAL TABLE prices_readable (LIKE prices)
    LOCATION ('gpfdist://127.0.0.1:8080/data/
    prices.xml#transform=prices_input')
    FORMAT 'text' (delimiter '|')
    LOG ERRORS INTO prices_errortable SEGMENT REJECT LIMIT 10;

    创建可写的网页外部表
    CREATE WRITABLE EXTERNAL TABLE prices_readable (LIKE prices)
    LOCATION ('gpfdist://127.0.0.1:8080/data/
    prices.xml#transform=prices_input')
    FORMAT 'text' (delimiter '|');

    限制长度的外部表
    CREATE READABLE EXTERNAL TABLE students (
    name varchar(20), address varchar(30), age int)
    LOCATION ('file://<host>/file/path/')
    FORMAT 'CUSTOM' (formatter=fixedwidth_in,
    name='20', address='30', age='4');

    创建无限定符的外部表
    CREATE READABLE EXTERNAL TABLE students (
    name varchar(20), address varchar(30), age int)
    LOCATION ('file://<host>/file/path/')
    FORMAT 'CUSTOM' (formatter=fixedwidth_in,
    name=20, address=30, age=4, line_delim='')

    将数据拷贝出去
    COPY (SELECT * FROM country WHERE country_name LIKE 'A%') TO '/home/gpadmin/a_list_countries.out';

  • 相关阅读:
    laravel实现第三方登录(qq登录)
    laravel实现发送qq邮件
    第一个微信小程序(实现点击一个按钮弹出toast)
    Android笔记: 实现手机震动效果
    Android笔记: ListView基本用法-ArrayAdapter
    自适应网页设计
    javaWeb中,文件上传和下载
    jquery attr()方法
    jsp中的JSTL与EL表达式用法
    html中的事件属性
  • 原文地址:https://www.cnblogs.com/login2012/p/6405281.html
Copyright © 2011-2022 走看看