ml.shifu.guagua.master
类 AsyncMasterCoordinator<MASTER_RESULT extends Bytable,WORKER_RESULT extends Bytable>
java.lang.Object
ml.shifu.guagua.BasicCoordinator<MASTER_RESULT,WORKER_RESULT>
ml.shifu.guagua.master.AbstractMasterCoordinator<MASTER_RESULT,WORKER_RESULT>
ml.shifu.guagua.master.AsyncMasterCoordinator<MASTER_RESULT,WORKER_RESULT>
- 类型参数:
MASTER_RESULT - master result for computation in each iteration.WORKER_RESULT - worker result for computation in each iteration.
- 所有已实现的接口:
- MasterInterceptor<MASTER_RESULT,WORKER_RESULT>, org.apache.zookeeper.Watcher
public class AsyncMasterCoordinator<MASTER_RESULT extends Bytable,WORKER_RESULT extends Bytable>
- extends AbstractMasterCoordinator<MASTER_RESULT,WORKER_RESULT>
AsyncMasterCoordinator is used to as a barrier for each iteration.
For each iteration, AsyncMasterCoordinator will wait until all workers are done.
To start a new iteration, AsyncMasterCoordinator will write a znode for each iteration like
'/_guagua/job_201312041304_189025/master/{currentIteration}' with with MasterComputable result as its data.
This is like a signal to notify workers.
Workers are waiting on current master znode, if got current master znode, it will start another iteration.
| 从接口 org.apache.zookeeper.Watcher 继承的嵌套类/接口 |
org.apache.zookeeper.Watcher.Event |
| 从类 ml.shifu.guagua.BasicCoordinator 继承的方法 |
checkAndSetZooKeeper, closeZooKeeper, getAppNode, getBaseMasterElectionNode, getBytesFromZNode, getCurrentMasterNode, getCurrentMasterSplitNode, getCurrentWorkerNode, getCurrentWorkerSplitNode, getLastMasterNode, getLastWorkerNode, getMasterBaseNode, getMasterElectionNode, getMasterNode, getMasterSerializer, getRootNode, getSleepTime, getWorkerBaseNode, getWorkerBaseNode, getWorkerNode, getWorkerSerializer, getZkConnLatch, getZooKeeper, initialize, isFixedTime, setBytesToZNode, setFixedTime, setMasterSerializer, setSleepTime, setWorkerSerializer, setZooKeeper, startHeartbeat, stopHeartBeat |
| 从类 java.lang.Object 继承的方法 |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
workerInitLock
protected ProgressLock workerInitLock
- Lock is used to check register info from all workers.
workerIterationLock
protected ProgressLock workerIterationLock
- Lock is used to check iteration info from all workers.
AsyncMasterCoordinator
public AsyncMasterCoordinator()
process
public void process(org.apache.zookeeper.WatchedEvent event)
- 指定者:
- 接口
org.apache.zookeeper.Watcher 中的 process - 覆盖:
- 类
BasicCoordinator<MASTER_RESULT extends Bytable,WORKER_RESULT extends Bytable> 中的 process
getCurrentIteration
public int getCurrentIteration()
setCurrentIteration
public void setCurrentIteration(int currentIteration)
getAppId
public String getAppId()
setAppId
public void setAppId(String appId)
preApplication
public void preApplication(MasterContext<MASTER_RESULT,WORKER_RESULT> context)
- 从接口
MasterInterceptor 复制的描述
- The hook point for each application or each mapreduce job which is before all iterations started.
preIteration
public void preIteration(MasterContext<MASTER_RESULT,WORKER_RESULT> context)
- 从接口
MasterInterceptor 复制的描述
- The hook point for each iteration which is before
MasterComputable.compute(MasterContext).
Copyright © 2014. All Rights Reserved.