Packages

c

com.here.platform.data.processing.java.impl.compiler

ConcreteIncrementalDepCompiler

final class ConcreteIncrementalDepCompiler[T, CarryOver, W <: IncrementalDepCompiler[T, CarryOver]] extends ConcreteDepCompiler[T, W] with IncrementalDepCompilerWrapper[T, CarryOver, W]

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ConcreteIncrementalDepCompiler
  2. IncrementalDepCompilerWrapper
  3. IncrementalDepCompiler
  4. ConcreteDepCompiler
  5. DepCompilerWrapper
  6. InputPartitionerWrapper
  7. WrapperInputLayers
  8. OutputPartitionerWrapper
  9. WrapperOutputLayers
  10. Wrapper
  11. DepCompiler
  12. InputPartitioner
  13. InputLayers
  14. DepCompilerBase
  15. OutputPartitioner
  16. OutputLayers
  17. AnyRef
  18. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ConcreteIncrementalDepCompiler(impl: W)(implicit arg0: ClassTag[T])

Type Members

  1. type DepGraph = RDD[(InKey, OutKey)]

    The input/output dependencies in the following form: as first key com.here.platform.data.processing.compiler.InKey, the input partition key, as value com.here.platform.data.processing.compiler.OutKey, the output partition key that depends on the input.

    The input/output dependencies in the following form: as first key com.here.platform.data.processing.compiler.InKey, the input partition key, as value com.here.platform.data.processing.compiler.OutKey, the output partition key that depends on the input. In case one input partition originates dependencies to multiple outputs, each must be represented as single entry in this RDD with the same com.here.platform.data.processing.compiler.InKey as key.

    Definition Classes
    DepCompiler
  2. type IntermediateResult = RDD[(OutKey, T)]

    The values calculated as part of the dependencies that are provided for each com.here.platform.data.processing.compiler.OutKey.

    The values calculated as part of the dependencies that are provided for each com.here.platform.data.processing.compiler.OutKey. In case one output partition receives multiple values, these must be represented as multiple entries in this RDD with the same com.here.platform.data.processing.compiler.OutKey as key.

    Definition Classes
    DepCompilerBase
  3. type ToCompile = RDD[(OutKey, Iterable[T])]

    The aggregated Ts for each com.here.platform.data.processing.compiler.OutKey provided as input of compilation.

    The aggregated Ts for each com.here.platform.data.processing.compiler.OutKey provided as input of compilation.

    Definition Classes
    DepCompilerBase

Value Members

  1. implicit object intermediateToScala extends ScalaConvertible[T, T] with Serializable
    Attributes
    protected
    Definition Classes
    ConcreteDepCompiler
  2. implicit object iterableToJava extends JavaConvertible[Iterable[T], Iterable[T]] with Serializable
    Attributes
    protected
    Definition Classes
    ConcreteDepCompiler
  3. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def ##(): Int
    Definition Classes
    AnyRef → Any
  5. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  8. def compileIn(inDataScala: InData, subDepGraphScala: DepGraph, carriedOver: CarryOver, parallelism: Int): IntermediateResult

    Return the dependency values for a subset of the dependencies.

    Return the dependency values for a subset of the dependencies.

    The subset of dependencies has the form of a pruned dependency graph. It is guaranteed that, if an com.here.platform.data.processing.compiler.OutKey is present in the subgraph, every com.here.platform.data.processing.compiler.InKey corresponding to that com.here.platform.data.processing.compiler.OutKey in the complete dependency graph are present in the subgraph as well.

    carriedOver

    opaque value carried over from the updateDepGraph function

    parallelism

    the parallelism of both the input and the output RDDs. This parameter is normally needed to get partitioners from com.here.platform.data.processing.compiler.InputOptPartitioner and/or from com.here.platform.data.processing.compiler.OutputOptPartitioner traits

    returns

    the dependency values equivalent to the one produced by com.here.platform.data.processing.compiler.DepCompiler.compileIn and later pruned to only the com.here.platform.data.processing.compiler.OutKeys present in the subgraph

    Definition Classes
    ConcreteIncrementalDepCompilerIncrementalDepCompiler
    Note

    it's responsibility of this function to produce dependency values that are equivalent to the one produced by com.here.platform.data.processing.compiler.DepCompiler.compileIn if invoked on the full input dataset and then filtered to select the subset of output values corresponding to the subgraph. Failure to do so will results in invalid/inconsistent data committed to the output catalog.

    ,

    please note and follow the RDD persistence policy described in com.here.platform.data.processing.driver.Executor

  9. def compileIn(inDataScala: InData, parallelism: Int): (DepGraph, IntermediateResult)

    Calculates the dependencies of the output partitions in terms of input partitions.

    Calculates the dependencies of the output partitions in terms of input partitions. These dependencies are aggregated and provided later to the compileOut call. This method is invoked in both full and incremental re-compile cases with the whole input catalog as input.

    parallelism

    the parallelism of both the input and the output RDDs. This parameter is normally needed to get partitioners from com.here.platform.data.processing.compiler.InputOptPartitioner and/or from com.here.platform.data.processing.compiler.OutputOptPartitioner traits

    returns

    the input/output dependencies and the values for each of them. Returned graph must be partitioned by inPartitioner and the intermediate result by com.here.platform.data.processing.compiler.OutputPartitioner.outPartitioner for optimal performances.

    Definition Classes
    ConcreteDepCompilerDepCompiler
    Note

    please note and follow the RDD persistence policy described in com.here.platform.data.processing.driver.Executor

  10. def compileOut(toCompileScala: ToCompile, parallelism: Int): ToPublish

    Compiles partitions and returns actual compiled data, if any.

    Compiles partitions and returns actual compiled data, if any. This method is invoked in both full and incremental re-compile cases.

    The required behaviour for this method is to return exactly the same number of elements, with the same values for the out keys, as were passed in toCompile.

    parallelism

    the parallelism of both the input and the output RDDs. This parameter is normally needed to get partitioners from com.here.platform.data.processing.compiler.InputOptPartitioner and/or from com.here.platform.data.processing.compiler.OutputOptPartitioner traits

    returns

    com.here.platform.data.processing.compiler.OutKey is the key of compiled partition. com.here.platform.data.processing.blobstore.Payload is the output data, if any. The returned keys shall be partitioned as specified in com.here.platform.data.processing.compiler.OutputPartitioner, so it is expected that this function keeps using this partitioner passed in the input otherwise the produced data is shuffled and this must be avoided (and enforced)

    Definition Classes
    ConcreteDepCompilerDepCompilerBase
  11. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  12. def equals(o: Any): Boolean
    Definition Classes
    Wrapper → AnyRef → Any
  13. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  14. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  15. def hashCode(): Int
    Definition Classes
    Wrapper → AnyRef → Any
  16. val impl: W
  17. def inLayers: Map[Id, Set[Id]]

    Represents layers of the input catalogs that you should query and provide to the compiler.

    Represents layers of the input catalogs that you should query and provide to the compiler. These layers are grouped by input catalog and identified by catalog ID and layer ID.

    Definition Classes
    WrapperInputLayersInputLayers
  18. def inPartitioner(parallelism: Int): Partitioner[InKey]

    Specifies the partitioner to use when querying the input catalogs.

    Specifies the partitioner to use when querying the input catalogs.

    parallelism

    The number of partitions the partitioner should partition the catalog into, this should match the parallelism of the Spark RDD containing the input partitions.

    returns

    The input partitioner with the parallelism specified.

    Definition Classes
    InputPartitionerWrapperInputPartitioner
  19. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  20. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  21. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  22. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  23. final val outCatalogId: Id

    Identifier for the output catalog.

    Identifier for the output catalog.

    Definition Classes
    OutputLayers
  24. def outLayers: Set[Id]

    Layers to be produced by the compiler.

    Layers to be produced by the compiler.

    Definition Classes
    WrapperOutputLayersOutputLayers
  25. def outPartitioner(parallelism: Int): Partitioner[OutKey]

    Specifies the partitioner to use when querying the output catalog and producing output data.

    Specifies the partitioner to use when querying the output catalog and producing output data.

    parallelism

    The number of partitions the partitioner should partition the catalog into, this should match the parallelism of the Spark RDD containing the output partitions.

    returns

    The output partitioner with the parallelism specified.

    Definition Classes
    OutputPartitionerWrapperOutputPartitioner
  26. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  27. def toString(): String
    Definition Classes
    Wrapper → AnyRef → Any
  28. def updateDepGraph(inDataScala: InData, inChangesScala: InChanges, prevDepGraphScala: DepGraph, parallelism: Int): (DepGraph, CarryOver)

    Update the dependency graph of the previous run given what is changed in the input.

    Update the dependency graph of the previous run given what is changed in the input.

    parallelism

    the parallelism of both the input and the output RDDs. This parameter is normally needed to get partitioners from com.here.platform.data.processing.compiler.InputOptPartitioner and/or from com.here.platform.data.processing.compiler.OutputOptPartitioner traits

    returns

    the updated complete dependency graph, it must be equivalent to the one produced by com.here.platform.data.processing.compiler.DepCompiler.compileIn. In addition, an opaque value is returned and later provided to the compileIn function defined in the IncrementalDepCompiler. Returned graph must be partitioned by inPartitioner

    Definition Classes
    ConcreteIncrementalDepCompilerIncrementalDepCompiler
    Note

    it's responsibility of this function to produce a dependency graph that is equivalent to the one produced by com.here.platform.data.processing.compiler.DepCompiler.compileIn if invoked on the full input dataset. Failure to do so will results in invalid/inconsistent data committed to the output catalog.

    ,

    please note and follow the RDD persistence policy described in com.here.platform.data.processing.driver.Executor

  29. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  30. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  31. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()

Inherited from IncrementalDepCompilerWrapper[T, CarryOver, W]

Inherited from IncrementalDepCompiler[T, CarryOver]

Inherited from ConcreteDepCompiler[T, W]

Inherited from DepCompilerWrapper[T, W]

Inherited from InputPartitionerWrapper[W]

Inherited from WrapperInputLayers[W]

Inherited from OutputPartitionerWrapper[W]

Inherited from WrapperOutputLayers[W]

Inherited from Wrapper[W]

Inherited from DepCompiler[T]

Inherited from InputPartitioner

Inherited from InputLayers

Inherited from DepCompilerBase[T]

Inherited from OutputPartitioner

Inherited from OutputLayers

Inherited from AnyRef

Inherited from Any

Ungrouped