java
文章平均质量分 51
巴氏旅人
这个作者很懒,什么都没留下…
展开
-
向ApplicationMasterService注册AppAttempt
向ApplicationMasterService注册AppAttempt代码清单:public void ApplicationMasterService.registerAppAttempt(ApplicationAttemptId attemptId) { AllocateResponse response = recordFactory.newRecordIns...原创 2018-11-23 10:57:42 · 417 阅读 · 0 评论 -
基于Yarn的应用程序提交流程图
原创 2018-11-23 18:06:10 · 307 阅读 · 0 评论 -
AM启动--ApplicationMasterLauncher(五)
ApplicationMasterLauncher/** * ApplicationMasterLauncher即是一个服务,也是一个事件处理器,它处理AMLauncherEventType类型的事件,该类型事件有两种,分别是请求启动一个ApplicationMaster的LAUNCH事件和请求清理一个ApplicationMaster的CLEANUP事件. *ApplicationMas...原创 2018-12-04 13:06:28 · 566 阅读 · 0 评论 -
AM启动--AMLauncher(六)
AMLauncherpublic class AMLauncher implements Runnable {...省略...@SuppressWarnings("unchecked") public void run() { switch (eventType) { case LAUNCH: try { LOG.info(&原创 2018-12-04 13:08:03 · 682 阅读 · 0 评论 -
ScheduleTransition(详见9)
ScheduleTransition@VisibleForTesting public static final class ScheduleTransition implements MultipleArcTransition<RMAppAttemptImpl, RMAppAttemptEvent, RMAppAttemptState&原创 2018-11-27 14:25:59 · 274 阅读 · 0 评论 -
CapacityScheduler --ApplicationMaster资源分配
CapacityScheduler --ApplicationMaster资源分配   资源分配是被动分配的方式,在数原创 2018-11-30 17:01:15 · 1243 阅读 · 0 评论 -
AM启动--ContainerStartedTransition(一)
ContainerStartedTransition单纯,代码清单:private static final class ContainerStartedTransition extends BaseTransition { @Override public void transition(RMContainerImpl container, RMContaine...原创 2018-11-30 17:25:56 · 246 阅读 · 0 评论 -
AM启动--AMContainerAllocatedTransition(二)
AMContainerAllocatedTransition主要逻辑步骤:     1.用sc原创 2018-12-03 13:32:52 · 415 阅读 · 0 评论 -
AM启动--StoreAppAttemptTransition(三)
StoreAppAttemptTransition     1.将AppAttempt状态存储到共享存储系统  &原创 2018-12-03 13:37:06 · 180 阅读 · 0 评论 -
AM启动--AttemptStoredTransition(四)
AttemptStoredTransition主要逻辑步骤:    1.将在AttemptStartedTransition中创建的ClientToken记录到ClientToAMTokenSecretManagerInRM的列表masterKeys中 &n原创 2018-12-03 13:52:17 · 173 阅读 · 0 评论 -
AttemptStartedTransition(详见7)
AttemptStartedTransition主要逻辑:向ApplicationMasterService注册AppAttempt触发SchedulerEventType.APP_ATTEMPT_ADDED事件代码清单private static final class AttemptStartedTransition extends BaseTransition { @Over...原创 2018-11-23 10:47:39 · 212 阅读 · 0 评论 -
StartAppAttemptTransition(详见6)
StartAppAttemptTransition单纯,上代码清单,主要逻辑:创建RMAppAttemptRMAppImpl会维护一个ApplicationAttemptId, RMAppAttempt的映射表触发RMAppStartAttemptEvent (RMAppAttemptEventType.START)事件private static final class Start...原创 2018-11-23 10:39:38 · 301 阅读 · 0 评论 -
SchedulerApplication类图
原创 2018-11-22 18:20:19 · 132 阅读 · 0 评论 -
rmAppManager.submitApplication详解(详见1)
rmAppManager.submitApplication详解submitApplication功能简要说明:创建RMAppImpl,然后将RMAppImpl放入ApplicationAclsManager触发RMAppEventType.START事件代码清单@SuppressWarnings("unchecked&原创 2018-11-20 15:48:24 · 1068 阅读 · 0 评论 -
RMAppNewlySavingTransition(详见2)
经过RMAppNewlySavingTransition后,RMApp的状态由NEW转为NEW_SAVING.根据提交上下文创建应用程序状态数据结构(主要是提交时间,启动事件,提交上下文,提交用户等),然后触发RMStateStoreEventType.STORE_APP事件,STORE_APP事件处理器会把应用程序数据存储到ZK上.原创 2018-11-20 15:49:07 · 207 阅读 · 0 评论 -
Capacity Scheduler--APP_ATTEMPT_ADDED事件的处理(详见8)
Capacity Scheduler简述Capacity Scheduler1.应用程序初始化  &原创 2018-11-23 17:50:54 · 692 阅读 · 0 评论 -
ApplictionId的生成
ApplictionId的生成ApplicationId主要包括两部分:clusterTimestamp和id.是在客户端提交应用程序前,随着rpc方法getNewJobID获取jobId时生成的.而JobID只是applicationId的简单包装.其中clusterTimestamp是ResourceManager的启动时间.而id是一个递增的整数类型.clusterTimestamp...原创 2018-11-22 15:51:21 · 598 阅读 · 0 评论 -
StoreAppTransition(详见3)
StoreAppTransition单纯,直接上代码清单private static class StoreAppTransition implements MultipleArcTransition<RMStateStore, RMStateStoreEvent, RMStateStoreState> { @Ove原创 2018-11-22 15:52:23 · 294 阅读 · 0 评论 -
AddApplicationToSchedulerTransition(详见4)
AddApplicationToSchedulerTransition单纯,直接上代码清单: private static final class AddApplicationToSchedulerTransition extends RMAppTransition { @Override public void transition(RMAppImpl app, ...原创 2018-11-22 17:59:38 · 289 阅读 · 1 评论 -
Capacity Scheduler--APP_ADDED事件的处理(详见5)
Capacity Scheduler简述Capacity Scheduler1.应用程序初始化  &原创 2018-11-22 18:00:00 · 384 阅读 · 1 评论 -
MRAppMaster启动Task步骤简述
MRAppMaster启动Container步骤简述步骤1:MRAppMaster启动后,会为应用程序创建JobImpl,然后根据Map Task和Reduce Task的数量创建对应的TaskImpl.  然后是启动job,创建与Map Task和Reduce Task的同数量的TaskAttemptImpl(TaskAttemptImpl的实现有MapTaskAttemptIm...原创 2018-12-08 16:53:45 · 677 阅读 · 0 评论