doris2.1版本中variant数据类型

Viewed 23

doris2.1版本中variant数据类型的表创建之后,可以使用routineload或者hdfsload导入吗
1、相比于导入通过format:json之后,variant只是有自动扩展字段的优势吗,性能方面比较与预定义字段有没有提升
2、对于不频繁出现的子字段,Variant 类型则会将其合并为一列进行存储,这一列是如何命名的,我理解是几个字段的json

1 Answers

1、variant除了能自动扩展,对于读写性能以及存储成本和预定义字段相差不大,相对json而言整体是降本增效的
2、可以参考这个简单的demo理解看看的:

-- 测试表
CREATE TABLE example_table (
    id BIGINT,
    v VARIANT
)
DISTRIBUTED BY HASH(`id`) BUCKETS AUTO
PROPERTIES (
"replication_allocation" = "tag.location.default: 1"
);

-- 不同key-value的测试数据写入
INSERT INTO example_table (id, v) VALUES (1, '{"new_key": "new_value"}');
INSERT INTO example_table (id, v) VALUES (2, '{"a":66.66}');

-- 不同的数据查询
SELECT v['new_key'] as new_key, v['a'] as a from example_table