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 中,熟记以下快捷键,将极大的提高你的命令行操作效率. 编辑命令 ...
随机推荐
- HDU 1590 Searching(求复数向量和的极限)
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission( ...
- 使用pace监控ajax踩过的坑
使用vue.js开发移动端的活动页面时,有时候会出现因为请求的数据没有返回而使得当前活动页结构混乱或者不美观,这个时候可以考虑使用pace.js,通过设置参数值,在ajax全部请求结束之前显示load ...
- spark 与 Hadoop 融合后启动 slf4j提示Class path contains multiple SLF4J bindings
相关参考文献: https://www.oschina.net/question/93435_174549 警告信息如下: 看起来明明就是一个文件,怎么还提示multiple bindings呢,sl ...
- ReSharper2017.3的列对齐、排版格式、列对齐错误的修复
ReSharper代码排版格式 列对齐 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- ...
- C#写的window服务内存溢出
浅谈c#垃圾回收机制(GC) 写了一个window服务,循环更新sqlite记录,内存一点点稳步增长.三天后,内存溢出.于是,我从自己的代码入手,查找到底哪儿占用内存释放不掉,最终明确是调用servi ...
- CTF-练习平台-Misc之 想蹭网先接开密码
十三.想蹭网先接开密码 用wireshark打开,WiFi认证过程重点在WPA的四次握手包,找到EAPOL握手协议,另存为 根据题目提示,写字典 #include<stdio.h>int ...
- Java的历史和大事记
Java的历史 在上世纪90 年代初,sun 公司有一个叫做Green 的项目,目的是为家用消费电子产品开发一个分布式代码系统,这样就可以对家用电器进行控制,和它们进行信息交流.詹姆斯·高斯林(Jam ...
- hbase基于solr配置二级索引
一.概述 Hbase适用于大表的存储,通过单一的RowKey查询虽然能快速查询,但是对于复杂查询,尤其分页.查询总数等,实现方案浪费计算资源,所以可以针对hbase数据创建二级索引(Hbase Sec ...
- 使用 telnet 发邮件
我们都习惯了用邮件客户端软件或者登录到电子邮件站点进行收发邮件,现在尝试一下使用 Windows 自带的 Telnet 程序手工地发送一封简单的邮件,以此来稍微明白关于邮件发送的一些知识. 现在 E- ...
- TNS-12535 TNS-00505的处理方法
原文地址:TNS-12535 TNS-00505的处理方法 作者:wzq609 硬件说明: 操作系统版本:ORACLE LINUX 6.3 64位 数据库版本:11.2.0.3 64位 问题说明 ...