Class ArrayOfDoublesSketch
java.lang.Object
org.apache.datasketches.tuple.arrayofdoubles.ArrayOfDoublesSketch
- Direct Known Subclasses:
ArrayOfDoublesCompactSketch
,ArrayOfDoublesUpdatableSketch
The base class for the tuple sketch of type ArrayOfDoubles, where an array of double values
is associated with each key.
A primitive array of doubles is used here, as opposed to a generic Summary object,
for improved performance.
-
Method Summary
Modifier and TypeMethodDescriptioncompact()
abstract ArrayOfDoublesCompactSketch
compact
(org.apache.datasketches.memory.WritableMemory dstMem) abstract int
For compact sketches this is the same as getMaxBytes().double
Estimates the cardinality of the set (number of unique values presented to the sketch)double
getLowerBound
(int numStdDev) Gets the approximate lower error bound given the specified number of Standard Deviations.abstract int
int
abstract int
double
getTheta()
Gets the value of theta as a double between zero and onedouble
getUpperBound
(int numStdDev) Gets the approximate upper error bound given the specified number of Standard Deviations.abstract double[][]
abstract boolean
Returns true if this sketch's data structure is backed by Memory or WritableMemory.static ArrayOfDoublesSketch
heapify
(org.apache.datasketches.memory.Memory mem) Heapify the given Memory as an ArrayOfDoublesSketchstatic ArrayOfDoublesSketch
heapify
(org.apache.datasketches.memory.Memory mem, long seed) Heapify the given Memory and seed as a ArrayOfDoublesSketchboolean
isEmpty()
boolean
Returns true if the sketch is Estimation Mode (as opposed to Exact Mode).abstract ArrayOfDoublesSketchIterator
iterator()
abstract byte[]
toString()
static ArrayOfDoublesSketch
wrap
(org.apache.datasketches.memory.Memory mem) Wrap the given Memory as an ArrayOfDoublesSketchstatic ArrayOfDoublesSketch
wrap
(org.apache.datasketches.memory.Memory mem, long seed) Wrap the given Memory and seed as a ArrayOfDoublesSketch
-
Method Details
-
heapify
Heapify the given Memory as an ArrayOfDoublesSketch- Parameters:
mem
- the given Memory- Returns:
- an ArrayOfDoublesSketch
-
heapify
Heapify the given Memory and seed as a ArrayOfDoublesSketch- Parameters:
mem
- the given Memoryseed
- the given seed- Returns:
- an ArrayOfDoublesSketch
-
wrap
Wrap the given Memory as an ArrayOfDoublesSketch- Parameters:
mem
- the given Memory- Returns:
- an ArrayOfDoublesSketch
-
wrap
Wrap the given Memory and seed as a ArrayOfDoublesSketch- Parameters:
mem
- the given Memoryseed
- the given seed- Returns:
- an ArrayOfDoublesSketch
-
getEstimate
public double getEstimate()Estimates the cardinality of the set (number of unique values presented to the sketch)- Returns:
- best estimate of the number of unique values
-
getUpperBound
public double getUpperBound(int numStdDev) Gets the approximate upper error bound given the specified number of Standard Deviations. This will return getEstimate() if isEmpty() is true.- Parameters:
numStdDev
- See Number of Standard Deviations- Returns:
- the upper bound.
-
getLowerBound
public double getLowerBound(int numStdDev) Gets the approximate lower error bound given the specified number of Standard Deviations. This will return getEstimate() if isEmpty() is true.- Parameters:
numStdDev
- See Number of Standard Deviations- Returns:
- the lower bound.
-
hasMemory
public abstract boolean hasMemory()Returns true if this sketch's data structure is backed by Memory or WritableMemory.- Returns:
- true if this sketch's data structure is backed by Memory or WritableMemory.
-
isEmpty
public boolean isEmpty()- Returns:
- true if empty.
-
getNumValues
public int getNumValues()- Returns:
- number of double values associated with each key
-
isEstimationMode
public boolean isEstimationMode()Returns true if the sketch is Estimation Mode (as opposed to Exact Mode). This is true if theta < 1.0 AND isEmpty() is false.- Returns:
- true if the sketch is in estimation mode.
-
getTheta
public double getTheta()Gets the value of theta as a double between zero and one- Returns:
- the value of theta as a double
-
getRetainedEntries
public abstract int getRetainedEntries()- Returns:
- number of retained entries
-
getMaxBytes
public abstract int getMaxBytes()- Returns:
- the maximum number of bytes for this sketch when serialized.
-
getCurrentBytes
public abstract int getCurrentBytes()For compact sketches this is the same as getMaxBytes().- Returns:
- the current number of bytes for this sketch when serialized.
-
toByteArray
public abstract byte[] toByteArray()- Returns:
- serialized representation of the sketch
-
getValues
public abstract double[][] getValues()- Returns:
- array of arrays of double values in the sketch
-
iterator
- Returns:
- iterator over the sketch
-
compact
- Returns:
- this sketch in compact form, which is immutable.
-
compact
public abstract ArrayOfDoublesCompactSketch compact(org.apache.datasketches.memory.WritableMemory dstMem) - Parameters:
dstMem
- the destination WritableMemory- Returns:
- this sketch in compact form, which is immutable.
-
toString
-