Class ParentJoinAggregator
java.lang.Object
org.elasticsearch.search.aggregations.BucketCollector
org.elasticsearch.search.aggregations.Aggregator
org.elasticsearch.search.aggregations.AggregatorBase
org.elasticsearch.search.aggregations.bucket.BucketsAggregator
org.elasticsearch.join.aggregations.ParentJoinAggregator
- All Implemented Interfaces:
Closeable
,AutoCloseable
,org.apache.lucene.search.Collector
,org.elasticsearch.core.Releasable
,SingleBucketAggregator
- Direct Known Subclasses:
ChildrenToParentAggregator
,ParentToChildrenAggregator
public abstract class ParentJoinAggregator
extends BucketsAggregator
implements SingleBucketAggregator
An aggregator that joins documents based on global ordinals.
Global ordinals that match the main query and the
inFilter
query are replayed
with documents matching the outFilter
query.-
Nested Class Summary
Modifier and TypeClassDescriptionprotected static interface
Strategy for collecting the global ordinals of the join field in for all docs that match theParentJoinAggregator#inFilter
and then checking if which of the docs in theParentJoinAggregator#outFilter
also have the ordinal.protected class
Uses a dense, bit per ordinal representation of the join field in the docs that matchParentJoinAggregator#inFilter
.protected class
Uses a hashed representation of whether of the join field in the docs that matchParentJoinAggregator#inFilter
.Nested classes/interfaces inherited from class org.elasticsearch.search.aggregations.bucket.BucketsAggregator
BucketsAggregator.BucketBuilderForFixedCount<B extends Object>, BucketsAggregator.BucketBuilderForVariable<B extends Object>, BucketsAggregator.ResultBuilderForVariable<B extends Object>, BucketsAggregator.SingleBucketResultBuilder
Nested classes/interfaces inherited from class org.elasticsearch.search.aggregations.Aggregator
Aggregator.BucketComparator, Aggregator.Parser, Aggregator.SubAggCollectionMode
-
Field Summary
Fields inherited from class org.elasticsearch.search.aggregations.bucket.BucketsAggregator
docCountProvider
Fields inherited from class org.elasticsearch.search.aggregations.AggregatorBase
collectableSubAggregators, DEFAULT_WEIGHT, name, parent, subAggregators
Fields inherited from class org.elasticsearch.search.aggregations.BucketCollector
NO_OP_COLLECTOR
-
Constructor Summary
ConstructorDescriptionParentJoinAggregator
(String name, AggregatorFactories factories, AggregationContext context, Aggregator parent, org.apache.lucene.search.Query inFilter, org.apache.lucene.search.Query outFilter, ValuesSource.Bytes.WithOrdinals valuesSource, long maxOrd, CardinalityUpperBound cardinality, Map<String, Object> metadata) -
Method Summary
Modifier and TypeMethodDescriptionprotected void
doClose()
final LeafBucketCollector
void
protected void
prepareSubAggs
(long[] ordsToCollect) Methods inherited from class org.elasticsearch.search.aggregations.bucket.BucketsAggregator
bucketComparator, bucketDocCount, buildAggregationsForFixedBucketCount, buildAggregationsForSingleBucket, buildAggregationsForVariableBuckets, buildSubAggsForAllBuckets, buildSubAggsForBuckets, buildSubAggsForBuckets, close, collectBucket, collectExistingBucket, descendsFromGlobalAggregator, getDocCounts, grow, incrementBucketDocCount, maxBucketOrd, preGetSubLeafCollectors, resolveSortPath, rewriteBuckets
Methods inherited from class org.elasticsearch.search.aggregations.AggregatorBase
addRequestCircuitBreakerBytes, bigArrays, buildEmptySubAggregations, doPostCollection, doPreCollection, getLeafCollector, metadata, name, parent, pointReaderIfAvailable, preCollection, scoreMode, searcher, subAggregator, subAggregators, topLevelQuery, toString
Methods inherited from class org.elasticsearch.search.aggregations.Aggregator
buildAggregations, buildEmptyAggregation, buildTopLevel, collectDebugInfo, resolveSortPathOnValidAgg
-
Constructor Details
-
ParentJoinAggregator
public ParentJoinAggregator(String name, AggregatorFactories factories, AggregationContext context, Aggregator parent, org.apache.lucene.search.Query inFilter, org.apache.lucene.search.Query outFilter, ValuesSource.Bytes.WithOrdinals valuesSource, long maxOrd, CardinalityUpperBound cardinality, Map<String, Object> metadata) throws IOException- Throws:
IOException
-
-
Method Details
-
getLeafCollector
public final LeafBucketCollector getLeafCollector(LeafReaderContext ctx, LeafBucketCollector sub) throws IOException - Specified by:
getLeafCollector
in classAggregatorBase
- Throws:
IOException
-
postCollection
- Overrides:
postCollection
in classAggregatorBase
- Throws:
IOException
-
prepareSubAggs
- Overrides:
prepareSubAggs
in classBucketsAggregator
- Throws:
IOException
-
doClose
protected void doClose()- Overrides:
doClose
in classAggregatorBase
-