码迷,mamicode.com
首页 > 其他好文 > 详细

hbase learning

时间:2018-07-20 23:03:24      阅读:221      评论:0      收藏:0      [点我收藏+]

标签:了解   dfs   组成   文件   数据信息   通过   zookeeper   恢复   服务器管理   

万万没想到,促使我填坑的居然是学习HBase,之前听分享的时候知道它是一个kv型的数据库就没有多了解,现在才开始学习。

hbase和bigtable很像,入门看起来也不太难#flag #下面是对于我看的一个介绍的翻译and理解:

hbase的结构组件

  物理上,hbase是一个三种服务构成的主从式的结构,Region服务器管理数据的读写,当接收数据的时候,客户和HBase Region服务器直接通信,Region的分配和DDL操作由Master管理,Zookeeper是HDFS的一部分,维护集群的工作状态。

  Hadoop数据块储存着Region服务器管理的数据,所有的hbase文件都存在HDFS文件里面,(Region server)Rser由HDFS datanode组成,hbase数据在被写入时是是本地的,然而当region被移动(move),直到压缩前都不是(我认为这句的意思是,写入的东西在压缩前并未更改到hadoop数据块中,所以压缩前,数据块都不是最新的,那段数据存在写入的机器上)

  “The NameNode”维护所有存储文件的数据块的元数据信息

Region 

  hbase表被按行的范围分成了regions,一个region包括表中的一段行,regions被分配到集群中的块上,叫做region servers,它管理数据的读写,一个Rser可以管理1000regions (regions != regions servers regions = many region)

Hbase Hmaster

  管理Region分配,ddl操作。

  对以下负责:

    协调Rser

    - 分配regions当启动、regions重新分配、负载均衡

    - 监听集群中所有Rser状态(从ZK接受通知)

    管理者行为

    - 有创建、删除、更新表的接口

 ZooKeeper:协调者

  hbase使用zk做一个分布式协调服务,用来维护集群中的服务状态,zk维护可用、安在的服务器,并且提供服务失效通知,zk使用"共识"来保证共同的共享状态,通常三五个共识(共识是,多个zk进行判断,讨论后给出结论)

组件如何一起work

  zk被用来协调分享分布式系统中的成员状态信息,Rser和活着的master和zk保持会话,zk建立一个临时节点通过心跳信息维护会话

  每个Rser都创造一个临时节点,master监听这些点来发现可用Rser和GGRser,hmaster争夺创建临时点,ZK认可第一个让它做master,它和zk发心跳信息,GG的hmaster监听okmaterGG的通知

  如果一个Rser或者okmaster没有发心跳,回话就会关闭,临时节点就会被删除,监听者会广播删除点,okmaster会听Rser,会恢复GGRser,GGmaster会监听okmaster,如果okmasterGG了,GGmaster会变ok(没说是否还要抢,应该是)

  

hbase learning

标签:了解   dfs   组成   文件   数据信息   通过   zookeeper   恢复   服务器管理   

原文地址:https://www.cnblogs.com/rayrayrainrain/p/9343941.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!