Doris 的数据模型主要分为 3 类:Aggregate、Uniq、Duplicate
Aggregate: Doris 数据模型-Aggregate 模型
Uniq:Doris 数据模型-Uniq 模型
Duplicate:Doris 数据模型-Duplicate 模型
在某些多维分析场景下,数据既没有主键,也没有聚合需求。Duplicate 数据模型可以满足这类需求。数据完全按照导入文件中的数据进行存储,不会有任何聚合。即使两行数据完全相同,也都会保留。 而在建表语句中指定的 DUPLICATE KEY,只是用来指明底层数据按照那些列进行排序。
1)建表
CREATE TABLE IF NOT EXISTS test_db.example_log
(
`timestamp` DATETIME NOT NULL COMMENT "日志时间",
`type` INT NOT NULL COMMENT "日志类型",
`error_code` INT COMMENT "错误码",
`error_msg` VARCHAR(1024) COMMENT "错误详细信息",
`op_id` BIGINT COMMENT "负责人 id",
`op_time` DATETIME COMMENT "处理时间"
) DUPLICATE KEY(`timestamp`, `type`)
DISTRIBUTED BY HASH(`timestamp`) BUCKETS 10
PROPERTIES
(
"replication_num" = "1" -- 指定一个副本(默认三个)
);
2)插入数据
insert into test_db.example_log
values ('2017-10-01 08:00:05', 1, 404, 'not found page', 101, '2017-10-01 08:00:05'),
('2017-10-01 08:00:05', 1, 404, 'not found page', 101, '2017-10-01 08:00:05'),
('2017-10-01 08:00:05', 2, 404, 'not found page', 101, '2017-10-01 08:00:06'),
('2017-10-01 08:00:06', 2, 404, 'not found page', 101, '2017-10-01 08:00:07');
3)查看表
select * from test_db.example_log;