Hbase初窥
2017-11-02 本文已影响0人
Gallin_Qiu
Hbase能做什么
- 海量数据的存储
- 海量数据的查询
企业数据海量查询
项目需求功能
- 海量数据
- 实时查询
- 场景复杂
数据采集
sqoop(flume)
kettle
Hbase基本信息
- 企业用的比较多的版本0.98,0.98是针对hadoop 2.2编译的,需要替换jar包
- 只有表名和列簇,rowkey唯一
Hbase体系架构
Master
RegionServer
部署
- 安装解压后,配置文件再conf目录下
hbase-env.sh
hbase-site.xml
regionserver - 启动
start-hbase.sh
- 查看端口 60010 (如果发现Hadoop版本不对,需要手动更换jar包)
- 停止stop-hbase.sh
hbase shell使用
进入: hbase shell
查看表 :list
查看帮助 help 'command'
查看表信息 :describle tablename
只有插入和查询
插入:put 'tablename' '列簇' '列名' 'value'
查询:
- 依据rowkey进行查询 get
get 'tablename' '列簇'
- 范围查询:scan range
- scan
Hbase 物理模型
- table中的所有行都按照rowkey的字典序进行排序
- table在行的方向上分割为多个Region
- region是按照大小分割的,每个表开始时只有一个region随着数据增大增大
- region是分布式存储的最小单元
- 存储的最小单元是cell
Hbase 数据写入流程:
- put -》cell
- wal 预写日志
- memstore
- spool -》hdfs
总结:
1 查询时效:准实时,秒级别
2 基于HDFS:数据安全性,普通商用机即可
3 协作框架zookeeper
4 table:columnfamily,rowkey
5 列式存储 nosql=not only sql
region
默认情况下,会创建一个表,只有一个region
startkey:null
endkey:null