有没有类似PG数据的VACUUM命令

Viewed 21

image.png
doris版本 1.2.7
模型使用的是UNIQUE KEY, 相同的数据,相同的表结构,写入的方式不用导致,数据大小的差异非常大。
上边是一次一次同步产生的数据。
下面是过同步代码迁移之后的数据(之所以多的原因是,是我特意多同步了几天相同的数据,发现他的数据量会增长,存储空间也会增加)。
想问有没有类似 PG VACUUM这个样的名称,重新整理一下数据碎片,使数据储存空间变小.


更新这个是做过BC和CC之后的对比 大小并没有变化
image.png

1 Answers

导入方式不同会影响到compaction,所以导致您show data看到了这种导入方式不同数据量也不同的现象。
Doris中其实数据是写成了一个一个的segment文件,每一个rowset 包含多个segment文件。

举个例子:

如果是小批量写,每次写的少,可能小版本比较多,compaction 不是很理想,就会有多个rowset,比如[0-1][2-5][6-10]...这样。这样的现象就是compaction不理想,这种情况如果继续导入的话就会触发compaction,进行版本合并,将这些合并成[0-10]。

但是直接使用 insert into select 写入一个大批量的数据,相同的数据下,可能insert into select 写完的表,数据相比较小批量导入也会看起来更少,因为一次 insert into 之后数据就是个大的版本了。

因为咱们是1.2版本,可能一些compaction的优化没上全,可以参考下这块:
compaction 优化

同时可以手动触发进行人为的compaction:
触发compaction