【发布时间】:2020-01-12 13:27:09
【问题描述】:
在 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 规范。
【问题讨论】:
-
您是否打算插入 3 列(平面)
'foo', 'bar', 'baz'?列数是固定的吗? -
在这种情况下,应插入 2 列。每条记录应包含列:array
, varchar.