HBase源码分析之org.apache.hadoop.hbase.master.handler包
2013-05-15 13:47
549 查看
这个包下的主要是master提供的一些Executor线程池服务,供调用
ClosedRegionHandler,
如果表被disabled,删除zk上的unassigned 相关node, 从transition状态中删除;否则分配另外一个server。
CreateTableHandler,
在调用master上的接口创建Table时,可以指定splitkey,也可以不指定。
在zookeeper上table节点下创建节点
hdfs上创建表以及region目录,创建region,并插入到META表
分配regions到regionServer
设置zookeeper table节点下的该表为enable状态
DeleteTableHandler,
DisableTableHandler,
EnableTableHandler,
MetaServerShutdownHandler,
ModifyTableHandler,
OpenedRegionHandler,
region打开之后,做的一些清理工作,比如删除zookeeper上的unassigned下的region节点信息,同步AssignmentManager上的RegionState信息
ServerShutdownHandler
当server shutdown或者expire后,master监控到后,进行的一系列迁移region,log split 以及清理动作。
处理过程有,
对该server的HLog进行split log操作,
如果该server持有ROOT、META信息,那么对ROOT、META重新分配,直到META重新分配完成,
分配该server上原先持有的region
SplitRegionHandler,
已经完成了split的后续处理,比如更新AssignmentManger上的和该region以及daughters相关的缓存信息,删除zookeeper上的unassigned 下的当前region信息。
以下三个handler都是继承TableEventHandler
扫描META表,获取该表对应的regions信息
更新HDFS上的和内存中的table desc信息
如果当前该表处于enable状态,那么就重新打开所有的region。
TableAddFamilyHandler,
TableDeleteFamilyHandler,
TableModifyFamilyHandler
待完善和补充.....
ClosedRegionHandler,
如果表被disabled,删除zk上的unassigned 相关node, 从transition状态中删除;否则分配另外一个server。
CreateTableHandler,
在调用master上的接口创建Table时,可以指定splitkey,也可以不指定。
在zookeeper上table节点下创建节点
hdfs上创建表以及region目录,创建region,并插入到META表
分配regions到regionServer
设置zookeeper table节点下的该表为enable状态
DeleteTableHandler,
DisableTableHandler,
EnableTableHandler,
MetaServerShutdownHandler,
ModifyTableHandler,
OpenedRegionHandler,
region打开之后,做的一些清理工作,比如删除zookeeper上的unassigned下的region节点信息,同步AssignmentManager上的RegionState信息
ServerShutdownHandler
当server shutdown或者expire后,master监控到后,进行的一系列迁移region,log split 以及清理动作。
处理过程有,
对该server的HLog进行split log操作,
如果该server持有ROOT、META信息,那么对ROOT、META重新分配,直到META重新分配完成,
分配该server上原先持有的region
SplitRegionHandler,
已经完成了split的后续处理,比如更新AssignmentManger上的和该region以及daughters相关的缓存信息,删除zookeeper上的unassigned 下的当前region信息。
以下三个handler都是继承TableEventHandler
扫描META表,获取该表对应的regions信息
更新HDFS上的和内存中的table desc信息
如果当前该表处于enable状态,那么就重新打开所有的region。
TableAddFamilyHandler,
TableDeleteFamilyHandler,
TableModifyFamilyHandler
待完善和补充.....
相关文章推荐
- HBase源码分析之org.apache.hadoop.hbase.regionserver包
- Hbase源码分析之org.apache.hadoop.hbase.client包
- HBase源码分析之org.apache.hadoop.hbase.catalog包
- HBase源码分析之org.apache.hadoop.hbase.coprocessor包
- HBase源码分析之org.apache.hadoop.hbase.executor包
- HBase源码分析之org.apache.hadoop.hbase.filter包
- HBase源码分析之org.apache.hadoop.hbase.ipc包
- HBase源码分析之org.apache.hadoop.hbase.master包
- HBase源码分析之org.apache.hadoop.hbase.client.coprocessor包
- HBase 报错 ERROR: org.apache.hadoop.hbase.PleaseHoldException: Master is initializing
- hbase运行时ERROR:org.apache.hadoop.hbase.PleaseHoldException:Master is initializing的解决方法
- [hadoop源码阅读][6]-org.apache.hadoop.ipc-protocol和心跳分析
- hbase分布式部署问题之org.apache.hadoop.hbase.regionserver.HRegionServer: Unable to connect to master
- Hbase 启动报错 class org.apache.hadoop.hbase.master.HMaster
- [HBase] ERROR:org.apache.hadoop.hbase.PleaseHoldException: Master is initializing
- Hadoop重启,Hbase出现Master exiting的错误:org.apache.hadoop.hbase.master.HMasterCommandLine: Master exiting
- org.apache.hadoop.hbase.PleaseHoldException: Master is initializing解决方案
- org.apache.hadoop.hbase.PleaseHoldException: Master is initializing 的一种原因
- hadoop源码分析系列之(一)——org.apache.hadoop.conf包
- ERROR: org.apache.hadoop.hbase.PleaseHoldException: Master is initializing