NoSQL 数据库 HBase
- 5.1HBase 原理
* - 5.1.1 HBase 概述
- 5.1.2 HBase 核心概念
- 5.1.3 HBase 的关键流程
- 5.2 HBase 伪分布式安装
* - 5.2.1 安装 HBase 的前提条件
- 5.2.2 解压并配置环境变量
- 5.2.3 配置 HBase 参数
- 5.2.4 验证 HBase
- 5.3 HBase Shell
* - 5.3.1 HBase Shell 常用命令
- 5.3.2 HBase Shell 综合示例
- 5.3.3 HBase Shell 全部命令

; 5.1HBase 原理
- 既可以存储结构化数据,也可以存储非结构化数据或半结构化数据
5.1.1 HBase 概述
HBase 是基于 Apache Hadoop 的面向列的 NoSQL 数据库,是 Google 的 BigTable 的开源实现。HBase 是一个针对半结构化数据的开源的、多版本的、可伸缩的、高可靠的、高性能的、分布式的和面向列的动态模式数据库。
5.1.2 HBase 核心概念
- HBase 是一个稀疏、多维度、有序的映射表。
表的每一行由一个或多个列族组成,一个列族中可以包含任意多个列。在同一个表模式下,每行所包含的列族是相同的,也就是说,列族的个数与名称都是相同的,但是每一行中的每个列族中列的个数可以不同,如图

- *数据模型的基本概念
Table
Row
Column
ColumnFamily
ColumnQualifier
Cell
Timestamp
- 表(Table)
- 行关键字
- 列关键字
- 列族
- 列限定符
- cell(单元格)
-
时间戳
-
两个视图
-
概念视图
- 物理视图

; 5.1.3 HBase 的关键流程
- Region的分配
- RegionSercer 上线
- RegionServer 下线
- Master 上线
- Master 下线
- 写请求处理过程
5.2 HBase 伪分布式安装
解压
配置环境变量
配置HBase参数
5.2.1 安装 HBase 的前提条件
Hadoop 已经安装并成功启动,如图:

; 5.2.2 解压并配置环境变量
- 解压
tar -xvf hbase-[版本号]-bin.tar.gz

- 配置环境变量
vi /etc/profile

- 使环境变量生效
source /etc/profile

5.2.3 配置 HBase 参数
- 配置hbase-env.sh
- 配置hbase-site.xml 添加以下内容
添加以下 代码
。
<configuration>
<property> <!--设置的是hdfs的文件目录-->
<name>hbase.rootdir</name>
<value>hdfs://master:8020/hbase</value>
</property>
<property> <!--集群模式,分布式true,单机模式false-->
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property> <!--zookeeper集群的URL配置-->
<name>hbase.zookeeper.quorum</name>
<value>master</value>
</property>
<property>
<name>zookeeper.znode.parent</name>
<value>/hbase</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/opt/zk_data</value>
</property>
</configuration>
5.2.4 验证 HBase
- 启动HBase
conf/start-hbase.sh

2. 启动 hbase shell 命令
hbase shell

- 输入list (显示所有表)

- 浏览器验证 [http://192.168.9.3:16010]

- 查看 HDFS 文件系统
hadoop fs -ls /

- HBase 进程
jps

以上执行全部成功则 hbase 安装完成并运行正常
5.3 HBase Shell
- HBase 为用户提供了一个非常方便的命令行使用方式——HBase Shell。
- HBase Shell 提供了大多数的 HBase 命令,通过 HBase Shell,用户可以方便地创建、删除及修改表,还可以向表中添加数据,列出表中的相关信息等。
5.3.1 HBase Shell 常用命令
- create 命令

- list 命令

- describe 命令
- put 命令

- get 命令

- scan 命令
- count 命令
- exists 命令
- 修改表结构

- delete 命令

delete all 'scores' //删除全部数据
- truncate 命令 (清空表中数据,保留表结构)
truncate 'scores'
- disable、drop 命令
// 彻底删除表中数据和表结构-->先disable再drop
disable 'scores'
drop 'scores'
- status 命令

- version 命令

5.3.2 HBase Shell 综合示例
- 根据row key 查询

- row key + 列族

- row key + 列族+列

- 查看时间戳

- 根据版本查询

- 根据时间戳查询

- 删除列

- 删除行
- 统计记录条数

- 清空表

; 5.3.3 HBase Shell 全部命令
help //列出全部的 hbase shell 命令
general、 ddl 、namespace、 dml 、tool…
Original: https://www.cnblogs.com/lang12/p/15361028.html
Author: Aurora*
Title: NoSQL 数据库 HBase
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/565851/
转载文章受原作者版权保护。转载请注明原作者出处!