列出所有 table

hbase(main):>	list

新增 table

A . 直接增加一個表 t2

hbase(main):>	create 't2'

B . 增加一個擁有 'f1','f2','fn' 為 column family 的表: t1

hbase(main):>	create 't1','f1','f2','fn'

查詢 Table 欄位

hbase(main):> describe 't1'

執行結果參考

hbase(main):> describe 't1'
DESCRIPTION ENABLED
{NAME => 't1', FAMILIES => [{NAME => 'f1', COMPRESSION => 'NONE', VERS true
IONS => '3', TTL => '2147483647', BLOCKSIZE => '65536', IN_MEMORY => '
false', BLOCKCACHE => 'true'}, {NAME => 'f2', COMPRESSION => 'NONE', V
ERSIONS => '3', TTL => '2147483647', BLOCKSIZE => '65536', IN_MEMORY =
> 'false', BLOCKCACHE => 'true'}, {NAME => 'fn', COMPRESSION => 'NONE'
, VERSIONS => '3', TTL => '2147483647', BLOCKSIZE => '65536', IN_MEMOR
Y => 'false', BLOCKCACHE => 'true'}]}

加入cell-value

需先擁有表 t1 與column-family : f1 並且加入一個 column-quantifier c1

hbase(main):>	put 't1', 'r1', 'f1', 'v1'
hbase(main):> put 't1', 'r1', 'f1:c1', 'v2'
hbase(main):> put 't1', 'r2', 'f2', 'v3'
hbase(main):> put 't1', 'r2', 'f2:c2', 'v4'
Table: 't1'
row-key 'f1' 'f2' 'fn' column-family
* 'c1' * 'c2' * column-quantifier
r1 v1        
  v2      
r2     v3    
      v4  

列出cell-value

A . 列出一列(row)

hbase(main):>	get 't1', 'r1'

執行結果參考

COLUMN                    CELL
f1: timestamp=1285737082689, value=v1
f1:c1 timestamp=1285737085874, value=v2
Table: 't1'
row-key 'f1' 'f2' 'fn' column-family
* 'c1' * 'c2' * column-quantifier
r1 v1        
  v2      
r2     v3    
      v4  

B . 列出一個 cell 的值

hbase(main):>   get 't1', 'r1', {COLUMN => 'f1:c1'}

執行結果參考

COLUMN                       CELL
f1:c1 timestamp=1285737085874, value=v2
Table: 't1'
row-key 'f1' 'f2' 'fn' column-family
* 'c1' * 'c2' * column-quantifier
r1 v1        
  v2      
r2     v3    
      v4  

刪除 cell-value

hbase(main):>	deleteall 't1','r1'

執行結果:會把 row-key 是 'r1' 的所有紀錄。此時資料表 't1' 會變成如下表所示。

hbase(main):> scan 't1'
ROW COLUMN+CELL
r2 column=f2:, timestamp=1285737091644, value=v3
r2 column=f2:c2, timestamp=1285737094157, value=v4
Table: 't1'
row-key 'f1' 'f2' 'fn' column-family
* 'c1' * 'c2' * column-quantifier
           
r2     v3    
      v4  

加入column family

hbase(main):>	disable 't1'
hbase(main):> alter 't1', {NAME => 'f3'}
hbase(main):> enable 't1'

執行結果:多了一個 column-family 'f3' 可以用 describe 指令查詢,結果示意如下表:

hbase(main):021:0> describe 't1'
DESCRIPTION ENABLED
{NAME => 't1', FAMILIES => [{NAME => 'f1', COMPRESSION => 'NONE', VERS true
IONS => '3', TTL => '2147483647', BLOCKSIZE => '65536', IN_MEMORY => '
false', BLOCKCACHE => 'true'}, {NAME => 'f2', COMPRESSION => 'NONE', V
ERSIONS => '3', TTL => '2147483647', BLOCKSIZE => '65536', IN_MEMORY =
> 'false', BLOCKCACHE => 'true'}, {NAME => 'f3', VERSIONS => '3', COMP
RESSION => 'NONE', TTL => '2147483647', BLOCKSIZE => '65536', IN_MEMOR
Y => 'false', BLOCKCACHE => 'true'}, {NAME => 'fn', COMPRESSION => 'NO
NE', VERSIONS => '3', TTL => '2147483647', BLOCKSIZE => '65536', IN_ME
MORY => 'false', BLOCKCACHE => 'true'}]}
Table: 't1'
row-key 'f1' 'f2' 'f3' 'fn' column-family
* 'c1' * 'c2' * * column-quantifier
r2     v3      
      v4    

刪除column family

hbase(main):>	disable 't1'
hbase(main):> alter 't1', {NAME => 'f1', METHOD => 'delete'}
hbase(main):> enable 't1'

執行結果:會移除 column family 為 'f1' 的所有欄位,可用 describe 指令確認,結果如下表所示。

hbase(main):053:0> describe 't1'
DESCRIPTION ENABLED
{NAME => 't1', FAMILIES => [{NAME => 'f2', COMPRESSION => 'NONE', VERS true
IONS => '3', TTL => '2147483647', BLOCKSIZE => '65536', IN_MEMORY => '
false', BLOCKCACHE => 'true'}, {NAME => 'f3', COMPRESSION => 'NONE', V
ERSIONS => '3', TTL => '2147483647', BLOCKSIZE => '65536', IN_MEMORY =
> 'false', BLOCKCACHE => 'true'}, {NAME => 'fn', COMPRESSION => 'NONE'
, VERSIONS => '3', TTL => '2147483647', BLOCKSIZE => '65536', IN_MEMOR
Y => 'false', BLOCKCACHE => 'true'}]}
1 row(s) in 0.0200 seconds
Table: 't1'
row-key   'f2' 'f3' 'fn' column-family
  * 'c2' * * column-quantifier
r2   v3      
    v4    

節點狀態

hbase(main):>	status

刪除整張table

hbase(main):>	truncate 't1'
  • 執行完 truncate 後,所有 't1' 的內容都會被移除。但此時,下 list 還會有 't1' 這個表格存在。
hbase(main):>	disable 't1'
hbase(main):> drop 't1'
  • 要完整移除 't1' 資料表,必須使用 disable 先將 't1' 停用,再用 drop 指令把 't1' 完全刪除。

转自:http://trac.nchc.org.tw/cloud/wiki/NCHCCloudCourse100929_2_USE

Hbase 使用方法的更多相关文章

  1. HBase多条件及分页查询的一些方法

    HBase是Apache Hadoop生态系统中的重要一员,它的海量数据存储能力,超高的数据读写性能,以及优秀的可扩展性使之成为最受欢迎的NoSQL数据库之一.它超强的插入和读取性能与它的数据组织方式 ...

  2. hbase运行mapreduce设置及基本数据加载方法

    hbase与mapreduce集成后,运行mapreduce程序,同时需要mapreduce jar和hbase jar文件的支持,这时我们需要通过特殊设置使任务可以同时读取到hadoop jar和h ...

  3. HBase应用开发回顾与总结系列之四:HBase配置管理类接口设计

      利用Eclipse进行HBase应用开发时,至少需要确定三个配置信息,如下表所示: #hbase config #HMaster服务部署主机及端口号 hbase.master=hdp-wuyong ...

  4. HBase 的安装与配置

    实验简介 本次实验学习和了解 HBase 在不同模式下的配置和安装,以及 HBase 后续的启动和停止等. 一.实验环境说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou,密码shi ...

  5. hbase安装配置(整合到hadoop)

    hbase安装配置(整合到hadoop) 如果想详细了解hbase的安装:http://abloz.com/hbase/book.html 和官网http://hbase.apache.org/ 1. ...

  6. hbase+springboot+redis实现分页

    实现原理: 1.读取hbase数据每页的数据时多取一条数据.如:分页是10条一页,第一次查询hbase时, 取10+1条数据,然后把第一条和最后一条rowkey数据保存在redis中,redis中的k ...

  7. 大数据查询——HBase读写设计与实践

    导语:本文介绍的项目主要解决 check 和 opinion2 张历史数据表(历史数据是指当业务发生过程中的完整中间流程和结果数据)的在线查询.原实现基于 Oracle 提供存储查询服务,随着数据量的 ...

  8. HBase读写的几种方式(三)flink篇

    1. HBase连接的方式概况 主要分为: 纯Java API读写HBase的方式: Spark读写HBase的方式: Flink读写HBase的方式: HBase通过Phoenix读写的方式: 第一 ...

  9. [HBase Manual] CH2 Getting Started

    Getting Started Getting Started 1. Introduction 2.Quick Start-Strandalone HBase 2.1 JDK版本选择 2.2 Get ...

随机推荐

  1. GridView中CheckBox的用法

    以下是我在GridView中控制CheckBox的全选/取消全选,根据子CheckBox处理全选CheckBox状态的操作并获取所选GridView中所选行的列的值. 脚本代码:    <scr ...

  2. Django——Session源码分析

    首先我们导入django.contrib.sessions.middleware这个中间件,查看里面的Session源码 from django.contrib.sessions.middleware ...

  3. python常用模块-2

    一 .time模块 表示时间的三种方式: 时间戳:数字(计算机能认识的) 时间字符串:t='2012-12-12' 结构化时间:time.struct_time(tm_year=2017, tm_mo ...

  4. LeetCode:罗马数字转整数【13】

    LeetCode:罗马数字转整数[13] 题目描述 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M. 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M 10 ...

  5. 如何在IAR中配置CRC参数(转)

    源:如何在IAR中配置CRC参数 前言 STM32全系列产品都具有CRC外设,对CRC的计算提供硬件支持,为应用程序节省了代码空间.CRC校验值可以用于数据传输中的数据正确性的验证,也可用于数据存储时 ...

  6. 大话设计模式之PHP篇 - 适配器模式

    定义将一个类的接口转换成客户希望的另外一个接口,使用原本不兼容的而不能在一起工作的那些类可以在一起工作. 角色Target适配目标,该角色定义把其他类转换为何种接口,也就是我们的期望接口.Adapte ...

  7. JAVA基础补漏--字符串

    字符串常量池 String a="abc"; String b="abc"; char[] str = {"a","b" ...

  8. 30道linux运维面试题(很精典)

    https://zhangge.net/1986.html 1.linux 如何挂在 windows 下的共享目录         Shell   1 mount.cifs //192.168.1.3 ...

  9. Django object filter查询[转]

    用PYTHON ,DJANGO 做站,在通常的情况下,需要用到 orM 的查询方法,比如object.filter(tag__contains='keywords').... 在这种情况下,如果你跟踪 ...

  10. 论4.1loli模拟赛

    论如何合理的挂.... T1: 后缀数组+找规律...没了,别的就没什么了.... T2: 树链剖分+lca....没了, 别的没什么了..... T3: 平衡树可过..然后数据有两组错的... 实际 ...