----------------------------------------hbase的 安装----------------------------------------
本地安装:
1 解压文件夹。
2 修改 conf/hbase-site.xml ,配置 数据文件夹
<property>
----------------------------------------hbase的常见语法----------------------------------------
1 创建表 :
create 'test', 'cf'
2 插入一行: (一次只能插入一列,如果有多列 反复用这个rowkey 插入)
put 'test', 'row1', 'cf:a', 'value1'
4 查询一行
15 HRegion 把表中的数据进行横向切分(按照rowkey ,rowkey 连续的一部分放在一起的,有序的)。
16 HRegion 下面有多个 Store ,每一个 Store 代表一个 列族。如果这个表只有一个 cf 那么 就只有一个 store。(并且每一个 cf 的数据都存在同一个目录下)
17 store 分 2 种 ,一种叫做 memStore ,一种叫做 storeFile。
18 memStore 是数据刚 写入的时候在内存中。这时候就是在 memstore 里面。
19 当 memstore 触发溢写的时候 ,产生 storeFile ,每次溢写都产生一个新的 storeFile。
20 当系统的 storeFile 多到一定数量,就会触发合并压缩,产生更大的 单个 storeFile。
21 合并压缩分2 中,一种 辅助压缩( minor compaction),一种是主要压缩( major compaction )
22 只有 major compaction 才能版本合并和删除老版本数据。
23 当某个 region 的所有的 storeFile 大于 一定值的时候会吧自己分成2 个region,这个过程叫做裂变,并且 hmaster 会把其中一个region 分到合适的regionserver 上。
24 master 做的事情
1 为 region server 分配region。
2 负责 region server 的负载均衡(吧 region 分给 region 少的region server)
3 如果有 region server下线。那么在别的region server 上找到 这个 region server 上的 region ,并且重新复制这些region,并且分配各合适的 region server。
4 管理用户的 table的 增删改操作。
region server 做的事情
1 维护自己管理的region,处理这些region的io 请求
2 负责切片 运行过程中变得 过大的 region,这个过程叫做 region的 裂变。
25 HRegion 是hbase 中分布式存储和负载均衡的最小单元。 一个表的多个 region 可以在不同region server 上。
26 storeFile 是 以 Hfile 的格式存在hdfs 上的。
27 如果没有溢写 过,那么这时候 store 没有storeFile, 在 hdfs 上 就没有 数据。
28 hbase 数据模型