Greenplum或DeepGreen中使用外部表访问Hive数据(分隔符是Hive表默认列分隔符)

在Greenplum或DeepGreen中,使用外部表访问Hive表的数据,并且文件数据的列分隔符是Hive默认的方式'\001'。

1. 查看数据(Hive默认列分隔符实际打印不可见,但是使用vi编辑器时,显示^A,可以通过先按Ctrl V ,再按A来输出)

[gpadmin@JSZ ~]$ cat ok.txt 

1^ASpark
2^AHadoop


2. 在Hive中创建表,包括并加载数据

hive> create table ok(id int,name string) row format delimited fields terminated by '\001' stored as textfile;
hive> load data local inpath '/home/gpadmin/ok.txt' into table ok;


3. 在GP中创建外部表,并通过gphdfs协议读取HDFS上的数据文件

create external table ok (id int,name text) location ('gphdfs://JSZ:8020/user/hive/warehouse/ok') format 'TEXT' (DELIMITER E'\001');

注释:对于分隔符为多个的,需要使用E来指定。

 

4. 在GP中查看外部表数据

zhangyundb=# select * from ok;
select co id |  name  
----+--------
  1 | Spark
  2 | Hadoop


评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值