All Implemented Interfaces:
Iterable<PhysicalOperator>, GraphValue<PhysicalOperator>, FragmentLeaf, FragmentRoot, HasAffinity, PhysicalOperator, Root, Store

public class Screen extends AbstractStore
  • Field Details

  • Constructor Details

  • Method Details

    • getOperatorAffinity

      public List<EndpointAffinity> getOperatorAffinity()
      Description copied from interface: HasAffinity
      Get the list of Endpoints with associated affinities that this operator has preference for.
      Returns:
      List of EndpointAffinity objects.
    • getMaxWidth

      public int getMaxWidth()
      Description copied from interface: Store
      The maximum allowable width for the Store operation. In some cases, a store operation has a limited number of parallelizations that it can support. For example, a Screen return cannot be parallelized at all. In this case, a maxWidth value of 1 will be returned. In the case that there is no limit for parallelization, this method should return Integer.MAX_VALUE.
      Returns:
      The maximum allowable width for the Store operation.
    • applyAssignments

      public void applyAssignments(List<CoordinationProtos.DrillbitEndpoint> endpoints) throws PhysicalOperatorSetupException
      Description copied from interface: Store
      Inform the Store node about the actual decided DrillbitEndpoint assignments desired for storage purposes. This is a precursor to the execution planner running a set of getSpecificStore() method calls for full Store node materialization.
      Parameters:
      endpoints - The list of endpoints that this Store node are going to be executed on.
      Throws:
      PhysicalOperatorSetupException
    • getSpecificStore

      public Store getSpecificStore(PhysicalOperator child, int minorFragmentId)
      Description copied from interface: Store
      Provides full materialized Store operators for execution purposes.
      Parameters:
      child - The child operator that this operator will consume from.
      minorFragmentId - The particular minor fragment id associated with this particular fragment materialization.
      Returns:
      A materialized Store Operator.
    • getEndpoint

    • toString

      public String toString()
      Overrides:
      toString in class Object
    • getNewWithChild

      protected PhysicalOperator getNewWithChild(PhysicalOperator child)
      Specified by:
      getNewWithChild in class AbstractSingle
    • accept

      public <T, X, E extends Throwable> T accept(PhysicalVisitor<T,X,E> physicalVisitor, X value) throws E
      Description copied from interface: PhysicalOperator
      Provides capability to build a set of output based on traversing a query graph tree.
      Specified by:
      accept in interface PhysicalOperator
      Overrides:
      accept in class AbstractStore
      Throws:
      E extends Throwable
    • getOperatorType

      public String getOperatorType()
    • getDistributionAffinity

      public DistributionAffinity getDistributionAffinity()
      Description copied from interface: HasAffinity
      Get distribution affinity which describes the parallelization strategy of the operator.
      Specified by:
      getDistributionAffinity in interface HasAffinity
      Overrides:
      getDistributionAffinity in class AbstractStore