我有以下的结构发生了巨大的数据集导入复杂的数据结构与自定义分隔
FIELDA,fieldB,fieldC; fieldD | fieldE,FieldF; fieldG | fieldH,FieldI ...
哪里:
FIELDA,fieldB和fieldC是应该被导入到单独的列
串fieldD | fieldE,FieldF; fieldG | fieldH,FieldI是一个数组映射(元素通过分开的(由分号分隔的元素)| )的数组(元素用逗号分隔, 。G。 fieldE,FieldF)
我的问题是,初始数组与字段A,字段B,字段C用分号隔开。我的问题是如何在创建表格时正确设置分隔符。
此人不承认一个数组 - 尽管我提供了一个分号作为字段分隔
CREATE TABLE string_array(
first_part STRING # this would be to store fieldA,fieldB,fieldC
,second_part ARRAY<STRING> # this would be to store fieldD|fieldE,FieldF;fieldG|fieldH,FieldI and split it by semicolon
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\\u003b'
COLLECTION ITEMS TERMINATED BY '\\u003b'
MAP KEYS TERMINATED BY '|'
STORED AS TEXTFILE;
LOAD DATA LOCAL INPATH '...' INTO TABLE string_array;
任何想法如何使它工作,所以我可以建立在它?提前感谢!
非常感谢。我希望能够导入数据,因为预处理需要很多时间。但是,如果它不可避免,那么必须做... – 2014-11-07 10:22:44