大数据培训之HBase命令行基本操作汇总分享
2018-02-05 14:32:17
812浏览
关于HBase是一个分布式的、面向列的开源数据库,该技术来源于FayChang所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”。就像Bigtable利用了Google文件系统(FileSystem)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力。HBase是Apache的Hadoop项目的子项目。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBase基于列的而不是基于行的模式。
[hdfs@hadoop1root]$hbase
Usage:hbase[][]
Options:
--configDIRConfigurationdirectiontouse.Default:./conf
--hostsHOSTSOverridethelistin'regionservers'file
Commands:
Somecommandstakearguments.Passnoargsor-hforusage.
shellRuntheHBaseshell
hbckRunthehbase'fsck'tool
hlogWrite-ahead-loganalyzer
hfileStorefileanalyzer
zkcliRuntheZooKeepershell
upgradeUpgradehbase
masterRunanHBaseHMasternode
regionserverRunanHBaseHRegionServernode
zookeeperRunaZookeeperserver
restRunanHBaseRESTserver
thriftRuntheHBaseThriftserver
thrift2RuntheHBaseThrift2server
cleanRuntheHBasecleanupscript
classpathDumphbaseCLASSPATH
mapredcpDumpCLASSPATHentriesrequiredbymapreduce
peRunPerformanceEvaluation
lttRunLoadTestTool
versionPrinttheversion
CLASSNAMERuntheclassnamedCLASSNAME
??进入命令行
[root@hadoop1~]#hbaseshell
??退出命令行
hbase(main):001:0>exit
??查看全部表
hbase(main):001:0>listTABLE0row(s)in1.9500seconds
=>[]
??创建表
create'表名称','列名称1',...,'列名称n'
eg:建立一个表scores,有两个列族grad和courese。
hbase(main):004:0>create'scores','grad','courese'
0row(s)in1.5820seconds
=>Hbase::Table-scores
hbase(main):005:0>list
TABLE
scores
1row(s)in0.0080seconds
=>["scores"]
??添加记录
put'表名','行键名','列名','单元格值','时间戳'
时间戳可以省略。
hbase(main):009:0>put'scores','Tom','grad:','5'
hbase(main):011:0>put'scores','Tom','courese:math','100'
hbase(main):012:0>put'scores','Tom','courese:art','100'
hbase(main):013:0>put'scores','Mark','grad','6'
hbase(main):014:0>put'scores','Mark','courese:english','120'
hbase(main):015:0>put'scores','Mark','courese:chinese','108'
??查找某条记录
hbase(main):020:0>get'scores','Mark'
COLUMNCELL
courese:chinesetimestamp=1435491529683,value=108
courese:englishtimestamp=1435491508206,value=120
grad:timestamp=1435491484521,value=6
3row(s)in0.0520seconds
hbase(main):021:0>get'scores','Mark','grad'
COLUMNCELL
grad:timestamp=1435491484521,value=6
1row(s)in0.0390seconds
??统计行数
hbase>count'ns1:t1'
hbase>count't1'
hbase>count't1',INTERVAL=>100000
hbase>count't1',CACHE=>1000
hbase>count't1',INTERVAL=>10,CACHE=>1000
统计一般比较耗时,使用mapreduce进行统计,统计结果会缓存,默认是10行,统计间隔默认是1000行。
hbase(main):038:0>count'scores'
2row(s)in0.0290seconds
=>2
??修改表结构
增加一列族
hbase(main):048:0>alter'scores',NAME=>'info'
Updatingallregionswiththenewschema...
0/1regionsupdated.
1/1regionsupdated.
Done.
0row(s)in2.4330seconds
删除一个列族
hbase(main):053:0>alter'scores',NAME=>'NAME=info',METHOD=>'delete'
Updatingallregionswiththenewschema...
0/1regionsupdated.
1/1regionsupdated.
Done.
0row(s)in2.4670seconds
hbase(main):055:0>alter'scores','delete'=>'courese'
??不过不能删除掉,先disable'scores',修改完之后再enable'scores'。
??删除表
先禁用表
hbase(main):057:0>disable'scores'
然后删除表
hbase(main):057:0>drop'scores'
??删除指定数据
delete'scores','Mark','courese:english'
??删除整行
deleteall'表名','行键'
deleteall'scores','Mark'(慎用)
??清空表:表结构仍然在
truncate'scores'
最后想要了解更多关于大数据发展前景趋势,请关注扣丁学堂官网、微信等平台,扣丁学堂IT职业在线学习教育平台为您提供权威的大数据视频教程系统,通过千锋旗下金牌讲师在线录制的大数据培训视频教程系统,让你快速掌握大数据从入门到精通大数据开发实战技能。扣丁学堂大数据学习群:209080834。
【关注微信公众号获取更多学习资料】
查看更多关于“大数据培训资讯”的相关文章>>
标签: