HBase基础之Hbase shell常用操作
一般操作
查看服务器状态
status
查看hbase版本
version
DDL操作
创建表
create 'member','member_id','address','info'
创建了3个列族,分别是member_id, address, info
知识点回顾:cf是schema的一部分,而column不是。
查看表信息
describe 'member' DESCRIPTION ENABLED
'member', {NAME => 'address', DATA_BLOCK_ENCODING => 'NONE', BLOOMFILTE true
R => 'ROW', REPLICATION_SCOPE => '0', VERSIONS => '1', COMPRESSION => '
NONE', MIN_VERSIONS => '0', TTL => '2147483647', KEEP_DELETED_CELLS =>
'false', BLOCKSIZE => '65536', IN_MEMORY => 'false', BLOCKCACHE => 'tru
e'}, {NAME => 'info', DATA_BLOCK_ENCODING => 'NONE', BLOOMFILTER => 'RO
W', REPLICATION_SCOPE => '0', VERSIONS => '1', COMPRESSION => 'NONE', M
IN_VERSIONS => '0', TTL => '2147483647', KEEP_DELETED_CELLS => 'false',
BLOCKSIZE => '65536', IN_MEMORY => 'false', BLOCKCACHE => 'true'}, {NA
ME => 'member_id', DATA_BLOCK_ENCODING => 'NONE', BLOOMFILTER => 'ROW',
REPLICATION_SCOPE => '0', VERSIONS => '1', COMPRESSION => 'NONE', MIN_
VERSIONS => '0', TTL => '2147483647', KEEP_DELETED_CELLS => 'false', BL
OCKSIZE => '65536', IN_MEMORY => 'false', BLOCKCACHE => 'true'}
1 row(s) in 0.1800 seconds
查询所有的表
list
删除一个列族
member表建了3个列族,但是发现member_id这个列族是多余的,因为他就是主键,所以我们要将其删除。
alter 'member','delete'=>'member_id'
drop表
为了测试drop,先创建一个表
create 'tmp_table','info'
删除表之前需要先将表disable再drop(新版本不用disable)
disable 'tmp_table'
drop 'tmp_table'
判断表是否enable
is_enabled 'member'
判断表是否disabled
is_disabled 'member'
DML操作
插入记录
格式:put 表名 row_key cf:column value
put 'member','luogankun','info:age','27'
put 'member','luogankun','info:birthday','1986-09-05'
put 'member','luogankun','info:company','asinainfo-linkage'
put 'member','luogankun','address:country','china'
put 'member','luogankun','address:province','beijing'
put 'member','luogankun','address:city','beijing' put 'member','spring','info:age','27'
put 'member','spring','info:birthday','1986-05-14'
put 'member','spring','info:company','asinainfo-linkage'
put 'member','spring','address:country','china'
put 'member','spring','address:province','hubei'
put 'member','spring','address:city','wuhan'
put 'member','spring','info:favorite','shopping'
知识点回顾: column完全动态扩展,每行可以有不同的columns。
获取一个rowkey的所有数据
格式:get 表名 row_key
get 'member','luogankun' COLUMN CELL
address:city timestamp=1409122962541, value=beijing
address:country timestamp=1409122962468, value=china
address:province timestamp=1409122962510, value=beijing
info:age timestamp=1409122962328, value=27
info:birthday timestamp=1409122962399, value=1986-09-05
info:company timestamp=1409122962434, value=asinainfo-linkage
知识点回顾:htable按rowkey字典序(1,10,100,2)自动排序,每行包含任意数量的columns,columns按照columnkey(address:city,address:country,address:province,info:age,info:birthday,info:company)自动排序。
获取一个id,一个列族的所有数据
格式: get 表名 row_key column
get 'member','luogankun','info' COLUMN CELL
info:age timestamp=1409122962328, value=27
info:birthday timestamp=1409122962399, value=1986-09-05
info:company timestamp=1409122962434, value=asinainfo-linkage
获取一个id,一个列族中一个列的所有数据
格式:get 表名 row_key cf:column
get 'member','luogankun','info:age' COLUMN CELL
info:age timestamp=1409122962328, value=27
更新一条记录
格式: put 表名 row_key cf:column value
将luogankun的年龄改成18
put 'member','luogankun','info:age','18' get 'member','luogankun','info:age' COLUMN CELL
info:age timestamp=1409123175384, value=18
知识点回顾:查询默认返回最新的值。
通过timestamp来获取指定版本的数据
格式: get 表名 row_key {COLUMN=>'cf:column',TIMESTAMP=>xxxxxx}
get 'member','luogankun',{COLUMN=>'info:age',TIMESTAMP=>1409122962328}
COLUMN CELL
info:age timestamp=1409122962328, value=27
get 'member','luogankun',{COLUMN=>'info:age',TIMESTAMP=>1409123175384}
COLUMN CELL
info:age timestamp=1409123175384, value=18
知识点回顾:每个column可以有任意数量的values,按timestamp倒序自动排序;tableName+rowkey+column+timestamp==>value
全表扫描
格式:scan 表名
scan 'member' ROW COLUMN+CELL
luogankun column=address:city, timestamp=1409122962541, value=beijing
luogankun column=address:country, timestamp=1409122962468, value=china
luogankun column=address:province, timestamp=1409122962510, value=beijing
luogankun column=info:age, timestamp=1409123175384, value=18
luogankun column=info:birthday, timestamp=1409122962399, value=1986-09-05
luogankun column=info:company, timestamp=1409122962434, value=asinainfo-linkage
spring column=address:city, timestamp=1409122962828, value=wuhan
spring column=address:country, timestamp=1409122962754, value=china
spring column=address:province, timestamp=1409122962787, value=hubei
spring column=info:age, timestamp=1409122962592, value=27
spring column=info:birthday, timestamp=1409122962623, value=1986-05-14
spring column=info:company, timestamp=1409122962670, value=asinainfo-linkage
spring column=info:favorite, timestamp=1409122963494, value=shopping
删除id为spring的值的'info:age'字段
格式:delete 表名 row_key cf:column
先查看
get 'member','spring','info:age' COLUMN CELL
info:age timestamp=1409122962592, value=27
再删除
delete 'member','spring','info:age'
get 'member','spring','info:age' COLUMN CELL
0 row(s)
查询表中有多少行
格式:count 表名
count 'member'
删除整行
格式: deleteall 表名 row_key
deleteall 'member','spring'
将整张表清空
格式: truncate 表名
truncate 'member' Truncating 'member' table (it may take a while):
- Disabling table...
- Dropping table...
- Creating table...
可以看出,hbase是先将掉disable掉,然后drop掉后重建表来实现truncate的功能的。
HBase基础之Hbase shell常用操作的更多相关文章
- 【mongodb系统学习之八】mongodb shell常用操作
八.mongodb shell常用基础操作(每个语句后可以加分号,也可以不加,看情况定(有的工具中可以不加),最好是加): 1).进入shell操作界面:mongo,上边已有演示: 2).查看当前使 ...
- Docker 基础概念科普 和 常用操作介绍
Docker 基础概念 Docker是什么? Docker的思想来自于集装箱,集装箱解决了:在一艘大船上,可以把货物规整的摆放起来.并且各种各样的货物被集装箱标准化了,集装箱和集装箱之 ...
- Hive Shell常用操作
1.Hive非交互模式常用命令: 1) hive -e:从命令行执行指定的HQL,不需要分号: % hive -e 'select * from dummy' > a.txt 2) hive – ...
- Spark环境搭建(二)-----------HDFS shell 常用操作
配置好HDFS,也学习了点HDFS的简单操作,跟Linux命令相似 1) 配置Hadoop的环境变量,类似Java的配置 在 ~/.bash_profile 中加入 export HADOOP_HO ...
- JavaScript基础DOM介绍和常用操作(5)
day53 参考:https://www.cnblogs.com/liwenzhou/p/8011504.html JavaScript引入方式 location对象 window.location ...
- Python基础之字符串(str)常用操作
1.字符串常用的方法 len()返回字符串的长度 ##Python3 >>> print(len('ab12我')) 5 ##Python2 >>> print(l ...
- 8. Ceph 基础篇 - 运维常用操作
文章转载自:https://mp.weixin.qq.com/s?__biz=MzI1MDgwNzQ1MQ==&mid=2247485300&idx=1&sn=aacff9f7 ...
- Hive基础之Hive表常用操作
本案例使用的数据均来源于Oracle自带的emp和dept表 创建表 语法: CREATE [EXTERNAL] TABLE [IF NOT EXISTS] [db_name.]table_name ...
- Linux Bash shell常用操作快捷键
转自:https://linuxtoy.org/archives/bash-shortcuts.html 生活在 Bash shell 中,熟记以下快捷键,将极大的提高你的命令行操作效率. 编辑命令 ...
随机推荐
- centos7.5 安装 redis-4.0.11
1.下载redis包 wget wget http://download.redis.io/releases/redis-4.0.11.tar.gz 2.解压安装 #解压 .tar.gz #安装 cd ...
- 公告:《那些年,追寻Jmeter的足迹》上线
在我们团队的努力下,我们<那些年,追寻Jmeter的足迹>手册第1版本工作完成(后面还会有第2版本),比较偏基础,这是汇集我们团队的经验和团队需要用到的知识点来整理的,在第2个版本,我们整 ...
- ZooKeeper 集群环境搭建 (本机3个节点)
--------------------------------------------------------1.建立目录server1server1/dataDirserver1/dataLogD ...
- 【error】segmentation fault分析
前言 调试代码的时候,可能会出现segmentation fault的bug,很难找到原因,在此总结一下可能的原因. SIGSEGV 原因分析 1.程序中的变量没有进行检查: 比如,没有对变量的大小进 ...
- LOJ2542. 「PKUWC2018」随机游走【概率期望DP+Min-Max容斥(最值反演)】
题面 思路 我们可以把到每个点的期望步数算出来取max?但是直接算显然是不行的 那就可以用Min-Max来容斥一下 设\(g_{s}\)是从x到s中任意一个点的最小步数 设\(f_{s}\)是从x到s ...
- with() {} 的用法
var use = "other"; var katana = { isSharp: true, use: function(){ this.isSharp = !!this.is ...
- jQuery事件绑定汇总(包括一些无法获取事件的问题)
★ $(document).on('click', 'button[name=closeLayerOut2]', function () { ...... }); $(document).on('cl ...
- js循环总结
js原生的循环有两种,一般的for循环和for...in循环.还有一种常用jQuery.each()循环. 一. js原生循环 a. for循环,代码如下: var myArray = [1,2,3] ...
- 使用docusaurus 搭建开发&&api && 博客站点
对于日常的开发系统以及产品一个简单,方便的api&&文档网站可以七很大的作用 docusaurus 是facebook开源的文档管理框架,使用它我们可以快速的创建专业. 完备的文档站点 ...
- ASP.NET MVC中如何以ajax的方式在View和Action中传递数据
前言:写这篇随笔的时候,在url上漏写了斜线,找了好久错误,整个人都很不好.#我是猪系列 背景:之前介绍过一篇如何构建 MVC&AJax&JSon示例,这一篇单独讲解如何在View和A ...