数据存储和交互Hbase

Hbase内核的原理和机制

列式存储

1.概念: 列式存储-以列为单位聚合数据 Hbase以列式存储的格式在磁盘存储数据
2.目的: 高效的检索和更新
3.基于这样的假设: 
  对于特定的查询,不是所有的值都是必须的,尤其是在分析型数据库中,所以减少I/O
  基于列式存储更恶意大幅度提高压缩比,有利于返回结果时降低带宽的消耗
4.使用场景:
  比较适合键值对的数据存储以及有序数据的存储

Hbase基本介绍

基本概念
 数据模型  存储模型  物理模型  压缩
 读写性能  原子的操作-读-写-修改
 加锁 等待 死锁  
 负载均衡 故障恢复
组件:
  主服务器 Region服务器 客户端
  分布式协调器: Zookeeper
构成:
  表 Table 
  列簇 column family
  行 Row    rowkey
  列 column
  单元格 cell  时间戳 timestamp
  region
操作:
   没有提供查询数据的特定域语言,比如没有提供SQL语言
   API: 创建表/增加列族   删除表/删除列族  修改表和列族元数据  查找
底层原理:
  文件结构: HFile 文件
            MemStore
  预写日志 Write-ahead log  WAL
  删除标记

Hbase详细介绍

 基本命令:  list  put get scan  delete disable drop  exit
 批量处理
 行锁: row lock  Bytes类
 高级特性: filter comparator
 设计
 1.行键设计:Row key设计
   高表 tall-narrow table
   宽表 flat-wide table
  处理方式:
     将行键时间序列
     将行键随机化
 2.版本管理

Hbase配置

 选择操作系统、文件系统,运行模型
 1.配置Hbase: conf/hbase-env.sh
              conf/hbase-site.xml
 2.集群监控

 3.性能优化
    分配区缓存
    垃圾回收优化
	压缩 snappy
	优化拆分和合并 
	    region热点

Hbase数据结构

Hbase中使用 LSM树 Log-Structure Merge Tree 。 相关使用Btree 以及 B+tree 查找和传输
HFile 文件格式

版权声明:本文为ytwang原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/ytwang/p/13780534.html