• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
导航菜单
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx
您的位置:首页 > 服务器 >云计算 > HBase Shell的基本用法,HBaseShell用法

HBase Shell的基本用法,HBaseShell用法

作者:网友 字体:[增加 减小] 来源:互联网

本文主要包含hbase shell,hbase shell命令,hbase shell scan,hbase shell count,hbase shell filter等服务器相关知识,网友希望可以进行参考

HBase Shell的基本用法,HBaseShell用法


hbase提供了一个shell的终端给用户交互。使用命令hbaseshell进入命令界面。通过执行 help可以看到命令的帮助信息。

以网上的一个学生成绩表的例子来演示hbase的用法。

  

name

  
  

grad

  
  

course

  
  

math

  
  

art

  
  

Tom

  
  

5

  
  

97

  
  

87

  
  

Jim

  
  

4

  
  

89

  
  

80

  

这里grad对于表来说是一个只有它自己的列族,course对于表来说是一个有两个列的列族,这个列族由两个列组成math和art,当然我们可以根据我们的需要在course中建立更多的列族,如computer,physics等相应的列添加入course列族。

(1)建立一个表scores,有两个列族grad和courese

hbase(main):001:0> create'scores','grade', 'course'

可以使用list命令来查看当前HBase里有哪些表。使用describe命令来查看表结构。(记得所有的表明、列名都需要加上引号)

(2)按设计的表结构插入值:

put'scores','Tom','grade:','5'
put 'scores','Tom','course:math','97'
put 'scores','Tom','course:art','87'
put 'scores','Jim','grade','4'
put 'scores','Jim','course:math','89'
put 'scores','Jim','course:art','80'

这样表结构就起来了,其实比较自由,列族里边可以自由添加子列很方便。如果列族下没有子列,加不加冒号都是可以的。

  

put命令比较简单,只有这一种用法:

  

hbase> put 't1', 'r1',  'c1', 'value', ts1

  

t1指表名,r1指行键名,c1指列名,value指单元格值。ts1指时间戳,一般都省略掉了。

  

(3)根据键值查询数据

get 'scores','Jim'
get 'scores','Jim','grade'

get 'scores','Jim','course' (列族有多列的话要用scan获取所有记录【scan 'scores',{COLUMNS => 'course'}】,用get只得到最新加入列族的一条记录)

get 'scores','Jim','course:math' (这样可以)

可能你就发现规律了,HBase的shell操作,一个大概顺序就是操作关键词后跟表名,行名,列名这样的一个顺序,如果有其他条件再用花括号加上。
get
有用法如下:

hbase> get 't1', 'r1'
hbase> get 't1', 'r1', {TIMERANGE => [ts1, ts2]}
hbase> get 't1', 'r1', {COLUMN => 'c1'}
hbase> get 't1', 'r1', {COLUMN => ['c1', 'c2', 'c3']}
hbase> get 't1', 'r1', {COLUMN => 'c1', TIMESTAMP => ts1}
hbase> get 't1', 'r1', {COLUMN => 'c1', TIMERANGE => [ts1, ts2],VERSIONS => 4}
hbase> get 't1', 'r1', {COLUMN => 'c1', TIMESTAMP => ts1, VERSIONS=> 4}
hbase> get 't1', 'r1', 'c1'
hbase> get 't1', 'r1', 'c1', 'c2'
hbase> get 't1', 'r1', ['c1', 'c2']

(4)扫描所有数据

scan 'scores'

也可以指定一些修饰词:TIMERANGE,FILTER, LIMIT, STARTROW, STOPROW, TIMESTAMP, MAXLENGTH,or COLUMNS。没任何修饰词,就是上边例句,就会显示所有数据行。

例句如下:

hbase> scan '.META.'
hbase> scan '.META.', {COLUMNS => 'info:regioninfo'}
hbase> scan 't1', {COLUMNS => ['c1', 'c2'], LIMIT => 10, STARTROW=> 'xyz'}
hbase> scan 't1', {COLUMNS => 'c1', TIMERANGE => [1303668804,1303668904]}
hbase> scan 't1', {FILTER => "(PrefixFilter ('row2') AND (QualifierFilter(>=, 'binary:xyz'))) AND (TimestampsFilter ( 123, 456))"}
hbase> scan 't1', {FILTER =>org.apache.hadoop.hbase.filter.ColumnPaginationFilter.new(1, 0)}

过滤器filter有两种方法指出:
a. Using a filterString - more information on this is available in the
Filter Language document attached to the HBASE-4176 JIRA
b. Using the entire package name of the filter.

还有一个CACHE_BLOCKS修饰词,开关scan的缓存的,默认是开启的(CAC

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • HBase Shell的基本用法,HBaseShell用法
  • HBase常用操作之namespace,hbasenamespace
  • HBase shell 启动出错 org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode = Con,
  • Hbase shell操作(完整版记录),hbaseshell

相关文章

  • http content length,contentlength
  • 机器学习--k-近邻(kNN)算法案例,--k-knn
  • hive优化-----控制hive任务的reduce数,hivereduce
  • zookeeper——分布式锁,zookeeper
  • jsp里input中获取当前时间,与WdatePicker配合使用,inputwdatepicker
  • 各种分布式文件系统的比较,文件
  • Navicat连接oracle,出现Only compatible with oci version 8.1 and&nb,navicatoci
  • 你真的了解OpenStack吗?学过的人,都知道!,了解openstack
  • [Hive]HBaseIntegration:通过Hive读写HBase,
  • vlan trunk and access,vlantrunk

文章分类

  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx

最近更新的内容

    • 用户大会/会销怎么搞-Zoho CRM用户大会有感,-zohocrm
    • HBase数据导入的几种操作,hbase数据导入几种
    • hive复杂类型访问操作,hive访问
    • 金典依旧,钱龙金典版
    • LXC学习,学习中国app上线
    • Map/Reduce原理
    • hadoop学习笔记(四)——eclipse+maven+hadoop2.5.2源码,hadoophadoop2.5.2
    • spark core源码分析14 参数配置,sparkcore
    • 机器学习-模型评估与选择
    • Understanding Cubert Concepts 之 BLOCK(一),cubertconcepts

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有