public class DynamicIndexLookupJudgement<T extends org.locationtech.jts.geom.Geometry,U extends org.locationtech.jts.geom.Geometry> extends Object implements org.apache.spark.api.java.function.FlatMapFunction2<Iterator<U>,Iterator<T>,org.apache.commons.lang3.tuple.Pair<U,T>>, Serializable
Modifier and Type | Field and Description |
---|---|
protected org.apache.spark.util.LongAccumulator |
buildCount |
protected org.apache.spark.util.LongAccumulator |
candidateCount |
protected org.apache.spark.util.LongAccumulator |
resultCount |
protected org.apache.spark.util.LongAccumulator |
streamCount |
Constructor and Description |
---|
DynamicIndexLookupJudgement(SpatialPredicate spatialPredicate,
IndexType indexType,
JoinBuildSide joinBuildSide,
org.apache.spark.util.LongAccumulator buildCount,
org.apache.spark.util.LongAccumulator streamCount,
org.apache.spark.util.LongAccumulator resultCount,
org.apache.spark.util.LongAccumulator candidateCount) |
Modifier and Type | Method and Description |
---|---|
Iterator<org.apache.commons.lang3.tuple.Pair<U,T>> |
call(Iterator<U> leftShapes,
Iterator<T> rightShapes) |
protected boolean |
hasNextBase(List<? extends org.locationtech.jts.geom.Geometry> buildShapes,
Iterator<? extends org.locationtech.jts.geom.Geometry> streamShapes)
Iterator model for the nest loop join.
|
protected boolean |
hasNextBase(org.locationtech.jts.index.SpatialIndex spatialIndex,
Iterator<? extends org.locationtech.jts.geom.Geometry> streamShapes,
boolean buildLeft)
Iterator model for the index-based join.
|
protected void |
initPartition()
Looks up the extent of the current partition.
|
protected void |
log(String message,
Object... params) |
protected org.apache.commons.lang3.tuple.Pair<U,T> |
nextBase(List<? extends org.locationtech.jts.geom.Geometry> buildShapes,
Iterator<? extends org.locationtech.jts.geom.Geometry> streamShapes)
Iterator model for the nest loop join.
|
protected org.apache.commons.lang3.tuple.Pair<U,T> |
nextBase(org.locationtech.jts.index.SpatialIndex spatialIndex,
Iterator<? extends org.locationtech.jts.geom.Geometry> streamShapes,
boolean buildLeft)
Iterator model for the index-based join.
|
protected final org.apache.spark.util.LongAccumulator buildCount
protected final org.apache.spark.util.LongAccumulator streamCount
protected final org.apache.spark.util.LongAccumulator resultCount
protected final org.apache.spark.util.LongAccumulator candidateCount
public DynamicIndexLookupJudgement(SpatialPredicate spatialPredicate, IndexType indexType, JoinBuildSide joinBuildSide, org.apache.spark.util.LongAccumulator buildCount, org.apache.spark.util.LongAccumulator streamCount, org.apache.spark.util.LongAccumulator resultCount, org.apache.spark.util.LongAccumulator candidateCount)
JudgementBase
public Iterator<org.apache.commons.lang3.tuple.Pair<U,T>> call(Iterator<U> leftShapes, Iterator<T> rightShapes) throws Exception
call
in interface org.apache.spark.api.java.function.FlatMapFunction2<Iterator<U extends org.locationtech.jts.geom.Geometry>,Iterator<T extends org.locationtech.jts.geom.Geometry>,org.apache.commons.lang3.tuple.Pair<U extends org.locationtech.jts.geom.Geometry,T extends org.locationtech.jts.geom.Geometry>>
Exception
protected void initPartition()
Must be called before processing a partition. Must be called from the same instance that will be used to process the partition.
protected boolean hasNextBase(org.locationtech.jts.index.SpatialIndex spatialIndex, Iterator<? extends org.locationtech.jts.geom.Geometry> streamShapes, boolean buildLeft)
spatialIndex
- streamShapes
- buildLeft
- protected boolean hasNextBase(List<? extends org.locationtech.jts.geom.Geometry> buildShapes, Iterator<? extends org.locationtech.jts.geom.Geometry> streamShapes)
buildShapes
- streamShapes
- protected org.apache.commons.lang3.tuple.Pair<U,T> nextBase(org.locationtech.jts.index.SpatialIndex spatialIndex, Iterator<? extends org.locationtech.jts.geom.Geometry> streamShapes, boolean buildLeft)
spatialIndex
- streamShapes
- buildLeft
- protected org.apache.commons.lang3.tuple.Pair<U,T> nextBase(List<? extends org.locationtech.jts.geom.Geometry> buildShapes, Iterator<? extends org.locationtech.jts.geom.Geometry> streamShapes)
buildShapes
- streamShapes
- Copyright © 2023 The Apache Software Foundation. All rights reserved.