日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

hbase空间清理

發布時間:2024/1/1 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 hbase空间清理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

hbase空間清理

hbase由于未設置TTL,導致磁盤空間占滿,需要刪除數據,或設置TTL。
查看磁盤空間占用情況:

$ df -m

查看磁盤空間占用情況:

$ du -sh *

最終發現是hadoop文件夾占用最高,確切說是./hadoop/tmp/dfs/data文件夾占空間最大。
根據我們自己的業務情況,容易判斷出是hbase不斷寫入導致的問題,通過查看hdfs得到驗證:

$ ./hadoop fs -du -h / 12.9 G /hbase 78.3 K /tmp

設置hbase表的TTL, 30天

$ ./hbase shell hbase> desc 'ns1:t1' hbase> disable 'ns1:t1' hbase> alter 'ns1:t1', {NAME => 'n1', TTL => '2592000'}, {NAME => 'n2', TTL => '2592000'} hbase> enable 'ns1:t1'

設置成功后,hbase自動將過期數據刪除,進行合并region操作。磁盤空間得以釋放。

遇到問題

Connection refused

與網上查到的問題不太一樣,我碰到的問題現狀是hbase shell可以正常啟動,執行list命令OK,但是執行desc命令時就報錯Connection refused
查看hbase日志,發現hbase-xxx-regionserver-xxx.log日志中,顯示regionserver有異常。

org.apache.hadoop.ipc.RemoteException(java.io.IOException): File xxx could only be replicated to 0 nodes instead of minReplication (=1). There are 1 datanode(s) running and no node(s) are excluded in this operation.

這個異常沒有仔細定位,感覺同樣是因為資源占滿問題導致的。查看hbase的進程,果然只有master,沒有regionserver。

$ ps -aux | grep hbase

重新啟動hbase,會提示master進程已存在,并繼續啟動regionserver進程。

$ start-hbase.sh

regionserver進程啟動成功后,該問題解決,可以正常操作hbase。如果regionserver仍然報上面的異常,可先釋放部分磁盤空間,再進行嘗試。

其它清理方式

  • 使用hbase shell命令,刪除數據。如果按行刪除,需要先查再刪,而且刪除速度過慢;如果刪除所有,則丟失最新數據。
  • 暴力處理hdfs文件。因為開始hbase shell命令無法正常使用,因此查閱一些暴力刪除hdfs中hbase文件方式,刪除data的同時,應該還要處理tmp文件等,沒有進行嘗試。

總結

以上是生活随笔為你收集整理的hbase空间清理的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。