建表语句: 主键:gmt,name 对 a列做累加
create table t (gmt Date, name String, a UInt16, b UInt16) ENGINE=SummingMergeTree(gmt, (gmt, name), 8192, (a))
插入数据:
insert into t (gmt, name, a, b)
values
(‘2017-07-10’, ‘a’, 1, 2),
(‘2017-07-10’, ‘b’, 2, 1),
(‘2017-07-11’, ‘b’, 3, 8),
(‘2017-07-11’, ‘b’, 3, 8),
(‘2017-07-11’, ‘a’, 3, 1),
(‘2017-07-12’, ‘c’, 1, 3)
手动触发merge
optimize table t
预期结果 2017-07-11,‘b’ 这两条数据应该要合并的:
┌─────gmt─┬name┬a┬─b┐
│ 2017-07-10 │ a │ 1 │ 2 │
│ 2017-07-10 │ b │ 2 │ 1 │
│ 2017-07-11 │ a │ 3 │ 1 │
│ 2017-07-11 │ b │ 6 │ 8 │
│ 2017-07-12 │ c │ 1 │ 3 │
└────────┴───┴─┴──┘
实际上并没有合并,结果:
┌───-─gmt─┬name┬a┬─b─┐
│ 2017-07-10 │ a │ 1 │ 2 │
│ 2017-07-10 │ b │ 2 │ 1 │
│ 2017-07-11 │ a │ 3 │ 1 │
│ 2017-07-11 │ b │ 3 │ 8 │
│ 2017-07-11 │ b │ 3 │ 8 │
│ 2017-07-12 │ c │ 1 │ 3 │
└────────┴───┴─┴──┘
是怎么回事呢?