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 中,熟记以下快捷键,将极大的提高你的命令行操作效率. 编辑命令 ...
随机推荐
- pseudo tty破除无法自动输入密码的限制
没有root权限,没有ssh密钥对,又想自动输入密码咋办? #!/usr/bin/python # simplest builtin python pseudo-tty for ssh passwor ...
- C语言基础:初级指针 分类: iOS学习 c语言基础 2015-06-10 21:50 30人阅读 评论(0) 收藏
指针:就是地址. & 取地址运算符 %p 打印地址占位符 int a=0; printf("%p ",&a); 指针变量:用来存放地址的变量 定义: ...
- iOS-----使用AFNetworking实现网络通信
使用AFNetworking实现网络通信 AFNetworking可以用于发送HTTP请求,接收HTTP响应,但不会缓存服务器响应,不能执行HTML页面中嵌入的JavaScript代码, 也不会对页面 ...
- stm32 内部温度传感器的配置
STM32的内部温度传感器和ADCx—IN16输入通道相连接.且温度传感器推荐采样时间为17.1us,支持的温度范围为:-40~125度,精度比较差,± 5℃左右. 计算温度值:T(℃) ={(V25 ...
- Finally什么时候会被执行
PS:有return意味着程序结束,他一定会在程序结束前执行: PS: return返回前 会把数据存储到指定的位置,基本类型是不会改变的.引用类型是会影响修改的值的
- 自己一下午练习Js的代码
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- js循环总结
js原生的循环有两种,一般的for循环和for...in循环.还有一种常用jQuery.each()循环. 一. js原生循环 a. for循环,代码如下: var myArray = [1,2,3] ...
- Sencha Touch+PhoneGap打造超级奶爸之喂养记(一) 源码免费提供(转)
起源 非常高兴我的宝宝健康平安的出生了.对于初次做奶爸的我,喜悦过后,面临着各中担心,担心宝宝各项指标是否正常.最初几天都是在医院待着,从出生那一天开始,护士妹妹隔一段时间就会来问宝宝的喂奶,大小便, ...
- map和jsonObject 这2中数据结构之间转换
前台写json直接是:var array = [ ] ; 调用方法:array[index],若是对象,再[“key”] var obj = {''a'':123 , "b":&q ...
- 一个方便查看数据库转换rest/graphql api 的开源软件的github 项目
https://github.com/dbohdan/automatic-api 是一个不错的github 知识项目,帮助我们 列出了,常见的的数据库可以直接转换为rest/graphql api 的 ...