设为首页 收藏本站
查看: 1137|回复: 0

HBase shell 简单使用

[复制链接]

尚未签到

发表于 2015-4-28 10:47:15 | 显示全部楼层 |阅读模式
引言
HBase提供了丰富的访问接口。
  · HBase Shell
  · Java clietn API
  · Jython、Groovy DSL、Scala
  · REST
  · Thrift(Ruby、Python、Perl、C++…)
  · MapReduce
  · Hive/Pig
其中HBase Shell是常用的便捷方式

首先你需要一个HBase的环境,如果需要自己搭建可以参考http://hbase.apache.org/book/quickstart.html 和http://hbase.apache.org/book/notsoquick.html。

如果你在windows环境下配置cygwin及ssh遇到问题可以参考 http://qa.taobao.com/?p=10633。

进入HBase shell控制台
>bin/hbase shell
输入“help”可以快速扫描下支持那些命令。

创建表
> create 'blog','article','author'
知识点回顾:Column Family是schema的一部分,而Column不是。这里的article和author是Column Family。

查询所有表

>list

DSC0000.png
增加记录
>put 'blog','1','article:title,' Head First HBase '
>put 'blog','1','article:content','HBase is the Hadoop database. Use it when you need random, realtime read/write access to your Big Data.'
> put 'blog','1','article:tags','Hadoop,HBase,NoSQL'
> put 'blog','1','author:name','hujinjun'
> put 'blog','1','author:nickname',’一叶渡江’
知识点回顾:Column完全动态扩展,每行可以有不同的Columns。

根据RowKey查询
> get 'blog','1'

DSC0001.png
知识点回顾:HTable按RowKey字典序(1,10,100,11,2)自动排序,每行包含任意数量
的Columns,Columns按ColumnKey(article:content,article:tags,article:title,author:name,author:nickname)自动排序

查询列族

>get 'blog','1','author

DSC0002.png
查看表内容

>scan 'blog'

DSC0003.png
更新练习


  • 查询下更新前的值:
> get ‘blog’,’1’,’author:nickname’

DSC0004.png

  • 更新nickname为’yedu’:
> put ‘blog’,’1’,’ahthor:nickname’,’yedu’


  • 查询更新后的结果:
> get ‘blog’,’1’,’author:nickname’

DSC0005.png
知识点回顾:查询默认返回最近的值。


  • 查询nickname的多个(本示例为2个)版本值
> get 'blog','1',{COLUMN => 'author:nickname',VERSIONS => 2}

DSC0006.png
知识点回顾:每个Column可以有任意数量的Values,按Timestamp倒序自动排序。
  当修改多次(大于3次,修改2次时也就有3个VERSIONS)时:VERSIONS默认最高为3
  > get 'blog','1',{COLUMN => 'author:nickname',VERSIONS => 4}
DSC0007.png

  • 如何只查询到以前的旧版本呢,需要借助Timestamp
>get 'blog','1',{COLUMN => 'author:nickname', TIMESTAMP => 1333690828877}
DSC0008.png

知识点回顾:TabelName+RowKey+Column+Timestamp=>Value

删除记录


  • delete只能删除一个column
>delete 'blog','1','author:nickname'


  • 删除RowKey的所有column用deleteall
>deleteall ‘blog’,’1’
删除表
练习完毕,把练习表删了吧,删除之前需要先disable
>disable ‘blog’
>drop ‘blog’

小结
本文演示了通过HBase shell创建、删除表及对记录的增删改查,可以参照操作结果对回顾的知识点进一步理解掌握,在本系列下一篇文章中讲演示如何通过Java api来与HBase交互。

  内容主要来自:http://hi.baidu.com/jrckkyy/blog/item/b5e0204595994e2086947370.html

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-61492-1-1.html 上篇帖子: X皮书之shell热身 下篇帖子: Prism学习(6)---Shell Region View
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表