
大数据
文章平均质量分 87
隔壁老杨hongs
1949年我被捕了,第一天我没招,第二天我还是没招,第三天敌人用美人计我招了,第四天我还想招,解放了.
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
UserScan的处理流程分析
UserScan的处理流程分析 前置说明 Userscan是通过client或cp中发起的scanner操作。 在Scan中通过caching属性来返回可以返回多少条数据,每次进行next时。 通过batch属性来设置每次在rs端每次next kv时,可读取多少个kv,(在同一行的情况下) 在生成Scan实例时,最好是把family与column都设...2014-04-25 16:46:55 · 449 阅读 · 0 评论 -
HBASE REGIONSERVER启动过程
HBASEHRegionServer启动分析regionserver的启动入口是HRegionServer.main方法生成HRegionServercommandLine实例,并执行doMain方法,此方法中通过ToolRunner.run去调用HRegionServercommandLine.run方法a.判断传入参数是start还是stop,如果是start,调用HRe...原创 2014-04-12 20:49:47 · 324 阅读 · 0 评论 -
hbase0.96.1 hmaster启动过程分析
HBASE HMASTER启动分析Hbase debug配置:找到hbase这个shell脚本文件,在对应的位置,如我要debugmaster,elif[ "$COMMAND" = "master" ] ; thenCLASS='org.apache.hadoop.hbase.master.HMaster'if[ "$1" != "stop" ] && [ ...2014-04-12 20:45:30 · 172 阅读 · 0 评论 -
关于Hbase的cache配置
关于Hbase的cache配置在hbase中的hfilecache中,0.96版本中新增加了bucket cache,bucket cache通过把hbase.offheapcache.percentage配置为0来启用,如果hbase.offheapcache.percentage的配置值大于0时,直接使用堆外内存来管理hbase的cache,通过把hfile.block.ca...2014-07-15 16:24:40 · 340 阅读 · 0 评论 -
hadoop-mapreduce中reducetask运行分析
ReduceTask的运行 Reduce处理程序中需要执行三个类型的处理, 1.copy,从各map中copy数据过来 2.sort,对数据进行排序操作。 3.reduce,执行业务逻辑的处理。 ReduceTask的运行也是通过run方法开始, 通过mapreduce.job.reduce.shuffle.consumer.plugin.c...2014-05-14 13:29:25 · 358 阅读 · 0 评论 -
hadoop-mapreduce中maptask运行分析
MapTask运行通过执行.run方法: 1.生成TaskAttemptContextImpl实例,此实例中的Configuration就是job本身。 2.得到用户定义的Mapper实现类,也就是map函数的类。 3.得到InputFormat实现类。 4.得到当前task对应的InputSplit. 5.通过InputFormat,得到对应的Rec...2014-05-13 12:48:31 · 180 阅读 · 0 评论 -
spark shuffle部分分析
spark shuffle流程分析 回到ShuffleMapTask.runTask函数 现在回到ShuffleMapTask.runTask函数中: override def runTask(context: TaskContext): MapStatus = { 首先得到要reduce的task的个数。 valnumOutputSplits...2014-05-09 13:37:38 · 209 阅读 · 0 评论 -
Task的执行过程分析
Task的执行过程分析 Task的执行通过Worker启动时生成的Executor实例进行, case RegisteredExecutor(sparkProperties) => logInfo("Successfully registered with driver") // Make this host instead of hostPort ...2014-05-08 12:32:00 · 285 阅读 · 0 评论 -
Spark中的Scheduler
Spark中的Scheduler scheduler分成两个类型,一个是TaskScheduler与其实现,一个是DAGScheduler。 TaskScheduler:主要负责各stage中传入的task的执行与调度。 DAGScheduler:主要负责对JOB中的各种依赖进行解析,根据RDD的依赖生成stage并通知TaskScheduler执行。 实例生...2014-05-03 21:23:35 · 194 阅读 · 0 评论 -
RDD的依赖关系
RDD的依赖关系 Rdd之间的依赖关系通过rdd中的getDependencies来进行表示, 在提交job后,会通过在 DAGShuduler.submitStage-->getMissingParentStages privatedef getMissingParentStages(stage: Stage): List[Stage] = { va...2014-05-03 01:39:03 · 149 阅读 · 0 评论 -
HMBASE的REGION分配
HMBASE的REGION分配Region assign分为meta的分配与userregion assign,同时包含hbase启动时与rs下线,因此从4个方面来说明regionassign启动时的metaregion assign针对master启动时的补充说明:Hmaster.run.finishInitialization方法中:得到WALs目录下所有子目录,如果...原创 2014-04-12 20:53:10 · 225 阅读 · 0 评论 -
region assign 流程补充说明
region assign的流程补充Master端:1.regionserver下线,zk中注册的rs节点下的server子路径session过期被删除, master触发RegionServerTracker.nodeDeleted监听事件,并调用ServerManager.expireServer2.把下线的server添加到deadServers列表中,同时从onlineServers列表...2014-04-12 20:54:28 · 167 阅读 · 0 评论 -
hbase region分配,RS下线处理
RS下线的regionassign上面在RS启动部分已经提到过,RS在zk中的地址注册为SESSION过期自动清理的路径(ephemeral)。在master中通过RegionServerTracker对rs进行监控,当rs在zk的session过期时间内没有向zk发送心跳。表示rs已经下线,会触发RegionServerTracker.nodeDeletedpublicvo...2014-04-12 20:56:12 · 173 阅读 · 0 评论 -
Major compaction时的scan操作
Major compaction时的scan操作 发起major compaction时,通过CompactSplitThread.CompactionRunner.run开始执行 -->region.compact(compaction, store)-->store.compact(compaction)--> CompactionContex...2014-04-24 16:14:38 · 218 阅读 · 0 评论 -
minor compaction时的scan操作分析
minor compaction时的scan操作分析 minor compaction时的scan主要是对store下的几个storefile文件进行合并,通常不做数据删除操作。 compaction的发起通过CompactSplitThread.requestCompactionInternal--> CompactSplitThread.Compacti...2014-04-23 14:00:19 · 204 阅读 · 0 评论 -
compact处理流程分析
compact处理流程分析 compact的处理与split相同,由client端与flush时检查发起。 针对compact还有一个在rs生成时生成的CompactionChecker线程定期去检查是否需要做compact操作 线程执行的间隔时间通过hbase.server.thread.wakefrequency配置,默认为10*1000ms Compa...2014-04-21 21:05:54 · 440 阅读 · 0 评论 -
region split流程分析
region split流程分析split region的发起主要通过client端调用regionserver.splitRegion或memstore.flsuh时检查并发起。 Client通过rpc调用regionserver的splitRegion方法client端通过HBaseAdmin.split传入region name与split point(切分的rowkey,...2014-04-19 16:37:10 · 188 阅读 · 0 评论 -
memstore的flush流程分析
memstore的flush流程分析memstore的flush发起主要从以下几个地方进行: a.在HRegionServer调用multi进行更新时,检查是否超过全局的memstore配置的最大值与最小值, 如果是,发起一个WakeupFlushThread的flush请求,如果超过全局memory的最大值,需要等待flush完成。 b.在HRegionServer进行数据...2014-04-18 15:57:53 · 298 阅读 · 0 评论 -
Hlog的相关处理流程不完全分析
Hlog的相关处理流程: 在对hbase中数据进行更新操作put/delete/append/increment操作时,记录操作日志供日志重播的相关处理。 Hlog的写入通过regionserver实例生成时生成的FSLog为的实例。 通过LogRoller线程定期去检查并删除过期的日志文件。 定期检查的时间间隔通过hbase.regionserver....2014-04-15 17:59:20 · 262 阅读 · 0 评论 -
hbase put 流程分析regionserver端
RegionServer端put数据流程分析: client端通过MultiServerCallable.call调用rs的rpc的multi方法。 regionServer实例ClientProtos.ClientService.BlockingInterface接口。 public MultiResponse multi(finalRpcC...2014-04-15 13:34:12 · 262 阅读 · 0 评论 -
hbase put 流程分析client端
数据写入(Put)处理流程分析:Put通过生成一个HTable实例,并调用其put方法时,的执行流程,此部分分析分为client与regionserver两个部分,client端:Htable.put-->doPut,如果是put一个list时,会迭代调用doPutprivatevoiddoPut(Put put) throws InterruptedIOExcept...2014-04-14 16:19:57 · 179 阅读 · 0 评论 -
日志重播分析
日志重播分析 Hbase的日志重播分为启动时的日志重播与rs下线时的日志重播操作。 通过hbase.master.distributed.log.replay来控制日志的split是在region的reopen前执行还是reopen后执行 如果是true表示在reopen后执行,否则相反 Rs下线时的日志重播分析 master监听下线...2014-04-13 16:42:55 · 340 阅读 · 0 评论 -
从wordcount分析spark提交job
从WordCount开始分析 编写一个例子程序 编写一个从HDFS中读取并计算wordcount的例子程序: package org.apache.spark.examples import org.apache.spark.SparkContext import org.apache.spark.SparkContext._ ...2014-05-02 12:51:37 · 200 阅读 · 0 评论 -
yarn中的cgroup调度
yarn中cgroup的调度原创 2016-09-22 12:00:38 · 4539 阅读 · 0 评论 -
spark的内存分配管理
这篇文章主要说明spark的两种内存分配管理的源代码,分析了1.6默认的统一内存管理与老版本中的静态内存管理的实现原创 2016-02-18 14:38:13 · 11333 阅读 · 0 评论 -
Hlog的相关处理流程不完全分析
Hlog的相关处理流程:在对hbase中数据进行更新操作put/delete/append/increment操作时,记录操作日志供日志重播的相关处理。Hlog的写入通过regionserver实例生成时生成的FSLog为的实例。通过LogRoller线程定期去检查并删除过期的日志文件。定期检查的时间间隔通过hbase.regionserver.logroll.period进行配置原创 2014-04-15 17:51:43 · 1515 阅读 · 0 评论 -
HMBASE的REGION分配
HMBASE的REGION分配Region assign分为meta的分配与userregion assign,同时包含hbase启动时与rs下线,因此从4个方面来说明regionassign启动时的metaregion assign针对master启动时的补充说明:Hmaster.run.finishInitialization方法中:得到WALs目录下所有子目录,如果W原创 2014-04-02 18:29:58 · 2290 阅读 · 0 评论 -
Spark中的Scheduler
Spark中的Schedulerscheduler分成两个类型,一个是TaskScheduler与其实现,一个是DAGScheduler。TaskScheduler:主要负责各stage中传入的task的执行与调度。DAGScheduler:主要负责对JOB中的各种依赖进行解析,根据RDD的依赖生成stage并通知TaskScheduler执行。实例生成TaskSchedule原创 2014-05-03 21:17:30 · 2309 阅读 · 0 评论 -
RDD的依赖关系
RDD的依赖关系Rdd之间的依赖关系通过rdd中的getDependencies来进行表示,在提交job后,会通过在DAGShuduler.submitStage-->getMissingParentStagesprivatedefgetMissingParentStages(stage: Stage): List[Stage] = {valmissing =newHash原创 2014-05-03 01:32:19 · 3274 阅读 · 0 评论 -
spark 启动job的流程分析
从WordCount开始分析编写一个例子程序编写一个从HDFS中读取并计算wordcount的例子程序:packageorg.apache.spark.examplesimportorg.apache.spark.SparkContextimportorg.apache.spark.SparkContext._objectWordCount{defm原创 2014-05-02 12:47:18 · 4612 阅读 · 1 评论 -
HBASE REGIONSERVER启动过程
HBASEHRegionServer启动分析regionserver的启动入口是HRegionServer.main方法生成HRegionServercommandLine实例,并执行doMain方法,此方法中通过ToolRunner.run去调用HRegionServercommandLine.run方法a.判断传入参数是start还是stop,如果是start,调用HRegio原创 2014-03-30 12:38:57 · 5054 阅读 · 0 评论 -
hbase put regionserver处理分析
RegionServer端put数据流程分析:client端通过MultiServerCallable.call调用rs的rpc的multi方法。regionServer实例ClientProtos.ClientService.BlockingInterface接口。publicMultiResponsemulti(finalRpcControllerrpc原创 2014-04-15 13:24:43 · 1340 阅读 · 5 评论 -
HBase put操作client端分析
数据写入(Put)处理流程分析:Put通过生成一个HTable实例,并调用其put方法时,的执行流程,此部分分析分为client与regionserver两个部分,client端:Htable.put-->doPut,如果是put一个list时,会迭代调用doPutprivatevoiddoPut(Putput)throwsInterruptedIOException,原创 2014-04-14 16:15:46 · 3634 阅读 · 0 评论 -
日志重播分析
日志重播分析Hbase的日志重播分为启动时的日志重播与rs下线时的日志重播操作。通过hbase.master.distributed.log.replay来控制日志的split是在region的reopen前执行还是reopen后执行如果是true表示在reopen后执行,否则相反Rs下线时的日志重播分析master监听下线master通过RegionServe原创 2014-04-13 16:41:51 · 1977 阅读 · 0 评论 -
hbase region分配,RS下线处理
RS下线的regionassign上面在RS启动部分已经提到过,RS在zk中的地址注册为SESSION过期自动清理的路径(ephemeral)。在master中通过RegionServerTracker对rs进行监控,当rs在zk的session过期时间内没有向zk发送心跳。表示rs已经下线,会触发RegionServerTracker.nodeDeletedpublicvoidn原创 2014-04-03 11:49:57 · 2358 阅读 · 0 评论 -
memstore的flush流程分析
memstore的flush流程分析memstore的flush发起主要从以下几个地方进行: a.在HRegionServer调用multi进行更新时,检查是否超过全局的memstore配置的最大值与最小值, 如果是,发起一个WakeupFlushThread的flush请求,如果超过全局memory的最大值,需要等待flush完成。 b.在HRegionServer进行数据更原创 2014-04-18 15:53:56 · 2540 阅读 · 3 评论 -
region split流程分析
region split流程分析原创 2014-04-19 16:37:18 · 2517 阅读 · 2 评论 -
关于Hbase的cache配置
关于Hbase的cache配置原创 2014-07-15 16:25:03 · 5495 阅读 · 0 评论 -
hadoop-mapreduce中reducetask运行分析
ReduceTask的运行Reduce处理程序中需要执行三个类型的处理,1.copy,从各map中copy数据过来2.sort,对数据进行排序操作。3.reduce,执行业务逻辑的处理。ReduceTask的运行也是通过run方法开始,通过mapreduce.job.reduce.shuffle.consumer.plugin.class配置shuffle的plugin,原创 2014-05-14 13:30:00 · 2001 阅读 · 0 评论 -
hadoop-mapreduce中maptask运行分析
MapTask运行通过执行.run方法:1.生成TaskAttemptContextImpl实例,此实例中的Configuration就是job本身。2.得到用户定义的Mapper实现类,也就是map函数的类。3.得到InputFormat实现类。4.得到当前task对应的InputSplit.5.通过InputFormat,得到对应的RecordReader。6.生成Re原创 2014-05-13 12:42:03 · 2814 阅读 · 0 评论