点一下关注吧!!!非常感谢!!持续更新!!!

目前已经更新到了:

  • Hadoop
  • HDFS
  • MapReduce
  • Hive
  • Flume
  • Sqoop
  • Zookeeper
  • HBase 正在···

章节内容

上一节我们完成了:

  • 集群的分发和配置
  • 集群的启动测试
  • HBaseShell的简单测试

背景介绍

这里是三台公网云服务器,每台 2C4G,搭建一个Hadoop的学习环境,供我学习。
之前已经在 VM 虚拟机上搭建过一次,但是没留下笔记,这次趁着前几天薅羊毛的3台机器,赶紧尝试在公网上搭建体验一下。

  • 2C4G 编号 h121
  • 2C4G 编号 h122
  • 2C2G 编号 h123

Hadoop-36 HBase 3节点云服务器集群 HBase Shell 增删改查 全程多图详细 列族 row key value filter_hadoop

启动Shell

上一节已经启动过了,这里为了完整性,也再写一次

hbase shell
  • 1.

Hadoop-36 HBase 3节点云服务器集群 HBase Shell 增删改查 全程多图详细 列族 row key value filter_hadoop_02

创建新表

创建新表:表名、字段、字段

create 'wzk', 'base_info', 'extra_info'
  • 1.

Hadoop-36 HBase 3节点云服务器集群 HBase Shell 增删改查 全程多图详细 列族 row key value filter_hadoop_03

插入数据

列族 name

  • 写入一条数据到 wzk 表
  • row key 为 rk1
  • base_info添加name列标示符值为 icu

我们执行下面的指令:

put 'wzk', 'rk1', 'base_info:name', 'icu'
  • 1.

Hadoop-36 HBase 3节点云服务器集群 HBase Shell 增删改查 全程多图详细 列族 row key value filter_hbase_04

列族 age

我们在 base_info 列中加入一个字段叫:age

put 'wzk', 'rk1', 'base_info:age', 30
  • 1.

多插入几条,这里是三条:

Hadoop-36 HBase 3节点云服务器集群 HBase Shell 增删改查 全程多图详细 列族 row key value filter_hadoop_05

列族 addr

  • 写入一条数据到 wzk 表
  • row key 为 rk1
  • extra_info添加address列标识符值为 Qingdao
put 'wzk', 'rk1', 'extra_info:address', 'Qingdao'
  • 1.

也是多插入几条数据,这里也是三条:

Hadoop-36 HBase 3节点云服务器集群 HBase Shell 增删改查 全程多图详细 列族 row key value filter_服务器_06

查询数据

根据 RowKey

查询的条件:表名、RowKey

get 'wzk', 'rk1'
  • 1.

执行后,可以看到我们刚才写入的数据如下:

Hadoop-36 HBase 3节点云服务器集群 HBase Shell 增删改查 全程多图详细 列族 row key value filter_zookeeper_07

列族查询

通过 RowKey 查询 base_info 列族的信息:

get 'wzk', 'rk1', 'base_info'
  • 1.

查询的结果如下:

Hadoop-36 HBase 3节点云服务器集群 HBase Shell 增删改查 全程多图详细 列族 row key value filter_zookeeper_08

列族name和age

通过 RowKey 查询 base_info 列族中的 name 和 age列

get 'wzk', 'rk1', 'base_info:name', 'base_info:age'
  • 1.

查询的结果如下:

Hadoop-36 HBase 3节点云服务器集群 HBase Shell 增删改查 全程多图详细 列族 row key value filter_服务器_09

多个列族

我们可以多加条件来实现多个列族的查询:

get 'wzk', 'rk1', 'base_info', 'extra_info'
  • 1.

查询的结果如下:

Hadoop-36 HBase 3节点云服务器集群 HBase Shell 增删改查 全程多图详细 列族 row key value filter_hadoop_10

条件过滤

这里使用的是 ValueFilter
我们使用的条件是 查询 当中有 “icu” 内容数据

get 'wzk', 'rk1', {FILTER => "ValueFilter(=, 'binary:icu')"}
  • 1.

查询出来的结果如下图:

Hadoop-36 HBase 3节点云服务器集群 HBase Shell 增删改查 全程多图详细 列族 row key value filter_zookeeper_11

更新数据

通过 RowKey 更新数据,更新 base_info 列族中的name为kang

put 'wzk', 'rk1', 'base_info:name', 'kang'
  • 1.

更新的结果如下图:

Hadoop-36 HBase 3节点云服务器集群 HBase Shell 增删改查 全程多图详细 列族 row key value filter_大数据_12

删除数据

delete 'wzk', 'rk1', 'base_info:name'
  • 1.

删除列族

alter 'wzk', 'delete' => 'base_info'
  • 1.

清空数据

truncate 'wzk'
  • 1.

删除表

disable 'wzk'
drop 'wzk'
  • 1.
  • 2.