定义
HBASE是一种分布式、可扩展、支持海量数据存储的NoSQL数据库。
HBASE数据模型
逻辑上,HBASE的数据模型同关系型数据库类似,数据存储到一张表中,有行有列,但是从HBASE的底层物理结构来看,它更像是一个 multidimensional map;
HBASE命令行操作
HBASE中有两个用于查看数据的命令。
- get命令,用于查看表的某一行数据;
- scan命令用于查看某个表的全部数据。
get 'tablename','rowID' 相当于 select * from tablename where row=rowid
scan 'tablename'
浏览表的信息
- 添加数据
HBASE用put
命令添加数据,注意:一次只能为表的一行数据的一个列,也就是一个单元格添加数据,所以直接用shell插入数据效率很低,在实际应用中,一般都是利用编程操作数据。
put 'student' ,'95002','Sname','xiaobai'
- 删除数据
在 HBASE中用delete以及deleteall命令进行删除数据操作。
delete用于删除一个数据,是put的反向操作;
deleteall用于删除一行数据。
delete 'student' ,'955002','Sname'
deleteall 'student','955001'
修改可以将以前的值直接覆盖成新值
查看当前数据库中有哪些表
list
创建表
create 'food','info'
查看表结构
describe 'student'
统计表中的行数
count 'student'
清空数据表
truncate 'student'
删除表
drop 'tablename'
当前使用的表是删除不掉,如果需要删除当前正在使用的表
需要先执行
disable 'tablename'
再drop