存算分离架构下,在scale-in缩容tiflash节点后,S3上数据不会被清理掉

清理机制大概是这样:

  1. 多个 write node 中选一个 gc master 来干活
  2. gc master 定期检查是否有可以删掉的文件,被删掉或者被 compact 的规则是:1. 文件有效率低于 50%(一个文件中可能存在部分数据是已经被删掉了,其他部分还有用);2. 文件最后一次更改时间距离现在 1hour。
  3. 文件删除有两种方法:profiles.default.remote_gc_method。1 代表依赖 S3 Object 的 tagging 和 bucket 的 lifecycle 设置来删除; 2 代表用 S3 的 ListObjects 来自行扫描删除

所以你上面把 write node 下线了,就没有 gc master 来干活了……

5 个赞