I
- Vertex id typeV
- Vertex value typeE
- Edge value typeM
- Message typeWV
- Worker value typeWM
- Worker message typeS
- Execution stage typepublic abstract class AbstractPiece<I extends org.apache.hadoop.io.WritableComparable,V extends org.apache.hadoop.io.Writable,E extends org.apache.hadoop.io.Writable,M extends org.apache.hadoop.io.Writable,WV,WM extends org.apache.hadoop.io.Writable,S> extends Object implements Block
Modifier and Type | Class and Description |
---|---|
class |
AbstractPiece.InnerVertexReceiver
Inner class to provide clean use without specifying types
|
class |
AbstractPiece.InnerVertexSender
Inner class to provide clean use without specifying types
|
Constructor and Description |
---|
AbstractPiece() |
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object obj) |
void |
forAllPossiblePieces(Consumer<AbstractPiece> consumer)
Calls consumer for each Piece:
- in no particular order
- potentially calling multiple times on same Piece
- even if Piece might never be returned in the iterator
- it will be called at least once for every piece that is
going to be returned by iterator
Can be used for static analysis/introspection of the block,
without actually executing them.
|
abstract MessageClasses<I,M> |
getMessageClasses(ImmutableClassesGiraphConfiguration conf)
Returns MessageClasses definition for messages being sent by this Piece.
|
PieceCount |
getPieceCount()
How many pieces are in this block.
|
VertexReceiver<I,V,E,M> |
getVertexReceiver(BlockWorkerReceiveApi<I> workerApi,
S executionStage)
Override to do vertex receive processing.
|
abstract AbstractPiece.InnerVertexSender |
getWrappedVertexSender(BlockWorkerSendApi<I,V,E,M> workerApi,
S executionStage)
Add automatic handling of reducers to getVertexSender.
|
int |
hashCode() |
Iterator<AbstractPiece> |
iterator()
Create iterator representing all pieces needed to be executed
in this block.
|
void |
masterCompute(BlockMasterApi masterApi,
S executionStage)
Function that is called on master, after send phase, before receive phase.
|
S |
nextExecutionStage(S executionStage)
Override to provide different next execution stage for
Pieces that come after it.
|
void |
registerAggregators(BlockMasterApi masterApi)
Deprecated.
Use registerReducers instead.
|
String |
toString() |
void |
workerContextReceive(BlockWorkerContextReceiveApi workerContextApi,
S executionStage,
WV workerValue,
List<WM> workerMessages)
Override to have worker context receive computation.
|
void |
workerContextSend(BlockWorkerContextSendApi<I,WM> workerContextApi,
S executionStage,
WV workerValue)
Override to have worker context send computation.
|
abstract void |
wrappedRegisterReducers(BlockMasterApi masterApi,
S executionStage)
Add automatic handling of reducers to registerReducers.
|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
forEach, spliterator
public abstract void wrappedRegisterReducers(BlockMasterApi masterApi, S executionStage)
public abstract AbstractPiece.InnerVertexSender getWrappedVertexSender(BlockWorkerSendApi<I,V,E,M> workerApi, S executionStage)
public void workerContextSend(BlockWorkerContextSendApi<I,WM> workerContextApi, S executionStage, WV workerValue)
public void masterCompute(BlockMasterApi masterApi, S executionStage)
public void workerContextReceive(BlockWorkerContextReceiveApi workerContextApi, S executionStage, WV workerValue, List<WM> workerMessages)
public VertexReceiver<I,V,E,M> getVertexReceiver(BlockWorkerReceiveApi<I> workerApi, S executionStage)
public abstract MessageClasses<I,M> getMessageClasses(ImmutableClassesGiraphConfiguration conf)
public S nextExecutionStage(S executionStage)
@Deprecated public void registerAggregators(BlockMasterApi masterApi) throws InstantiationException, IllegalAccessException
public final Iterator<AbstractPiece> iterator()
Block
iterator
in interface Iterable<AbstractPiece>
iterator
in interface Block
public void forAllPossiblePieces(Consumer<AbstractPiece> consumer)
Block
forAllPossiblePieces
in interface Block
public PieceCount getPieceCount()
Block
getPieceCount
in interface Block
Copyright © 2011-2020 The Apache Software Foundation. All Rights Reserved.