Class CardinalityAggregator
- java.lang.Object
-
- org.elasticsearch.search.aggregations.BucketCollector
-
- org.elasticsearch.search.aggregations.Aggregator
-
- org.elasticsearch.search.aggregations.AggregatorBase
-
- org.elasticsearch.search.aggregations.metrics.MetricsAggregator
-
- org.elasticsearch.search.aggregations.metrics.NumericMetricsAggregator
-
- org.elasticsearch.search.aggregations.metrics.NumericMetricsAggregator.SingleValue
-
- org.elasticsearch.search.aggregations.metrics.cardinality.CardinalityAggregator
-
- All Implemented Interfaces:
java.io.Closeable
,java.lang.AutoCloseable
,org.apache.lucene.search.Collector
,Releasable
public class CardinalityAggregator extends NumericMetricsAggregator.SingleValue
An aggregator that computes approximate counts of unique values.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.elasticsearch.search.aggregations.metrics.NumericMetricsAggregator
NumericMetricsAggregator.MultiValue, NumericMetricsAggregator.SingleValue
-
Nested classes/interfaces inherited from class org.elasticsearch.search.aggregations.Aggregator
Aggregator.Parser, Aggregator.SubAggCollectionMode
-
-
Field Summary
-
Fields inherited from class org.elasticsearch.search.aggregations.AggregatorBase
collectableSubAggregators, context, DEFAULT_WEIGHT, name, parent, subAggregators
-
Fields inherited from class org.elasticsearch.search.aggregations.BucketCollector
NO_OP_COLLECTOR
-
-
Constructor Summary
Constructors Constructor Description CardinalityAggregator(java.lang.String name, ValuesSource valuesSource, int precision, SearchContext context, Aggregator parent, java.util.List<PipelineAggregator> pipelineAggregators, java.util.Map<java.lang.String,java.lang.Object> metaData)
-
Method Summary
Modifier and Type Method Description InternalAggregation
buildAggregation(long owningBucketOrdinal)
Build an aggregation for data that has been collected intobucket
.InternalAggregation
buildEmptyAggregation()
Build an empty aggregation.protected void
doClose()
Release instance-specific data.protected void
doPostCollection()
Can be overridden by aggregator implementation to be called back when the collection phase ends.LeafBucketCollector
getLeafCollector(org.apache.lucene.index.LeafReaderContext ctx, LeafBucketCollector sub)
Get aLeafBucketCollector
for the given ctx, which should delegate to the given collector.double
metric(long owningBucketOrd)
boolean
needsScores()
Most aggregators don't need scores, make sure to extend this method if your aggregator needs them.-
Methods inherited from class org.elasticsearch.search.aggregations.AggregatorBase
addRequestCircuitBreakerBytes, buildEmptySubAggregations, close, context, doPreCollection, getLeafCollector, metaData, name, parent, pipelineAggregators, postCollection, preCollection, preGetSubLeafCollectors, subAggregator, subAggregators, toString
-
Methods inherited from class org.elasticsearch.search.aggregations.Aggregator
descendsFromBucketAggregator
-
-
-
-
Constructor Detail
-
CardinalityAggregator
public CardinalityAggregator(java.lang.String name, ValuesSource valuesSource, int precision, SearchContext context, Aggregator parent, java.util.List<PipelineAggregator> pipelineAggregators, java.util.Map<java.lang.String,java.lang.Object> metaData) throws java.io.IOException
- Throws:
java.io.IOException
-
-
Method Detail
-
needsScores
public boolean needsScores()
Description copied from class:AggregatorBase
Most aggregators don't need scores, make sure to extend this method if your aggregator needs them.- Specified by:
needsScores
in interfaceorg.apache.lucene.search.Collector
- Overrides:
needsScores
in classAggregatorBase
-
getLeafCollector
public LeafBucketCollector getLeafCollector(org.apache.lucene.index.LeafReaderContext ctx, LeafBucketCollector sub) throws java.io.IOException
Description copied from class:AggregatorBase
Get aLeafBucketCollector
for the given ctx, which should delegate to the given collector.- Specified by:
getLeafCollector
in classAggregatorBase
- Throws:
java.io.IOException
-
doPostCollection
protected void doPostCollection() throws java.io.IOException
Description copied from class:AggregatorBase
Can be overridden by aggregator implementation to be called back when the collection phase ends.- Overrides:
doPostCollection
in classAggregatorBase
- Throws:
java.io.IOException
-
metric
public double metric(long owningBucketOrd)
- Specified by:
metric
in classNumericMetricsAggregator.SingleValue
-
buildAggregation
public InternalAggregation buildAggregation(long owningBucketOrdinal)
Description copied from class:Aggregator
Build an aggregation for data that has been collected intobucket
.- Specified by:
buildAggregation
in classAggregator
-
buildEmptyAggregation
public InternalAggregation buildEmptyAggregation()
Description copied from class:Aggregator
Build an empty aggregation.- Specified by:
buildEmptyAggregation
in classAggregator
-
doClose
protected void doClose()
Description copied from class:AggregatorBase
Release instance-specific data.- Overrides:
doClose
in classAggregatorBase
-
-