ml.shifu.guagua
类 BasicCoordinator<MASTER_RESULT extends Bytable,WORKER_RESULT extends Bytable>

java.lang.Object
  继承者 ml.shifu.guagua.BasicCoordinator<MASTER_RESULT,WORKER_RESULT>
类型参数:
MASTER_RESULT - master result for computation in each iteration.
WORKER_RESULT - worker result for computation in each iteration.
所有已实现的接口:
org.apache.zookeeper.Watcher
直接已知子类:
AbstractMasterCoordinator, AbstractWorkerCoordinator

public class BasicCoordinator<MASTER_RESULT extends Bytable,WORKER_RESULT extends Bytable>
extends Object
implements org.apache.zookeeper.Watcher

BasicCoordinator is a basic implementation for both SyncWorkerCoordinator and SyncMasterCoordinator:


嵌套类摘要
protected static class BasicCoordinator.BasicCoordinatorCommand
          BasicCoordinator.BasicCoordinatorCommand is to process exceptions for zookeeper operations.
protected static interface BasicCoordinator.CoordinatorCommand
          BasicCoordinator.CoordinatorCommand is used for consistent process of zookeeper coordination.
protected static class BasicCoordinator.RetryCoordinatorCommand
          BasicCoordinator.RetryCoordinatorCommand is used to wrap retry logic.
 
从接口 org.apache.zookeeper.Watcher 继承的嵌套类/接口
org.apache.zookeeper.Watcher.Event
 
字段摘要
protected static int WAIT_SLOT_MILLS
          Default waiting time to check master or worker progress from zookeeper servers.
 
构造方法摘要
BasicCoordinator()
           
 
方法摘要
protected  void checkAndSetZooKeeper(Properties props)
          Set up connection with given zookeeper settings.
protected  void closeZooKeeper()
           
protected  StringBuilder getAppNode(String appId)
           
protected  StringBuilder getBaseMasterElectionNode(String appId)
           
protected  byte[] getBytesFromZNode(String znode, String splitZnode)
          This is reverse method to setBytesToZNode(String, String, byte[], CreateMode).
protected  StringBuilder getCurrentMasterNode(String appId, int iteration)
           
protected  StringBuilder getCurrentMasterSplitNode(String appId, int iteration)
           
protected  StringBuilder getCurrentWorkerNode(String appId, String containerId, int iteration)
           
protected  StringBuilder getCurrentWorkerSplitNode(String appId, String containerId, int iteration)
           
protected  StringBuilder getLastMasterNode(String appId, int iteration)
           
protected  StringBuilder getLastWorkerNode(String appId, String containerId, int iteration)
           
protected  StringBuilder getMasterBaseNode(String appId)
           
protected  StringBuilder getMasterElectionNode(String appId, long sessionId)
           
protected  StringBuilder getMasterNode(String appId, int iteration)
           
 Serializer<MASTER_RESULT> getMasterSerializer()
           
protected  StringBuilder getRootNode()
           
 long getSleepTime()
           
protected  StringBuilder getWorkerBaseNode(String appId)
           
protected  StringBuilder getWorkerBaseNode(String appId, int iteration)
           
protected  StringBuilder getWorkerNode(String appId, String containerId, int iteration)
           
 Serializer<WORKER_RESULT> getWorkerSerializer()
           
 CountDownLatch getZkConnLatch()
           
 GuaguaZooKeeper getZooKeeper()
           
protected  void initialize(Properties props)
          Coordinator initialization.
 boolean isFixedTime()
           
 void process(org.apache.zookeeper.WatchedEvent event)
           
protected  boolean setBytesToZNode(String znode, String splitZnode, byte[] bytes, org.apache.zookeeper.CreateMode createNode)
          Set bytes to znode, if bytes is over zookeeper data limit(1MB), use children znodes to store each part.
 void setFixedTime(boolean isFixedTime)
           
 void setMasterSerializer(Serializer<MASTER_RESULT> masterSerializer)
           
 void setSleepTime(long sleepTime)
           
 void setWorkerSerializer(Serializer<WORKER_RESULT> workerSerializer)
           
 void setZooKeeper(GuaguaZooKeeper zooKeeper)
           
protected  void startHeartbeat()
           
protected  void stopHeartBeat()
           
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

字段详细信息

WAIT_SLOT_MILLS

protected static final int WAIT_SLOT_MILLS
Default waiting time to check master or worker progress from zookeeper servers.

另请参见:
常量字段值
构造方法详细信息

BasicCoordinator

public BasicCoordinator()
方法详细信息

getMasterBaseNode

protected StringBuilder getMasterBaseNode(String appId)

getMasterNode

protected StringBuilder getMasterNode(String appId,
                                      int iteration)

getCurrentMasterNode

protected StringBuilder getCurrentMasterNode(String appId,
                                             int iteration)

getCurrentMasterSplitNode

protected StringBuilder getCurrentMasterSplitNode(String appId,
                                                  int iteration)

getLastMasterNode

protected StringBuilder getLastMasterNode(String appId,
                                          int iteration)

getRootNode

protected StringBuilder getRootNode()

getBaseMasterElectionNode

protected StringBuilder getBaseMasterElectionNode(String appId)

getMasterElectionNode

protected StringBuilder getMasterElectionNode(String appId,
                                              long sessionId)

getAppNode

protected StringBuilder getAppNode(String appId)

getWorkerBaseNode

protected StringBuilder getWorkerBaseNode(String appId)

getWorkerBaseNode

protected StringBuilder getWorkerBaseNode(String appId,
                                          int iteration)

getWorkerNode

protected StringBuilder getWorkerNode(String appId,
                                      String containerId,
                                      int iteration)

getCurrentWorkerNode

protected StringBuilder getCurrentWorkerNode(String appId,
                                             String containerId,
                                             int iteration)

getCurrentWorkerSplitNode

protected StringBuilder getCurrentWorkerSplitNode(String appId,
                                                  String containerId,
                                                  int iteration)

getLastWorkerNode

protected StringBuilder getLastWorkerNode(String appId,
                                          String containerId,
                                          int iteration)

initialize

protected void initialize(Properties props)
Coordinator initialization.


checkAndSetZooKeeper

protected void checkAndSetZooKeeper(Properties props)
Set up connection with given zookeeper settings.


closeZooKeeper

protected void closeZooKeeper()
                       throws InterruptedException
抛出:
InterruptedException

startHeartbeat

protected void startHeartbeat()

stopHeartBeat

protected void stopHeartBeat()
                      throws InterruptedException
抛出:
InterruptedException

process

public void process(org.apache.zookeeper.WatchedEvent event)
指定者:
接口 org.apache.zookeeper.Watcher 中的 process

setBytesToZNode

protected boolean setBytesToZNode(String znode,
                                  String splitZnode,
                                  byte[] bytes,
                                  org.apache.zookeeper.CreateMode createNode)
                           throws org.apache.zookeeper.KeeperException,
                                  InterruptedException
Set bytes to znode, if bytes is over zookeeper data limit(1MB), use children znodes to store each part.

返回:
if result is split.
抛出:
org.apache.zookeeper.KeeperException
InterruptedException

getBytesFromZNode

protected byte[] getBytesFromZNode(String znode,
                                   String splitZnode)
                            throws org.apache.zookeeper.KeeperException,
                                   InterruptedException
This is reverse method to setBytesToZNode(String, String, byte[], CreateMode). Firstly get data from znode. If data is empty, get data from its children.

抛出:
org.apache.zookeeper.KeeperException
InterruptedException

getZooKeeper

public GuaguaZooKeeper getZooKeeper()

setZooKeeper

public void setZooKeeper(GuaguaZooKeeper zooKeeper)

getSleepTime

public long getSleepTime()

setSleepTime

public void setSleepTime(long sleepTime)

isFixedTime

public boolean isFixedTime()

setFixedTime

public void setFixedTime(boolean isFixedTime)

getWorkerSerializer

public Serializer<WORKER_RESULT> getWorkerSerializer()

setWorkerSerializer

public void setWorkerSerializer(Serializer<WORKER_RESULT> workerSerializer)

getMasterSerializer

public Serializer<MASTER_RESULT> getMasterSerializer()

setMasterSerializer

public void setMasterSerializer(Serializer<MASTER_RESULT> masterSerializer)

getZkConnLatch

public CountDownLatch getZkConnLatch()


Copyright © 2014. All Rights Reserved.