Package org.apache.datasketches.tuple
Class Union<S extends Summary>
- java.lang.Object
-
- org.apache.datasketches.tuple.Union<S>
-
-
Constructor Summary
Constructors Constructor Description Union(int nomEntries, SummarySetOperations<S> summarySetOps)
Creates new Union instance.Union(SummarySetOperations<S> summarySetOps)
Creates new Union instance with instructions on how to process two summaries that overlap.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CompactSketch<S>
getResult()
Gets the result of a sequence of stateful union operations as an unordered CompactSketchCompactSketch<S>
getResult(boolean reset)
Gets the result of a sequence of stateful union operations as an unordered CompactSketch.void
reset()
Resets the internal set to the initial state, which represents an empty set.void
union(Sketch thetaSketch, S summary)
Performs a stateful union of the internal set with the given thetaSketch by combining entries using the hashes from the theta sketch and summary values from the given summary.void
union(Sketch<S> tupleSketch)
Performs a stateful union of the internal set with the given tupleSketch.CompactSketch<S>
union(Sketch<S> tupleSketch, Sketch thetaSketch, S summary)
Perform a stateless, pair-wise union operation between a tupleSketch and a thetaSketch.CompactSketch<S>
union(Sketch<S> tupleSketchA, Sketch<S> tupleSketchB)
Perform a stateless, pair-wise union operation between two tuple sketches.
-
-
-
Constructor Detail
-
Union
public Union(SummarySetOperations<S> summarySetOps)
Creates new Union instance with instructions on how to process two summaries that overlap. This will have the default nominal entries (K).- Parameters:
summarySetOps
- instance of SummarySetOperations
-
Union
public Union(int nomEntries, SummarySetOperations<S> summarySetOps)
Creates new Union instance.- Parameters:
nomEntries
- nominal entries (K). Forced to the nearest power of 2 greater than given value.summarySetOps
- instance of SummarySetOperations
-
-
Method Detail
-
union
public CompactSketch<S> union(Sketch<S> tupleSketchA, Sketch<S> tupleSketchB)
Perform a stateless, pair-wise union operation between two tuple sketches. The returned sketch will be cut back to the smaller of the two k values if required.Nulls and empty sketches are ignored.
- Parameters:
tupleSketchA
- The first argumenttupleSketchB
- The second argument- Returns:
- the result ordered CompactSketch on the heap.
-
union
public CompactSketch<S> union(Sketch<S> tupleSketch, Sketch thetaSketch, S summary)
Perform a stateless, pair-wise union operation between a tupleSketch and a thetaSketch. The returned sketch will be cut back to the smaller of the two k values if required.Nulls and empty sketches are ignored.
- Parameters:
tupleSketch
- The first argumentthetaSketch
- The second argumentsummary
- the given proxy summary for the theta sketch, which doesn't have one. This may not be null.- Returns:
- the result ordered CompactSketch on the heap.
-
union
public void union(Sketch<S> tupleSketch)
Performs a stateful union of the internal set with the given tupleSketch.- Parameters:
tupleSketch
- input tuple sketch to merge with the internal set.Nulls and empty sketches are ignored.
-
union
public void union(Sketch thetaSketch, S summary)
Performs a stateful union of the internal set with the given thetaSketch by combining entries using the hashes from the theta sketch and summary values from the given summary.- Parameters:
thetaSketch
- the given theta sketch input. If null or empty, it is ignored.summary
- the given proxy summary for the theta sketch, which doesn't have one. This may not be null.
-
getResult
public CompactSketch<S> getResult()
Gets the result of a sequence of stateful union operations as an unordered CompactSketch- Returns:
- result of the stateful unions so far. The state of this operation is not reset after the result is returned.
-
getResult
public CompactSketch<S> getResult(boolean reset)
Gets the result of a sequence of stateful union operations as an unordered CompactSketch.- Parameters:
reset
- If true, clears this operator to the empty state after this result is returned. Set this to false if you wish to obtain an intermediate result.- Returns:
- result of the stateful union
-
reset
public void reset()
Resets the internal set to the initial state, which represents an empty set. This is only useful after sequences of stateful union operations.
-
-