Nikolai Kochetov
61bef2adf1
added ExternalLoader [#CLICKHOUSE-3305]
2017-10-06 13:31:06 +03:00
Marek Vavruša
9520234365
Dictionaries/TrieDictionary: IP prefix dictionary
...
This commit implements a basic IP prefix dictionary
that allows storing IPv4/IPv6 prefixes and
matching them against a single IP address on query
time. This allows for doing IP -> ASN matching and
other similar things on query time.
The implementation is basic for start, using a
simple bitwise trie and reusing interface for
complex key dictionaries (so using tuple instead
of UInt32/FixedString(16) as the key). A faster
bitwise trie implementation (like poptrie) is
desired to improve lookup performance and
memory consumption with large prefix tables.
2017-05-15 10:51:03 +04:00
Alexey Milovidov
a0b9bf5e97
Moved code to cpp [#CLICKHOUSE-2].
2017-04-08 04:32:05 +03:00
Alexey Milovidov
310736cd7e
Moved headers and sources to same place [#CLICKHOUSE-3].
2017-04-01 12:22:42 +03:00
Alexey Milovidov
137ad95929
Changed tabs to spaces in code [#CLICKHOUSE-3].
2017-04-01 11:35:09 +03:00
Alexey Milovidov
ca4438d470
Fixed style [#METR-2944].
2016-12-18 21:34:49 +03:00
Alexey Milovidov
c062fc1ce0
dbms: cutting dependency [#METR-2944].
2016-01-12 05:21:15 +03:00
Andrey Mironov
0fd1fc9cdc
dbms: add ComplexKeyCacheDictionary, not yet complete [#METR-17328]
...
Requires a way of deallocating keys in memory Arena (a new type of arena, actually), MySQLDictionarySource not yet capable of requesting complex keys.
2015-11-16 20:49:39 +03:00
Andrey Mironov
c0ba6bedcb
dbms:rename ComplexKeyDictionary to ComplexKeyHashedDictionary [#METR-17328]
2015-11-13 14:21:40 +03:00
Andrey Mironov
701bed3fae
dbms: add ComplexKeyDictionary, no fetching of values yet [#METR-17328]
2015-11-12 19:29:07 +03:00
Andrey Mironov
aa68fd2aec
dbms: add expression support for id, range_min and range_max [#METR-17888]
...
Fix type-checking of range_hashed dictionary with mysql as a source.
Parenthesise all expressions to avoid errors.
2015-09-08 12:38:44 +03:00
Andrey Mironov
9d406de8c9
dbms: add dictionary name to messages of most exceptions occurring during their creation [#METR-17487]
2015-08-19 16:19:37 +03:00
Alexey Milovidov
f39ad593f5
dbms: added optional property 'require_nonempty' for external dictionaries [#METR-17508].
2015-08-12 00:32:27 +03:00
Andrey Mironov
c4440ad829
dbms: RangeHashedDictionary implementation [#METR-17111]
2015-07-13 19:18:28 +03:00
Andrey Mironov
19066a43c2
dbms: rename CacheDictionary size parameter to size_in_cells. [#METR-13298]
2015-03-18 12:57:40 +03:00
Andrey Mironov
20eb5013a4
dbms: cache dictionary revamp [#METR-13298]
2015-02-26 17:53:45 +03:00
Andrey Mironov
cf8a927150
dbms: invert the way multiple values are acquired from the dictionary [#METR-13298]
2015-02-19 18:28:24 +03:00
Alexey Milovidov
a9eb28c07d
Using std::make_unique [#METR-2807].
2015-02-11 00:10:58 +03:00
Andrey Mironov
168e1cd98d
dbms: post-review corrections [#METR-13298]
...
add dummy CacheDictionary (could not commit without it)
2015-02-10 17:50:52 +03:00
Andrey Mironov
6fecb60894
dbms: better decoupling [#METR-13298]
2015-02-03 20:03:35 +03:00