HBase shell执行批量脚本
生活随笔
收集整理的這篇文章主要介紹了
HBase shell执行批量脚本
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
場景描述:
HBase namespace中有大量無用的小表,占用了過多的block,需要批量刪除,了解了一下有兩種方式:
1、使用通配符
用drop命令可以刪除表。在刪除一個表之前必須先將其禁用。
hbase(main):018:0> disable 'emp' 0 row(s) in 1.4580 secondshbase(main):019:0> drop 'emp' 0 row(s) in 0.3060 seconds使用exists 命令驗證表是否被刪除。
hbase(main):020:0> exists 'emp' Table emp does not exist0 row(s) in 0.0730 secondsdrop_all
這個命令是用來在給出刪除匹配“regex”表。它的語法如下:
hbase> drop_all ‘t.*’注意:要刪除表,則必須先將其禁用。
示例
假設有一些表的名稱為raja, rajani, rajendra, rajesh, 和 raju。
hbase(main):017:0> list TABLE raja rajani rajendra rajesh raju 9 row(s) in 0.0270 seconds所有這些表以字母raj開始。首先使用disable_all命令禁用所有這些表如下所示。
hbase(main):002:0> disable_all 'raj.*' raja rajani rajendra rajesh raju Disable the above 5 tables (y/n)? y 5 tables successfully disabled現在,可以使用?drop_all?命令刪除它們,如下所示。
hbase(main):018:0> drop_all 'raj.*' raja rajani rajendra rajesh rajuDrop the above 5 tables (y/n)?y 5 tables successfully dropped2、使用腳本
1、首先,編寫一個文本文件disable_drop_htable.txt: [plain]?view plain?copyhbase shell?disable_drop_htable.txt
即可。
總結
以上是生活随笔為你收集整理的HBase shell执行批量脚本的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CentOs如何挂载硬盘
- 下一篇: 引用js/css时,加入时间戳解决浏览器