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()Returns this sketch in compact form, which is immutable.abstract ArrayOfDoublesCompactSketchcompact(org.apache.datasketches.memory.WritableMemory dstMem) Returns this sketch in compact form, which is immutable.abstract intFor compact sketches this is the same as getMaxBytes().doubleEstimates the cardinality of the set (number of unique values presented to the sketch)doublegetLowerBound(int numStdDev) Gets the approximate lower error bound given the specified number of Standard Deviations.abstract intReturns the maximum number of bytes for this sketch when serialized.intReturns number of double values associated with each keyabstract intReturns number of retained entriesdoublegetTheta()Gets the value of theta as a double between zero and onedoublegetUpperBound(int numStdDev) Gets the approximate upper error bound given the specified number of Standard Deviations.abstract double[][]Returns array of arrays of double values in the sketchabstract booleanReturns true if this sketch's data structure is backed by Memory or WritableMemory.static ArrayOfDoublesSketchheapify(org.apache.datasketches.memory.Memory mem) Heapify the given Memory as an ArrayOfDoublesSketchstatic ArrayOfDoublesSketchheapify(org.apache.datasketches.memory.Memory mem, long seed) Heapify the given Memory and seed as a ArrayOfDoublesSketchbooleanisEmpty()booleanReturns true if the sketch is Estimation Mode (as opposed to Exact Mode).abstract ArrayOfDoublesSketchIteratoriterator()Returns an iterator over the sketchabstract byte[]Returns serialized representation of the sketchtoString()static ArrayOfDoublesSketchwrap(org.apache.datasketches.memory.Memory mem) Wrap the given Memory as an ArrayOfDoublesSketchstatic ArrayOfDoublesSketchwrap(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- 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- Returns:
- number of retained entries
-
getMaxBytes
public abstract int getMaxBytes()Returns the maximum number of bytes for this sketch when serialized.- 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- Returns:
- serialized representation of the sketch
-
getValues
public abstract double[][] getValues()Returns array of arrays of double values in the sketch- Returns:
- array of arrays of double values in the sketch
-
iterator
Returns an iterator over the sketch- Returns:
- an iterator over the sketch
-
compact
Returns this sketch in compact form, which is immutable.- Returns:
- this sketch in compact form, which is immutable.
-
compact
public abstract ArrayOfDoublesCompactSketch compact(org.apache.datasketches.memory.WritableMemory dstMem) Returns this sketch in compact form, which is immutable.- Parameters:
dstMem- the destination WritableMemory- Returns:
- this sketch in compact form, which is immutable.
-
toString
-