HBASE学习笔记-初步印象

HBASE概念:

  HBASE是一个分布式架构的数据库,通过对数据进行多层的分块打散储存。从而改写传统数据库的储存能力和读取速度。

 

HBASE的集群服务器:

  HBASE的集群主要分为Zookeeper集群,Master集群,RegionSever集群。

    Zookeeper集群:储存Table的Region地址,管理Master和RegionSever服务器间的操作。

    Master集群:进行建表,删表工作和分配Region(管理负载均衡,Split时,重新分配Region)

    RegionSever集群:储存真正数据的地方

 

数据储存模型:

  分块储存概念:

    1.Hbase的Table会按行进行Region的数据块划分。

    2.Region数据块会被分配给集群的各个(Regionsever)机器上面去。

    3.每个Regin块会再进行Store块划分,每个Store块拥有一个MenStore和0至多个StoreFile

  Region块的信息储存:

    HBase中有两张记录Region信息所在位置的特殊的Table,-ROOT-和.META.

    .META.:记录了各个用户表的Region信息,.META.本身可以有多个regoin,放在RegionSever中

    -ROOT-:记录了.META.表的Region信息,-ROOT-本身只有一个region,放在RegionSever中

    Zookeeper中记录了-ROOT-表的location

  Store块中储存的信息:

    RowKey:是Byte array,是表中每条记录的“主键”,方便快速查找,Rowkey的设计非常重要。

    Column Family:列族,拥有一个名称(string),包含一个或者多个相关列

    Column:属于某一个columnfamily,familyName:columnName,每条记录可动态添加

    Version Number:类型为Long,默认值是系统时间戳,可由用户自定义

    Value(Cell):Byte array

 

数据流程:

  创建、修改表:

    1.Client向Zookeeper发送创建表请求,Zookeeper记录日志后传递给HMaster。

    2.HMaster返回可以写入RegionSever给Zookeeper

    3.Zookeeper把创建的表和Regionsever的关系通过ROOT表和META表记录下来

    4.以后进行表操作则不用经过HMaster,直接从Zookeeper中获取对应的RegionSever地址

  操作表:

    1.Client向Zookeeper发送操作数据请求

    2.Zookeeper检查缓存中是否有目标表与RegionSever的关系

    3.从Zookeeper中抽取ROOT表和META表读取目标表与RegionSever的关系

    4.到对应的RegionSever中进行Hlog日志记录并找到对应的StoreFile进行数据操作

    5.把最后的Hlog和StoreFile储存到HDFS中

 

 

参考资料:

http://www.cnblogs.com/JemBai/archive/2012/07/21/2602432.html

http://www.uml.org.cn/sjjm/201212141.asp#6

http://www.csdn.net/article/2014-02-17/2818431-HDFS+MapReduce+Hbase

http://blog.csdn.net/woshiwanxin102213/article/details/17584043

http://www.cnblogs.com/hark0623/p/5571193.html

http://tangay.iteye.com/blog/736871

 

转载于:https://www.cnblogs.com/Yuppy-Lotr/p/6006665.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
hbase-client-project-2.4.16.jar是一个用于连接HBase数据库的Java客户端项目。HBase是一个分布式、面向列的NoSQL数据库,它可以存储大规模数据,并提供高可靠性和高性能的数据访问。而hbase-client-project-2.4.16.jar则是用来连接HBase数据库的Java客户端库。通过这个库,开发人员可以在Java应用中方便地访问HBase数据库,进行数据的读取、写入和管理操作。 hbase-client-project-2.4.16.jar库提供了丰富的API,使得开发人员可以编写简洁、高效的代码来操作HBase数据库。通过这个库,可以轻松地建立与HBase集群的连接,创建、删除表格,进行数据的增删改查等操作。此外,hbase-client-project-2.4.16.jar也提供了一些高级特性,比如支持过滤器、批量操作、数据版本控制等功能,让开发人员能够更加灵活地利用HBase数据库进行数据处理。 除此之外,hbase-client-project-2.4.16.jar还支持与HBase的安全认证和权限控制,可以保障数据访问的安全性。开发人员可以使用这个库来编写安全的Java应用,确保对HBase数据库的数据进行合法、受控的访问。 总之,hbase-client-project-2.4.16.jar是一个强大、灵活的Java客户端库,为开发人员提供了便捷的方式来连接、操作HBase数据库。无论是小规模的应用还是大规模的数据处理需求,它都能够满足开发人员的要求,帮助他们更有效地利用HBase数据库。 (字数: 258)

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值