简而言之,Hbase就是一个建立在Hdfs文件系统上的数据库(mysql,orecle等),不同的是Hbase是针对列的数据库
Hbase和普通的关系型数据库区别如下:
Hbase有一些基本的术语,主键,列族,时间戳和存储单元:
一个行健有多个列族,每个列族下有不同的存储单元,可用看成类似键值对的方式,每一个版本都有一个时间戳,
Hbase下载之后,tar命令解压(解压前需先部署hadoop环境和java环境,本例子中使用的hadoop也是伪分布式)
之后找到hbase-env.sh文件,加上java路径:
在Hbase-site.xml下配置hbase的存储路径,可在官网上参考:
peoperty目录需要创建
如果用伪分布式则需要添加如下参数:
在regionservers文件下添加主机ip或者修改后的host名称,之后启动下列进程:
之后查看60010端口:
出现上述界面则成功。
搭建完成之后,会在hdfs上生成hbase目录,结构如下:
Region是HBase数据管理的基本呢单位。数据的move,数据的balance,数据的split,都是按照region来进行操作的。
region中存储这用户的真实数据,而为了管理这些数据,HBase使用了RegionSever来管理region。
每个table都有多个region,然后分别对应各个region servers
region达到一定大小就会分裂为两个
memStor在内存中,storeFile在文件中,当memstor达到128M的时候就会生成一个storefile,
通过shell进入hbase命令行:hbase shell,然后输入help出现指令集,根据指令集可以操作: