Kylin的垃圾清理


在Kylin運行一段時間之后,有很多數據因為不再使用而變成了垃圾數據,這些數據占據着大量HDFS、HBASE等資源,當積累到一定規模時會對集群性能產生影響。這些垃圾數據主要包括:

  • Purge之后原Cube的數據
  • Cube合並之后原Cube Segment的數據
  • 任務失敗中未被正常清理的臨時數據文件
  • 已經過時的Cube構建的日志和歷史任務

為了對這些垃圾數據進行清理,Kylin提供了兩個常用的工具。特別注意:數據一經刪除將徹底無法恢復!建議使用前一定要進行元數據備份,並對目標資源刪除之前進行謹慎的核對。

清理元數據

  1. 首先,執行檢查,這是安全操作,不會修改任何內容
$KYLIN_HOME/bin/metastore.sh clean


#這樣智慧列出可以被清理的資源供用戶核對,而不進行實際的刪除操作

  2. 在上面的命令中添加“--delete true”參數,這樣就會清理掉無用的資源,切記,在這個命令操作之前,一定要備份kylin元數據

$KYLIN_HOME/bin/metastore.sh clean --delete true

 清理存儲器數據

Kylin在構建Cube過程中會在HDFS上生成中間數據。另外,當我們對Cube執行purge/drop/merge時,一些HBASE的表可能會保留在HBASE中,而這些表不再被查詢,盡管Kylin會做一些自動的垃圾回收,但是它可能不會覆蓋所有方面,所以需要我們能夠沒隔一段時間做一些離線存儲的清理工作。

  1.檢查那些資源需要被清理,這個操作不會刪除任何內容

$KYLIN_HOME/bin/kylin.sh org.apache.kylin.storage.hbase.util.StorageCleanupJob --delete false

  2.開始執行清理操作

$KYLIN_HOME/bin/kylin.sh org.apache.kylin.storage.hbase.util.StorageCleanupJob --delete true

 


免責聲明!

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



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