|
| | compact_tuple_sketch (const Base &other, bool ordered) |
| | Copy constructor.
|
| |
| | compact_tuple_sketch (const compact_tuple_sketch &other)=default |
| | Copy constructor.
|
| |
| | compact_tuple_sketch (compact_tuple_sketch &&) noexcept |
| | Move constructor.
|
| |
| compact_tuple_sketch & | operator= (const compact_tuple_sketch &other)=default |
| | Copy assignment.
|
| |
| compact_tuple_sketch & | operator= (compact_tuple_sketch &&other)=default |
| | Move assignment.
|
| |
| | compact_tuple_sketch (const theta_sketch_alloc< AllocU64 > &other, const Summary &summary, bool ordered=true) |
| | Constructor from Theta sketch.
|
| |
| virtual Allocator | get_allocator () const |
| |
| virtual bool | is_empty () const |
| |
| virtual bool | is_ordered () const |
| |
| virtual uint64_t | get_theta64 () const |
| |
| virtual uint32_t | get_num_retained () const |
| |
| virtual uint16_t | get_seed_hash () const |
| |
| template<typename Predicate > |
| compact_tuple_sketch | filter (const Predicate &predicate) const |
| | Produces a Compact Tuple sketch from this sketch by applying a given predicate to each entry.
|
| |
| template<typename SerDe = serde<Summary>> |
| void | serialize (std::ostream &os, const SerDe &sd=SerDe()) const |
| | This method serializes the sketch into a given stream in a binary form.
|
| |
| template<typename SerDe = serde<Summary>> |
| vector_bytes | serialize (unsigned header_size_bytes=0, const SerDe &sd=SerDe()) const |
| | This method serializes the sketch as a vector of bytes.
|
| |
| virtual iterator | begin () |
| | Iterator over entries in this sketch.
|
| |
| virtual iterator | end () |
| | Iterator pointing past the valid range.
|
| |
| virtual const_iterator | begin () const |
| | Const iterator over entries in this sketch.
|
| |
| virtual const_iterator | end () const |
| | Const iterator pointing past the valid range.
|
| |
| double | get_estimate () const |
| |
| double | get_lower_bound (uint8_t num_std_devs, uint32_t num_subset_entries) const |
| | Returns the approximate lower error bound given a number of standard deviations over an arbitrary number of items stored in the sketch.
|
| |
| double | get_lower_bound (uint8_t num_std_devs) const |
| | Returns the approximate lower error bound given a number of standard deviations.
|
| |
| double | get_upper_bound (uint8_t num_std_devs, uint32_t num_subset_entries) const |
| | Returns the approximate upper error bound given a number of standard deviations over an arbitrary number of items stored in the sketch.
|
| |
| double | get_upper_bound (uint8_t num_std_devs) const |
| | Returns the approximate upper error bound given a number of standard deviations.
|
| |
| bool | is_estimation_mode () const |
| |
| double | get_theta () const |
| |
| string< Allocator > | to_string (bool print_items=false) const |
| | Provides a human-readable summary of this sketch as a string.
|
| |
|
| template<typename Sketch , typename Predicate > |
| static compact_tuple_sketch | filter (const Sketch &sketch, const Predicate &predicate) |
| | Produces a Compact Tuple sketch from a given sketch (Update or Compact) by applying a given predicate to each entry.
|
| |
| template<typename SerDe = serde<Summary>> |
| static compact_tuple_sketch | deserialize (std::istream &is, uint64_t seed=DEFAULT_SEED, const SerDe &sd=SerDe(), const Allocator &allocator=Allocator()) |
| | This method deserializes a sketch from a given stream.
|
| |
| template<typename SerDe = serde<Summary>> |
| static compact_tuple_sketch | deserialize (const void *bytes, size_t size, uint64_t seed=DEFAULT_SEED, const SerDe &sd=SerDe(), const Allocator &allocator=Allocator()) |
| | This method deserializes a sketch from a given array of bytes.
|
| |
template<typename Summary, typename Allocator = std::allocator<Summary>>
class datasketches::compact_tuple_sketch< Summary, Allocator >
Compact Tuple sketch.
This is an immutable form of the Tuple sketch, the form that can be serialized and deserialized.
template<typename Summary , typename Allocator = std::allocator<Summary>>
template<typename SerDe = serde<Summary>>
| vector_bytes serialize |
( |
unsigned |
header_size_bytes = 0, |
|
|
const SerDe & |
sd = SerDe() |
|
) |
| const |
This method serializes the sketch as a vector of bytes.
An optional header can be reserved in front of the sketch. It is a blank space of a given size. This header is used in Datasketches PostgreSQL extension.
- Parameters
-
| header_size_bytes | space to reserve in front of the sketch |
| sd | instance of a SerDe |
- Returns
- serialized sketch as a vector of bytes
template<typename Summary , typename Allocator = std::allocator<Summary>>
template<typename SerDe , typename SS = Summary, typename std::enable_if< std::is_arithmetic< SS >::value, int >::type = 0>
| size_t get_serialized_size_summaries_bytes |
( |
const SerDe & |
sd | ) |
const |
|
protected |
Computes size needed to serialize summaries in the sketch.
This version is for fixed-size arithmetic types (integral and floating point).
- Returns
- size in bytes needed to serialize summaries in this sketch
template<typename Summary , typename Allocator = std::allocator<Summary>>
template<typename SerDe , typename SS = Summary, typename std::enable_if<!std::is_arithmetic< SS >::value, int >::type = 0>
| size_t get_serialized_size_summaries_bytes |
( |
const SerDe & |
sd | ) |
const |
|
protected |
Computes size needed to serialize summaries in the sketch.
This version is for all other types and can be expensive since every item needs to be looked at.
- Returns
- size in bytes needed to serialize summaries in this sketch