Pinpoint数据定期清理的唯一方式

 

目前pinpoint并没有内置清理hbase数据的功能,唯一的方法是依托hbase的清理机制进行清理。

 

hbase清理思路如下:

      1. 定期运行一次Major Compact(通过crontab 任务),用来删除早于给定TTL值的所有数据。

      2. TTL大小(单位:秒)可根据磁盘情况在hbasecreate.hbase里进行设置,也可在启动后通过hbase shell手动设置。

      注意:如果只设置TTL而不定期运行Major Compact(大合并),只是标记删除,并不会真正从磁盘上删除。df命令可查。

 

具体实现方式如下:

      1.添加crontab定时任务

      因major compact执行期间会对集群的磁盘和带宽带来较大影响,所以建议每周执行一次,并且选择夜间集群负载较低时进行。

      在/etc/crontab中添加如下内容:

       

 

      2.编写1中用到的major compact脚本

      通过docker exec -i 命令进入容器内执行hbase shell,此处容器名为docker-compose启动时预设的,需根据实际容器名进行设定。

      hbase shell中执行 major_compact '表名' 命令进行major compact。

       此处所有表名都是根据hbase中实际存在的表名进行硬编码的。可通过查看hbasecreate.hbase或者执行hbase shell的list命令查看你的集群中的所有表名。

      脚本具体内容如下:

       

 

      脚本执行情况:

         

 

3.补充:关于TTL大小的设定

      有两种方式,一种是在hbase启动的时候,可以直接配置hbasecreate.hbase里的表信息直接进行设定。另一种方式是启动后通过执行hbase shell进行手动更改,具体实现如下所示。

 

       

 

 

       refs:https://github.com/naver/pinpoint/issues/429

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值