Doris 的数据模型主要分为 3 类:Aggregate、Uniq、Duplicate
Aggregate: Doris 数据模型-Aggregate 模型
Uniq:Doris 数据模型-Uniq 模型
Duplicate:Doris 数据模型-Duplicate 模型
在某些多维分析场景下,数据既没有主键,也没有聚合需求。Duplicate 数据模型可以满足这类需求。数据完全按照导入文件中的数据进行存储,不会有任何聚合。即使两行数据完全相同,也都会保留。 而在建表语句中指定的 DUPLICATE KEY,只是用来指明底层数据按照那些列进行排序。
- 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" -- 指定一个副本(默认三个)
- );
- 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');
select * from test_db.example_log;