1. 进入HBase 的控制端(可以在任意一台机器上启动,只要其配置和HMaster 的配置一样): hbase shell

进入后,出现类似下面的提示符:   hbase(main):002:0>

2.  输入 help , 可以列出所有的命令。

得到某个命令的详细用法: help "create"

注: 在 shell 中如果输错不能通过 ’Backspace‘ 撤消,需要同时按 ’Ctrl‘ 才可以

名称 命令表达式
查看存在哪些表 list
创建表 create '表名称', '列簇名称1','列簇名称2','列簇名称3'
添加记录 put '表名称', 'row_key', '列簇名称1:列名称', '值'
查看记录 get '表名称', '行名称'
查看表中的记录总数 count '表名称'
删除记录 delete '表名' ,'行名称' , '列名称'
删除一张表 先要屏蔽该表,才能对该表进行删除,第一步 disable '表名称' 第二步 drop '表名称'
查看所有记录 scan "表名称"
查看某个表某个列中所有数据 scan "表名称" , ['列名称:']
查看表的信息 desc '表名'
更新记录 就是重写一遍进行覆盖

注意: 创建表的时候,可以只指定列簇名称,官方建议最多3个列簇。列名在添加记录的时候可以动态添加。

示例:创建表: create 'tablename', 'columnFamilyName'
   e.g.  create 'student', 'baseinfo'  -- 创建一张名为'student'的表,'baseinfo'是列族名, 一个列族包含多个列

插入数据:  put 'student', 'myrow-1', 'baseinfo:name', 'shj'   --'myrow-1' 是行键,全表唯一
         put 'student', 'myrow-2', 'baseinfo:name', 'Rose'
         put 'student', 'myrow-2', 'baseinfo:age', '18'
        
查询表记录:   scan 'student'
            get 'student', 'myrow-2'
            
删除某单元格:  delete 'student','myrow-2','baseinfo:age'

删除表:   disable 'student'  -- 需要先disable表
        drop 'student'

3. 创建一张表: create 't_student', 'cf1'

从下图中,我们可以看到在 HDFS 上,会在 /hbase/data/default/ (/hbase 是在配置文件里指定的)下面创建一个文件夹。

上面的一长串的字符的文件夹,对应 的就是这个 table 中的一个 Region

4. 点击进入HDFS 中的那个文件夹后,里面有一个 cf1 的文件夹,这是我们创建表时定义的列簇的名称。

5. 在 HBase shell 中往表里插入数据

put 't_student', '007', 'cf1:name', 'bangde'

此时,在 cf1 文件夹下还是看不到数据,因为数据是先存在 MemStore 中的,可以通过下面的命令,使其写到 HDFS

flush 't_student'

6. 再次插入一些数据,然后 flush,会看到 cf1 下会多出文件,而不是修改原来的文件。

7.  运行下面的命令,可以合并多个小文件。

major_compact 't_student'

8. 退出 shell:   exit

9. 查看如下文件中的内容 。直接输入 hbase (bin 目录已加入到环境变量下), 会提示相关的命令。其中有个 hfile 的命令。 输入 hbase hfile,会得到 hfile 这个命令的帮助。最终可以知道查看文件中的记录的命令是:

hbase hfile -f /hbase/data/default/t_student/b38eaa1dec1613777adb6086f22a83af/cf1/ec70debc257743849615b06561b6c389 -p

HBase 命令简介的更多相关文章

  1. Hadoop 之Hbase命令

    一.常用命令:(hbase shell 进入终端) 1.创建表: create 'users','user_id','address','info' 表users,有三个列族user_id,addre ...

  2. Hbase总结(一)-hbase命令,hbase安装,与Hive的区别,与传统数据库的区别,Hbase数据模型

    Hbase总结(一)-hbase命令 下面我们看看HBase Shell的一些基本操作命令,我列出了几个常用的HBase Shell命令,如下: 名称 命令表达式 创建表 create '表名称', ...

  3. hbase命令备忘

    http://www.cnblogs.com/linjiqin/archive/2013/03/08/2949339.html HBase 为用户提供了一个非常方便的使用方式, 我们称之为“HBase ...

  4. mac终端命令简介

    mac终端命令简介(适合刚刚入手mac的新人们) 1.取得root权限 意义相当与windows中的超级管理员权限,甚至还要超出.root权限可以修改系统中的任何文件,不过对普通用户的意义不大,了解即 ...

  5. linux中的strings命令简介2

    摘自:http://blog.csdn.net/stpeace/article/details/46641069 linux中的strings命令简介 之前我们聊过linux strings的用法和用 ...

  6. linux中的strings命令简介

    摘自:http://blog.csdn.net/stpeace/article/details/46641069 linux中的strings命令简介 在linux下搞软件开发的朋友, 几乎没有不知道 ...

  7. Ansible(二) - 配置及命令简介

    Ⅰ. Ansible Inventory Hosts文件配置 # mkdir /etc/ansible # touch /etc/ansible/hosts # cat /etc/hosts 127. ...

  8. Centos下grep命令简介

    grep命令简介 grep 是一个最初用于Unix操作系统的命令行工具.在给出文件列表或标准输入后,grep会对匹配一个或多个正则表达式的文本进行搜索,并只输出匹配(或者不匹配)的行或文本. grep ...

  9. [HBase_3] HBase 命令

    0. 说明 1. HBase 命令 1.1 HBase 与 SQL 的区别 1.2 合并 HBase 中的小文件 major_compact 'test:t1' 1.3 删除数据的区别 HBase 在 ...

随机推荐

  1. PHP基础陷阱题(变量赋值)

    PHP基础陷阱题代码,需要的朋友可以参考下   复制代码 代码如下: <?php $a=3; $b=6; if($a=5||$b=7){ $a++; $b++; } var_dump($a, $ ...

  2. Compilation error 未完待续

    1. code.cpp:1:21: fatal error: iostream : No such file or directory #include< iostream > ^ com ...

  3. 如何在MySQL中查询当前数据上一条和下一条的记录

    如果ID是主键或者有索引,可以直接查找: 方法一: 查询上一条记录的SQL语句(如果有其他的查询条件记得加上other_conditions以免出现不必要的错误): select * from tab ...

  4. mongodb与mysql的命令对比

    mongodb与mysql命令对比 传统的关系数据库一般由数据库(database).表(table).记录(record)三个层次概念组成,MongoDB是由数据库(database).集合(col ...

  5. PPAS数据库备份与恢复

    PPAS数据库备份不同于普通的Postgresql数据库的备份,因为PPAS数据库是兼容Oracle数据库的,所以会涉及到同义词.包.存储过程等,这个时候用Postgresql社区的备份与恢复工具时, ...

  6. loj517 计算几何瞎暴力

    在序列上维护4个操作 1.在序列的尾端添加x 2.输出Al~Ar的和 3.将所有数异或x 4.将序列从小到大排序 第一眼看上去是Splay于是头铁硬刚了一发 后来发现splay没法异或 去百度“维护异 ...

  7. 洛谷3384&bzoj1036树链剖分

    值得注意的是: 一个点的子树是存在一起的...也就是说我们修改子树的时候只用... /********************************************************* ...

  8. 转载 : 10大H5前端框架

    原文作者: http://www.cnblogs.com/kingboy2008/p/5261771.html 作为一名做为在前端死缠烂打6年并且懒到不行的攻城士,这几年我还是阅过很多同门从知名到很知 ...

  9. ES6学习之Iterator和For...of循环

    一.Iterator(它是一种接口,为各种不同的数据结构提供统一的访问机制.Iterator 接口主要供for...of消费) 默认Iterator接口(默认的 Iterator 接口部署在数据结构的 ...

  10. JS 数组的一些方法

    1.push() //可以接受任意参数,然后添加到数组的末尾 2.pop()//栈方法,在数组末尾删除一条数据,并且返回这条数据 3.shift()//队列方法,与pop()相似,但是与其相反,在数组 ...