HBase入门(自用版-非博文)
HBase入门
一、数据类型

1.Name Space
>命名空间,类似于mysql中的database,oracle中的用户。Hbase有两个自带的命名空间,hbase和default。
>hbase中存放的是HBase内置的表,default表是用户默认使用的命名空间。
2.Region
> 类似于关系型数据库的表概念。不同的是,HBase定义表时只需要声明列族即可,不需要声明具体的列。
> 这里一张表可以对应多个Region
> 这就意味着,往HBase写入数据时,字段可以动态、按需指定。因此,和关系型数据库相比,HBase能够轻松应对字段变更的场景。
> HBase中的列相对于里面的数据,是动态的,按需的,键值对的。
3.Row
> HBase表中的每行数据都由一个RowKey和多个Column(列)组成,数据是按照RowKey的字典顺序存储的,并且查询数据时之恶能根据RowKey进行检索,所以RowKey的设计十分重要。
4.Column
> HBase中的每个列都由Column Family(列族)和Column Qualifier(列)进行限定。
5.Time Stamp
> 用于标识数据的不同版本(version)每条数据写入时,如果不指定时间戳,系统会自动为其加上该字段,其值为写入HBase的时间。
6.Cell
> 存储数据的单元。cell中的数据是没有类型的,全部是字节码形式存储。
二、基本操作命令(重点)
刚才熟悉了HBase的基本表结构,那么现在就来通过常用的基本操作命令,来快速入门看项目把!!!
1.hbase shell基本操作命令
名称 | 命令表达式 |
---|---|
创建表 | create ‘表名称’,’列族名称1’,’列族名称2’…… |
添加记录 | put ‘表名称’,’行名称’,’列族名称’,’值’ |
查看记录 | get ‘表名称’,’行名称’ |
查看表中的记录总数 | count ‘表名称’ |
删除记录 | delete ‘表名称’,’行名称’,’列族名称’ |
删除表 | ①disable ‘表名称’ ②drop ‘表名称’ |
查看所有记录 | scan ‘表名称’ |
查看某个表某个列中所有数据 | scan ‘表名称’,[‘列族名称’] |
更新记录 | 重写(重新添加)一遍覆盖即可 |
2.一般操作
- 1、查询服务器状态
1
2hbase(main):001:0> status # 命令
2 servers,0 dead, 3.0000 average # 执行结果 - 2、查询hive版本
1
2hbase(main):002:0> version
0.92.1-cdh4.0.1,rUnknown,Thu Jun 28 18:09:40 PDT 2012
后面自己看链接
3.DDL操作
- 1、创建一个表
create 'ddl',''id','info'
- 2、获得表的描述
list
`describe ‘ddl’ - 3、删除一个列族
要先diable表,再delete列族
disable 'ddl'
- 4、删除一个表
- 5、判断表是否enable
- 6、判断表是否disable
4.DML操作
- 1、插入记录
- 2、获取一个id的所有数据
- 3、获取一个id,一个列族所有的数据
- 4、获取一个id,一个列族中一个列的所有数据
- 5、更新一条记录
- 6、获取时间戳数据
- 7、全表显示
- 8、删除id为example的’info:age’字段
- 9、删除整行
- 10、给example这个id增加’info:age’字段,并使用counter实现递增
- 11、获取当前count值
- 12、清空整个表
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 道远日暮时不存!