Set HLL_SPARSE_MAX to 3000.
After running a few benchmarks, 3000 looks like a reasonable value to keep HLLs with a few thousand elements small while the CPU cost is still not huge. This covers all the cases where the dense representation would use N orders of magnitude more space, like in the case of many HLLs with carinality of a few tens or hundreds. It is not impossible that in the future this gets user configurable, however it is easy to pick an unreasoable value just looking at savings in the space dimension without checking what happens in the time dimension.
This commit is contained in:
parent
848d0461f9
commit
54f0156e8c
@ -202,7 +202,7 @@ struct hllhdr {
|
||||
#define HLL_SPARSE 1 /* Sparse encoding */
|
||||
#define HLL_MAX_ENCODING 1
|
||||
|
||||
#define HLL_SPARSE_MAX 12000
|
||||
#define HLL_SPARSE_MAX 3000
|
||||
|
||||
static char *invalid_hll_err = "Corrupted HLL object detected";
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user