【基础组件11】hdfs与hbase
一、Hbase 简介
hdfs 是分布式文件系统, 只支持在文件层面的增、删除、改(需要把文件下载下来,改完,再上传上去)、查
hbase 是支持海量数据存储的NoSql数据库,基于hdfs的,支持数据的增、删、改、查,支持随机写数据(改指定的某一条数据)
hbase 查询数据只能根据rowkey进行检索
namespace ——命名空间:相当于数据库名,一个命名空间下可以有多张表
二、Hbase的表结构、存储原理
Bigtable,————高表、宽表,支持海量数据的存储
rowkey,————行键,在一张表中是唯一的,插入一行数据必须要有rowkey
列族——包含多个列,一个列族存为一个文件, 纵向切割
Region————横向的切片,数据量大时,会把一张表横向切割成, 多个Region, 一个region存一个文件
三、hbase的物理存储结构
查询返回的数据是时间戳大的版本。
时间戳大的版本类型为delete, 则不返回该条数据。
四、基本概念
namespace ——命名空间:相当于数据库名,一个命名空间下可以有多张表
五、Hbase 基本架构
HMaster: 管理表的增删改,监控regionserver状态,调度region,DDL
RegionServer:管理数据的增删改,DML
启动Hbase: 需先启动zookeeper, hdfs
六、Hbase 集群部署
参考:https://www.bilibili.com/video/av65548392?p=7
七、hbase的启动、停止
启动HMaster :
./hbase-daemon.sh start master
启动regionserver :
./hbase=daemon.sh start regionserver
启动集群:
./start-hbase.sh
七、hbase shell 命令
help
表的增、删、改、查
1.创建表
create ‘student‘,‘info‘
create ‘student‘,‘info‘,‘work‘
说明:‘表名’,‘列族1’,‘列族2’
2.查看表
list
说明:列出所有表
describe ‘student‘
说明:查看表结构,有哪些列族,保存几个版本
3.修改表
数据的增、删、改、查
命名空间的增、删、改、查