11 2018 档案

摘要:在我的博文《HBase——HMaster启动之一》、《HBase——HMaster启动之二》中已经详细介绍过HMaster在启动过程中调用的各种方法。下面,单就HRegionServer在启动过程中与HMaster的交互做一下深入分析。 首先,让我们来到HRegionServer.run,由于其也是 阅读全文
posted @ 2018-11-18 22:56 letsfly 阅读(4705) 评论(0) 推荐(1)
摘要:紧接着上一节HMaster的构建完成。接下来会调用HMaster调用master.start(),master.join()。 由HMaster的继承关系,很明显,他是Runnable的子类。也就是说,在调用其start方法时,run方法被调用。 下面,让我们来到HMaster.run方法。这里的涉 阅读全文
posted @ 2018-11-17 23:28 letsfly 阅读(1245) 评论(3) 推荐(1)
摘要:首先,让我们来到HMaster的main方法。我们今天的流程就从这里开始。 我们需要注意,下图所示的tool的类型就是HMasterCommandLine。 接下来,让我们来到HMasterCommandLine.run方法 在HMasterCommandLine.startMaster方法开始,有 阅读全文
posted @ 2018-11-17 22:34 letsfly 阅读(2880) 评论(0) 推荐(0)
摘要:我们从HRegion.flushcache开始分析。由于这个过程还是比较复杂的,因此,在这一节,我们不会分析的太过详细,只是单单的介绍一下其大体流程,待大家有了整体的把握之后,我们将在下一节详细介绍其持久化的具体流程。 为了尽可能严谨的描述整个流程,小编在讲解过程中会贴比较多的图来描述。 好了,闲话 阅读全文
posted @ 2018-11-13 00:04 letsfly 阅读(667) 评论(0) 推荐(0)
摘要:hbase中相关命令行操作在服务端都是由相应的Procedure来执行完成的,并不是一个单独的操作,而是由其状态机中的一系列状态按照流程来完成的。特别的,我这次本着有图有真相的原则来为大家分析这一流程。 这次,我们主要分析hbase在HMaster的初始化方法finishActiveMasterIn 阅读全文
posted @ 2018-11-11 16:22 letsfly 阅读(1001) 评论(0) 推荐(1)
摘要:hbase的客户端代码并不想hive一样用java编写,shell调用,而是使用ruby编写。 在admin.rb文件中方法create,其中接受两个参数,其中第二个参数类型为变长参数。 而在create方法的最后,调用了admin.createTable,其中的admin是hbaes.rb初始化时 阅读全文
posted @ 2018-11-04 09:05 letsfly 阅读(1092) 评论(0) 推荐(0)
摘要:hbase的客户端代码并不想hive一样用java编写,shell调用,而是使用ruby编写。 在admin.rb文件中方法create,其中接受两个参数,其中第二个参数类型为变长参数。 而在create方法的最后,调用了admin.createTable,其中的admin是hbaes.rb初始化时 阅读全文
posted @ 2018-11-03 22:40 letsfly 阅读(522) 评论(0) 推荐(0)
摘要:首先分析hbase中对于master协议的调用: 在ConnectionImplementation的方法getKeepAliveMasterService被调用时,会通过MasterServiceStubMaker.makeStub()方法构建成员变量masterServiceState.stub 阅读全文
posted @ 2018-11-02 10:17 letsfly 阅读(1341) 评论(0) 推荐(1)