public interface Exchange extends PhysicalOperator
| Modifier and Type | Interface and Description |
|---|---|
static class |
Exchange.ParallelizationDependency
Exchanges are fragment boundaries in physical operator tree.
|
| Modifier and Type | Method and Description |
|---|---|
PhysicalOperator |
getChild()
Return the feeding child of this operator node.
|
Exchange.ParallelizationDependency |
getParallelizationDependency()
Get the parallelization dependency of the Exchange.
|
Receiver |
getReceiver(int minorFragmentId)
Get the Receiver associated with the given minorFragmentId.
|
long |
getReceiverMemory(int receiverCount,
int senderCount)
Returns the memory requirement for the receiver side of the exchange operator.
|
ParallelizationInfo |
getReceiverParallelizationInfo(List<CoordinationProtos.DrillbitEndpoint> senderFragmentEndpoints)
Provide parallelization parameters for receiver side of the exchange.
|
Sender |
getSender(int minorFragmentId,
PhysicalOperator child)
Get the Sender associated with the given minorFragmentId.
|
long |
getSenderMemory(int receiverCount,
int senderCount)
Returns the memory requirement for the sender side of the exchange operator.
|
ParallelizationInfo |
getSenderParallelizationInfo(List<CoordinationProtos.DrillbitEndpoint> receiverFragmentEndpoints)
Provide parallelization parameters for sender side of the exchange.
|
void |
setupReceivers(int majorFragmentId,
List<CoordinationProtos.DrillbitEndpoint> receiverLocations)
Inform this Exchange node about its receiver locations.
|
void |
setupSenders(int majorFragmentId,
List<CoordinationProtos.DrillbitEndpoint> senderLocations)
Inform this Exchange node about its sender locations.
|
accept, getCost, getInitialAllocation, getMaxAllocation, getNewWithChildren, getOperatorId, getOperatorType, getSVMode, getUserName, isBufferedOperator, isExecutable, setCost, setMaxAllocation, setOperatorIdacceptforEach, iterator, spliteratorvoid setupSenders(int majorFragmentId,
List<CoordinationProtos.DrillbitEndpoint> senderLocations)
throws PhysicalOperatorSetupException
senderLocations - PhysicalOperatorSetupExceptionvoid setupReceivers(int majorFragmentId,
List<CoordinationProtos.DrillbitEndpoint> receiverLocations)
throws PhysicalOperatorSetupException
receiverLocations - PhysicalOperatorSetupExceptionSender getSender(int minorFragmentId, PhysicalOperator child) throws PhysicalOperatorSetupException
minorFragmentId - The minor fragment id, must be in the range [0, fragment.width).child - The feeding node for the requested sender.PhysicalOperatorSetupExceptionReceiver getReceiver(int minorFragmentId)
minorFragmentId - The minor fragment id, must be in the range [0, fragment.width).long getSenderMemory(int receiverCount,
int senderCount)
receiverCount - number of receivers at the receiving end of this exchange operator.senderCount - number of senders sending the rows for this exchange operator.long getReceiverMemory(int receiverCount,
int senderCount)
receiverCount - number of receivers receiving the rows sent by the sender side of this
exchange operator.senderCount - number of senders sending the rows.ParallelizationInfo getSenderParallelizationInfo(List<CoordinationProtos.DrillbitEndpoint> receiverFragmentEndpoints)
receiverFragmentEndpoints - Endpoints assigned to receiver fragment if available, otherwise an empty list.ParallelizationInfo.ParallelizationInfo getReceiverParallelizationInfo(List<CoordinationProtos.DrillbitEndpoint> senderFragmentEndpoints)
senderFragmentEndpoints - Endpoints assigned to receiver fragment if available, otherwise an empty listParallelizationInfo.PhysicalOperator getChild()
Exchange.ParallelizationDependency getParallelizationDependency()
Copyright © 2021 The Apache Software Foundation. All rights reserved.