hbase的TTL机制清除opentsdb的超时数据

  我们发现用opentsdb向hbase写数据之后,磁盘占用率飙升得很快,我们存的业务数据只用保存一个月的即可,了解hbase的TTL机制可以清除相关表、相关行的超时数据,之前在数据备份时,我介绍了,opentsdb在hbase里面存储的数据主要有4个表,tsdb 、tsdb-meta 、tsdb-tree 、tsdb-uid。其中tsdb是元数据表,存储的内容最多,由此,清除数据主要清除tsdb即可。

 

参考文章:

https://blog.csdn.net/czs1130/article/details/79878259

https://www.iteye.com/blog/greatwqs-1741330

具体我都不做过多解释,我这里直接操作

查看磁盘

<!-- 查看整台服务器的硬盘使用情况-->
df -h
<!--查看内存、磁盘-->
du   -sh    * 

 

 

设置tsdb的TTL

<!--进入shell命令-->
hbase shell
<!--查看所有表-->
list
<!--查看tsdb的结构-->
describe 'tsdb'
<!--禁用表 tsdb-->

disable 'tsdb'
<!--修改时间-->
alter 'tsdb' , {NAME=>'t',TTL=>'1296000'}

<!--再次查看tsdb的结构-->
describe 'tsdb'

 

 

 

 

 

检查磁盘占用

  发现并未减少,那就是MinVersion的影响了。

 

 

修改MinVersion

 alter 'tsdb' , {NAME=>'t', MIN_VERSIONS=>'0'}
enable 'tsdb'

 

 

 

 

disable
posted @ 2019-09-05 14:34  落泪秋  阅读(2508)  评论(4编辑  收藏  举报