admin管理员组

文章数量:1531374

StarRocks过期数据清理导致磁盘IO飙升调查

背景


在StarRocks运行过程中,经常看见某一个be节点的磁盘IO忽然飙升几分钟,然后降下来。

调查结果

翻阅了一些日志和源码,找到了原因,记录如下。

StarRocks的数据再删除过后(可能是手动删除数据,也可能是动态分区过期数据自动删除),并不会直接删掉,而是放到了类似于回收站的trash目录,

存放时间为trash_file_expire_time_sec,在StarRocks2.3.5版本时默认为259200秒,即存放3天。
be节点在启动成功后,给每个硬盘都单独启动了一个定时清理线程,用于清理trash目录中达到3天的数据。

这个定时清理线程两次执行至少间隔path_gc_check_interval_second秒,在StarRocks2.3.5版本默认为86400秒。
由于首次触发时间都是be进程创建之后,假设be有12块硬盘,那么即使有这个最少间隔时

本文标签: 磁盘数据StarRocksIO