像Hive一样使用Presto插入覆盖目录

时间:2019-09-10 18:51:40

标签: hadoop hive presto

在Hive中,以下语句将输出foo^Bbar^Abaz

insert overwrite directory 's3://bucket-name/foobarbaz'
row format delimited
fields terminated by '\001'
select split('foo,bar', ','), 'baz';

在Presto中,我运行了以下语句:

insert overwrite directory 's3://bucket-name/foobarbaz'
select split('foo,bar', ','), 'baz';

结果如下:["foo","bar"]^Abaz

适用于数组和结构的插入覆盖目录的等效Presto子句是什么?

Presto似乎将我的数组类型转换为json字符串,但我希望将其格式化为具有收集项和映射键定界符支持的Hadoop规范。

1 个答案:

答案 0 :(得分:0)

尝试在create table DDL中指定终止符。

row_format DELIMITED [FIELDS TERMINATED BY char [ESCAPED BY char]] [COLLECTION ITEMS TERMINATED BY char] ...