命令行操作hbase

只为自己日后查找命令

—般操作
1. 查询服务器状态

hbase(main):0il:0>status
1 active master,0 backup masters, 1 servers,0 dead,4.0000 average load

2. 查询版本号

hbase(main):012:0>version
1.2.1,r8d8a7107dc4ccbf36a92f64675dc60392f85c015,Wed Mar 30 11:19:21 CDT 2016

DDL 操作
数据定义语言(Data Defination Language,DDL)操作主要用来定义、修改和查询表的数据库模式。
1. 创建一个表

hbase(main):013:0>
create'table','column_famaly','column_famaly1','column_famaly2'
0 row(s) in 94.9160 seconds

2. 列出所有表

hbase(main):014:0>list
TABLE
stu
table
test
3 row(s) in 0.0570 seconds

3. 获取表的描述

hbase(main):015:0> describe 'table'
Table table is ENABLED
table
COLUMN FAMILIES DESCRIPTION
{NAME =>'coluran_famaly',DATA_BLOCK_ENCODING =>'NONE',BLOOMFILTER =>'ROW',REPLICATION_SCOPE=>'0',VERSIONS=>'1',COMPRESSION=>'NONE', MIN_VERSIONS =>'0',TTL=>'FOREVER',KEEP_DELETED_CELLS=>'FALSE',BLOCKSIZE=>'65536',IN_MEMORY
=>'false',BLOCKCACHE=>'true}
......
3 row(s) in 0.0430 seconds

4. 删除一个列族

hbase(main):016:0>alter 'table',{NAME=>'column_famaly',METHOD=>'delete'}
Updating all regions with the new schema...
1/1 regions updated.
Done.
0 row(s) in 3.0220 seconds

5. 删除一个表
首先把表设置为 disable

hbase(main):020:0>disable 'stu'
0 row(s) in 2.3150 seconds

然后删除一个表。

hbase(main):021:0>drop 'stu'
0 row(s) in 1.2820 seconds

6. 查询表是否存在

hbase(main):024:0>exists 'table'
Table table does exist
0 row(s) in 0.0280 seconds

7. 查看表是否可用

hbase(main):025:0>is_enabled 'table'
true
0 row(s) in 0.0150 seconds

DML 操作
DML(Data Manipulation Language,数据操作语言)操作主要用来对表的数据进行添加、修改、获取、删除和查询。
1. 插入数据
给 emp 表的 rw1 行分别插入 3 个列。

hbase(main):031:0>put'emp','rw1','col_f1:name','tanggao'
0 row(s) in 0.0460 seconds

hbase(main):032:0>put'emp','rw1','col_f1:age','20'
0 row(s) in 0.0150 seconds

hbase(main):033:0>put'emp','rw1','col_f1:sex','boy'
0 row(s) in 0.0190 seconds

2. 获取数据
获取 emp 表的 rw1 行的所有数据。

hbase(main):034:0> get 'emp','rw1'
COLUMN    CELL
col_f1:age timestamp=1463055735107,value=20
col_f1:name timestamp=1463055709542,value=tanggao
col_f1:sex timestamp=1463055753395,value=boy
3 row(s) in 0.3200 seconds

获取 emp 表的 rw1 行 col_f1 列族的所有数据。

hbase(main):035:0>get'emp','rw1','col_f1'
COLUMN    CELL   
col_f1:age timestamp=1463055735107,value=20
col_f1:name timestamp=1463055709542,value=tanggao col_f1:sex timestamp=1463055753395,value=boy
3 row(s) in 0.0270 seconds

3. 更新一条记录
更新 emp 表的 rw1 行、col_f1 列族中 age 列的值。

hbase (main):037:0> put 'emp','rw1'col_f1:age','22'
0 row(s) in 0.0160 seconds

查看更新的结果。

hbase(main):038:0>get 'emp','rw1','col_f1:age'
COLUMN    CELL   
col_f1:age timestamp=1463055893492,value=22
1 row(s) in 0.0190 seconds

4. 通过时间戳获取两个版本的数据

hbase(main):039:0>get 'emp','rw1',{COLUMN=>'col_f1:age',TIMESTAMP=>1463055735107}
COLUMN    CELL
col_f1:age timestamp=1463055735107,value=20
1 row(s) in 0.0340 seconds

hbase(main):040:0>get 'emp','rw1',{COLUMN=>'col_f1:age',TIMESTAMP=>1463055893492}
COLUMN    CELL   
col_f1:age timestamp=1463055893492,value=22
1 row(s) in 0.0140 seconds

5. 全表扫描

hbase(main):041:0>scan 'emp'
ROW    COLUMN+CELL
id    column=col_f1:age,timestamp=1463055893492,value=2
id    column=col_f1:name,timestamp=1463055709542,value=tanggao
id    column=col_f1:sex,timestamp=1463055753395,value=boy
1 row(s) in 0.1520 seconds

6. 删除一列
删除 emp 表 rw1 行的一个列。

hbase(main):042:0>delete 'emp','rw1','col_f1:age'
0 row(s) in 0.0200 seconds

检查删除操作的结果。

hbase(main):043:0>get 'emp','rw1'
COLUMN    CELL
col_f1:name timestamp=1463.055709542,value=tanggao col_f1:sex timestamp=1463055753395,value=boy
2 row(s) in 0.2430 seconds

7. 删除行的所有单元格
使用“deleteall”命令删除 emp 表 rw1 行的所有列。

hbase(main) :044:0>deleteall 'emp','rw1'
0 row(s) in 0.0550 seconds

8. 统计表中的行数

hbase(main):045:0>count 'emp'
0 row(s) in 0.0450 seconds

9. 清空整张表

hbase(main):007:0>truncate'emp'
Truncating 'emp' table(it may take a while);
-Disabling table...
-Truncating table...
0 row(s) in 4.1510 seconds
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于计算机专业的学生而言,参加各类比赛能够带来多方面的益处,具体包括但不限于以下几点: 技能提升: 参与比赛促使学生深入学习和掌握计算机领域的专业知识与技能,如编程语言、算法设计、软件工程、网络安全等。 比赛通常涉及实际问题的解决,有助于将理论知识应用于实践中,增强问题解决能力。 实践经验: 大多数比赛都要求参赛者设计并实现解决方案,这提供了宝贵的动手操作机会,有助于积累项目经验。 实践经验对于计算机专业的学生尤为重要,因为雇主往往更青睐有实际项目背景的候选人。 团队合作: 许多比赛鼓励团队协作,这有助于培养学生的团队精神、沟通技巧和领导能力。 团队合作还能促进学生之间的知识共享和思维碰撞,有助于形成更全面的解决方案。 职业发展: 获奖经历可以显著增强简历的吸引力,为求职或继续深造提供有力支持。 某些比赛可能直接与企业合作,提供实习、工作机会或奖学金,为学生的职业生涯打开更多门路。 网络拓展: 比赛是结识同行业人才的好机会,可以帮助学生建立行业联系,这对于未来的职业发展非常重要。 奖金与荣誉: 许多比赛提供奖金或奖品,这不仅能给予学生经济上的奖励,还能增强其成就感和自信心。 荣誉证书或奖状可以证明学生的成就,对个人品牌建设有积极作用。 创新与研究: 参加比赛可以激发学生的创新思维,推动科研项目的开展,有时甚至能促成学术论文的发表。 个人成长: 在准备和参加比赛的过程中,学生将面临压力与挑战,这有助于培养良好的心理素质和抗压能力。 自我挑战和克服困难的经历对个人成长有着深远的影响。 综上所述,参加计算机领域的比赛对于学生来说是一个全面发展的平台,不仅可以提升专业技能,还能增强团队协作、沟通、解决问题的能力,并为未来的职业生涯奠定坚实的基础。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值