HBase自动化脚本操作
在集群环境下,很多数据的处理不能全靠手动输入命令,而是需要批量处理,在HBase中,提供了多种方式,可以实现批处理。
批处理命令
可以通过建立一个文本文件,将要执行的HBase命令顺次写入,通过"hbase shell filename"这种方式来执行,以达到批量处理的效果。
例如,这里创建一张新表,然后在表中写入数据,并查询写入后的结果:
$ nano hbase_commandlist
在打开的文本文件中,输入一些hbase命令。
然后使用如下批处理命令来执行:
$ hbase shell ~/hbase_commandlist
基于Shell脚本
通过echo "create 'tablename','name'" | hbase shell这种形式,可以将Shell脚本与HBase Shell命令关联起来。
例如,这里要批量创建5 张表,如果采用前面的批处理方法,创建命令将要写10遍,而这里,只通过for循环,就可以完成。
先编写一个Shell脚本,hbase_shell.sh:
$ nano hbase_shell.sh
编辑Shell脚本内容如下:
#!/bin/sh for i in tb1 tb2 tb3 tb4 tb5 do echo "begin create table $i" echo "create '$i','name'" | hbase shell echo "end create table $i" done echo "list" | hbase shell
在执行前,要先给该脚本赋予执行权限:
$ chmod u+x hbase_shell.sh
然后执行该脚本:
$ ./hbase_shell.sh