赞
踩
HBase的启动方式:
在主节点执行
- /usr/local/sbin/ntp_update,启动时间同步服务
-
- 执行命令service mysqld start,启动MySQL服务
-
- 执行命令zk_cluster start,启动ZooKeeper集群
-
- 执行命令/usr/local/sbin/hadoop_cluster start,启动Hadoop集群
-
- 执行命令/usr/local/hbase-1.3.6/bin/start-hbase.sh,启动HBase
通过命令
hbase shell
进入hbase命令窗口
注意:在HBase命令窗口中输入命令,如果输入出错,直接使用删除键【delete】是无法删除输入字符的,必须使用【ctrl+delete】组合键才能删除。
HBase的关闭方式:HBase使用完成后必须关闭,释放相关资源。
- 输入【exit】退出命令窗口
- 在主节点执行命令/usr/local/hbase-1.3.6/bin/stop-hbase.sh,关闭HBase
- 执行命令/usr/local/sbin/hadoop_cluster stop,关闭Hadoop集群
- 执行命令zk_cluster stop,关闭ZooKeeper集群
重点:HBase没有数据库的概念,只有命名空间的概念namespace,相当于库,HBase的表就是组织在命名空间里。
1、命名空间相关的命令
- list_namespace:列举所以命名空间
- create_namespace:创建命名空间
- describe_namespace:查看指定命名空间配置
- list_namespace_tables:列举指定命名空间中的表
- alter_namespace:修改命名空间
- alter_namespace 'test', {METHOD => 'set', 'hbase.namespace.quota.maxregion' => '10'}
- alter_namespace 'test', {METHOD => 'set', 'hbase.namespace.quota.maxtables' => '10'}
新建表
创建表时如果没有指明命名空间,则默认该表创建在HBase的默认命名空间‘default’中
- create '命名空间:表名','列族名1',… '列族名n'
- create '命名空间:表名',{语法参数}
参数 | 功能 | 调用示例 |
NAME | 设置列族名 | NAME => 'c1' |
VERSIONS | 设置最大版本数量 | VERSIONS => 1 |
TTL | 设置列族可以设置生存时间(以秒为单位),HBase将在到达到期时间后自动删除该列族 | TTL => 1000 |
BLOCKCACHE | 设置读缓存状态 | BLOCKCACHE => Ture\False |
SPLITS | 设置建表region预分区 | SPLITS=>['10','20','30','40'] |
查看表
- desc ‘命名空间:表名’:查看制定表的结构
- describe ‘命名空间:表名’:与desc命令相同
- list‘命名空间:正则表达式’:查看表名
- exists ‘命名空间:表名’:判断制定表是否存在
修改表
- 修改(添加)列族(列族存在就是修改,不存在就是添加)
- alter '命名空间:表名',{语法参数}
- 删除列族
- alter '命名空间:表名',{NAME => 'f1', METHOD => 'delete'}
- alter '命名空间:表名', 'delete' => 'f1'
- 修改表属性
- alter ‘命名空间:表名’, MAX_FILESIZE => ‘134217728’(设置表属性)
- alter ‘命名空间:表名’, METHOD => ‘table_att_unset’, NAME => ‘MAX_FILESIZE’(删除表属性)
删除表
- disable '命名空间:表名‘
- 重点:表必须首先disabled(禁用),然后才能删除
- drop '命名空间:表名'删除表
表数据增加
- put '命名空间:表名','行键','列族:列标识符','插入值’
- put '命名空间:表名','行键','列族:列标识符','插入值',
表数据获取
get '命名空间:表名','行键',{其他参数}
参数 | 功能 | 调用示例 |
COLUMN | 设置查询数据的列簇名 | get 'Student',r1,{COLUMN=>'c1'/['c1','c2','c3']} |
TIMESTAMP | 设置查询数据的时间戳 | get 'Student',r1,{COLUMN =>'c1',TIMESTAMP => ts1} |
TIMERANGE | 设置查询数据的时间戳区间 | get 'Student',r1,{COLUMN => 'c1',TIMERANGE => [ts1, ts2]} |
VERSIONS | 设置查询数据的最大版本数 | get 'Student',r1,{COLUMN =>'c1',VERSIONS => 4} |
FILTER | 设置查询数据的过滤条件 | get 'Student',r1,{COLUMN => 'c1',FILTER=> "ValueFilter(=,'binary:abc')"} |
表数据扫描
scan '表名',{其他参数}
表数据删除
- delete '表名','行键','列簇’(删除指定列族中的数据)
- deleteall '表名', '行键'(删除所有列族中的数据)
- HBase的删除,只是在数据上加上'delete'标签,数据没有真正删除
- 2、表数据清空
- truncate '表名'(删除表中所有数据,不管原来定义有多少个Region,清空后只保留一个Region)
- truncate_preserve '表名'(删除表中所有数据,并且保留原来定义的Region个数)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。