【已解决】stream load 不支持标准csv格式文件

Viewed 65

我在用streamload导入标准csv文件的时候,我指定--header="format:csv?column_separator:,"
但我发现doris会把我文件中json字段的数据,根据逗号进行分割,我的json字段在文件中是标准的csv格式,首尾双引号引着,json中的双引号也有加额外的双引号进行转义。
请问这种情况有什么解决办法吗?

举个例子,我5列数据导出的csv文件:

2024-01-27,3091,abc,辽宁,"aaa,bbb"

导入的时候会被识别成6列,遇到json字段更离谱

2 Answers

可以参考官网 streamload 模块包围符相关参数:
streamload

image.png

举例:

数据:a,b,c,"a,b,c,d,"

表:

CREATE TABLE aggregate_test5(
`id` VARCHAR COMMENT "用户ID",
`age` VARCHAR COMMENT "用户年龄",
`name` VARCHAR(20) COMMENT "用户姓名",
`address` VARCHAR(100) COMMENT "用户所在地区"
)
DUPLICATE KEY (`id`,`age`,`name`,`address`)
DISTRIBUTED BY HASH (`id`) BUCKETS 3
PROPERTIES("replication_num" = "1");

streamload 导入:
curl --location-trusted -u root -T /1.csv  -H "column_separator:," -H "enclose:\"" -H "trim_double_quotes:true" http://ip:8030/api/test/aggregate_test5/_stream_load

routine load导入数据时候,这个enclose应该如何使用呀