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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM