Amos Bird
26ab5dd7a7
A Proper lookup table that uses HashTable's API
...
This is the first step of allowing heterogeneous cells in hash tables.
performance test results are
```
1. HashMap<UInt16, UInt8, TrivialHash, HashTableFixedGrower<16>>;
2. NewLookupMap<UInt16, UInt8>
ResolutionWidth 30000 1 .................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................223550276.46
ResolutionWidth 30000 2 .................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................248772721.24
Best: 2 - 24877272124
ResolutionWidth 100000 1 ..........................................................................................................................................................................................................................................................238498413.99
ResolutionWidth 100000 2 ..........................................................................................................................................................................................................................................................261808889.98
Best: 2 - 26180888998
ResolutionWidth 300000 1 ...................................................................................239307348.81
ResolutionWidth 300000 2 ...................................................................................257592761.30
Best: 2 - 25759276130
ResolutionWidth 1000000 1 .........................240144759.26
ResolutionWidth 1000000 2 .........................257093531.91
Best: 2 - 25709353191
ResolutionWidth 5000000 1 .....241573260.35
ResolutionWidth 5000000 2 .....259314162.79
Best: 2 - 25931416279
ResolutionDepth 30000 1 .................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................217108119.84
ResolutionDepth 30000 2 .................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................249459504.41
Best: 2 - 24945950441
ResolutionDepth 100000 1 ..........................................................................................................................................................................................................................................................229065162.17
ResolutionDepth 100000 2 ..........................................................................................................................................................................................................................................................253769105.64
Best: 2 - 25376910564
ResolutionDepth 300000 1 ...................................................................................233079225.18
ResolutionDepth 300000 2 ...................................................................................256316273.78
Best: 2 - 25631627378
ResolutionDepth 1000000 1 .........................234184633.51
ResolutionDepth 1000000 2 .........................261100491.57
Best: 2 - 26110049157
ResolutionDepth 5000000 1 .....233118795.66
ResolutionDepth 5000000 2 .....252436160.41
Best: 2 - 25243616041
```
2019-03-01 16:47:13 +08:00
Alexey Milovidov
04fa827e4b
Style
2019-01-24 22:21:47 +03:00
maiha
6c83beafdd
dbms: Fixed misspells in comments
2019-01-23 04:56:53 +09:00
Amos Bird
af369483a9
Simply Self.
...
> When the normal name of the template (i.e., the name from the enclosing scope, not the injected-class-name) is used, it always refers to the class template itself and not a specialization of the template
http://eel.is/c++draft/temp.local
2018-09-13 22:59:54 +08:00
Alexey Milovidov
36db216abf
Preparation for extra warnings [#CLICKHOUSE-2]
2018-08-10 07:02:56 +03:00
Alexey Milovidov
d932d615e7
Merge branch 'master' of github.com:yandex/ClickHouse
2017-12-02 02:14:59 +03:00
Alexey Milovidov
790bda3b9a
Whitespace [#CLICKHOUSE-2].
2017-12-02 02:14:53 +03:00
Alexey Milovidov
1a6cb2989b
Better [#CLICKHOUSE-2].
2017-12-01 21:36:55 +03:00
Alexey Milovidov
1405415f94
Miscellaneous [#CLICKHOUSE-3].
2017-10-09 01:53:38 +03:00
Marek Vavruša
28bb5e25cf
AggregateFunctionTopK: read alphaMap for generic
...
* the alpha_map vector always (de)serialises
the actual version (could empty sometimes)
* AggregateFunctionTopK generic variant deserialises
it as well instead of ignoring it
* AggregateFunctionTopK generic variant clears the
array before deserialising
refs #1283
2017-10-09 01:12:38 +03:00
Marek Vavruša
e189c39056
SpaceSaving: internal storage for StringRef{}
...
The SpaceSaving has now specialised storage for
some keys, which only copies keys that
are to be retained in the structure, not all.
Most of the PODs implement this interface empty,
so there shouldn’t be any extra cost.
2017-06-26 21:16:13 +03:00
Marek Vavruša
45bd332460
AggregateFunctionTopK: fix memory usage, performance
...
* allow separate table key / hash key, and use
std::string / StringRef for generic variant as
it has built-in storage and StringRef is supported
by the hash table, this avoids infinitely
growing arena with serialised keys
* use power-of-2 size for alpha vector for faster
binning without using modulo
* use custom grower and allocator for SpaceSaving
to start with smaller tables
* store computed hash in counter for faster
reinsertion of smallest element
2017-05-11 18:52:49 +04:00
Alexey Milovidov
d3e6321967
AggregateFunctionTopK: minor modifications [#CLICKHOUSE-2].
2017-05-05 16:36:02 -07:00
Alexey Milovidov
9d4c814b12
Aggregate function topK: style modifications [#CLICKHOUSE-2].
2017-05-05 14:17:04 -07:00
Marek Vavruša
5f1e65b252
AggregateFunctions: implemented topK(n)
...
This implements a new function for approximate
computation of the most frequent entries using
Filtered Space Saving with a merge step adapted
from Parallel Space Saving paper.
It works better for cases where GROUP BY x
is impractical due to high cardinality of x,
such as top IP addresses or top search queries.
2017-05-03 23:09:52 -07:00