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 中,熟记以下快捷键,将极大的提高你的命令行操作效率. 编辑命令 ...
随机推荐
- Java实现哈夫曼编码和解码
最近无意中想到关于api返回值加密的问题,譬如我们的api需要返回一些比较敏感或者重要不想让截获者得到的信息,像如果是做原创图文的,文章明文返回的话则有可能被抓包者窃取. 关于请求时加密的方式比较多, ...
- 修改类不重启tomcat 自动加载项目
可以修改类不用重启Tomcat加载整个项目(手工启动) 配置reloadable=true(自动重载) 使用Debug模式,前提是仅限于局部修改.(修改类不用重启--热加载) Tomc ...
- ARM 平台下的 SSHD 配置
sshd_config 文件中 允许 root 用户登录 PermitRootLogin yes 配置为内部的 sftp Subsystem sftp internal-sftp key 配置 ssh ...
- CentOS7安装OpenStack(Rocky版)-05.安装一个nova计算节点实例
上一篇文章分享了控制节点的nova计算服务的安装方法,在实际生产环境中,计算节点通常会安装一些单独的节点提供服务,本文分享单独的nova计算节点的安装方法 ---------------- 完美的分 ...
- XML教程、语法手册、数据读取方式大全
XML简单易懂教程 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) 一 XML --数据格式的写法 二 Re ...
- HDU 5178:pairs(二分,lower_bound和upper_bound)
pairs Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Subm ...
- $.each()与$(selector).each()
$.each()与$(selector).each()不同, 后者专用于jquery对象的遍历, 前者可用于遍历任何的集合(无论是数组或对象),如果是数组,回调函数每次传入数组的索引和对应的值(值亦可 ...
- dbt 生产环境使用
可以使用如下方式: 云主机或者普通的机器 使用 airflow 使用 Sinter, 一个托管的dbt runner 常见问题: 如何管理权限? 可以使用hooks 进行配置用户组以及权限 说明 实际 ...
- 一个简单的批量更新oracle 数据库中 最近的服务商名称的数据
有一个需求是这样的,我们需要更新数据库中的数据,数据时这样的 1.大约50万以上 2. 数据中有较多的重复数据 3. 需要将表中最近的代理商的名称赋值给行中的服务商名称 4. 代理商的名称可能有多个, ...
- seleniumWebdriver浏览器驱动信息汇总
selenium是thoughtworks公司开发的一款开源的测试工具,主要用来做web端的自动化测试. Python安装selenium,直接使用执行pip install selenium(pyt ...