mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-29 19:12:03 +00:00
93 lines
3.2 KiB
XML
93 lines
3.2 KiB
XML
|
<test>
|
||
|
<substitutions>
|
||
|
<substitution>
|
||
|
<name>layout_suffix</name>
|
||
|
<values>
|
||
|
<value>HASHED</value>
|
||
|
<value>SPARSE_HASHED</value>
|
||
|
</values>
|
||
|
</substitution>
|
||
|
|
||
|
<substitution>
|
||
|
<name>load_factor</name>
|
||
|
<values>
|
||
|
<!-- 0. will be prepended -->
|
||
|
<value>5</value>
|
||
|
<value>7</value>
|
||
|
<value>99</value>
|
||
|
</values>
|
||
|
</substitution>
|
||
|
</substitutions>
|
||
|
|
||
|
<create_query>
|
||
|
CREATE TABLE simple_key_dictionary_source_table
|
||
|
(
|
||
|
id UInt64,
|
||
|
value_int UInt16
|
||
|
) ENGINE = Memory
|
||
|
</create_query>
|
||
|
|
||
|
<create_query>
|
||
|
CREATE TABLE complex_key_dictionary_source_table
|
||
|
(
|
||
|
id UInt64,
|
||
|
id_key String,
|
||
|
value_int UInt64
|
||
|
) ENGINE = Memory
|
||
|
</create_query>
|
||
|
|
||
|
<create_query>
|
||
|
CREATE DICTIONARY IF NOT EXISTS simple_key_{layout_suffix}_dictionary_l0_{load_factor}
|
||
|
(
|
||
|
id UInt64,
|
||
|
value_int UInt64
|
||
|
)
|
||
|
PRIMARY KEY id
|
||
|
SOURCE(CLICKHOUSE(TABLE 'simple_key_dictionary_source_table'))
|
||
|
LAYOUT({layout_suffix}(MAX_LOAD_FACTOR 0.{load_factor}))
|
||
|
LIFETIME(0)
|
||
|
</create_query>
|
||
|
|
||
|
<create_query>
|
||
|
CREATE DICTIONARY IF NOT EXISTS complex_key_{layout_suffix}_dictionary_l0_{load_factor}
|
||
|
(
|
||
|
id UInt64,
|
||
|
id_key String,
|
||
|
value_int UInt64
|
||
|
)
|
||
|
PRIMARY KEY id, id_key
|
||
|
SOURCE(CLICKHOUSE(TABLE 'complex_key_dictionary_source_table'))
|
||
|
LAYOUT(COMPLEX_KEY_{layout_suffix}(MAX_LOAD_FACTOR 0.{load_factor}))
|
||
|
LIFETIME(0)
|
||
|
</create_query>
|
||
|
|
||
|
<fill_query>INSERT INTO simple_key_dictionary_source_table SELECT number, number FROM numbers(3_000_000)</fill_query>
|
||
|
<fill_query>INSERT INTO complex_key_dictionary_source_table SELECT number, toString(number), number FROM numbers(2_000_000)</fill_query>
|
||
|
|
||
|
<fill_query>SYSTEM RELOAD DICTIONARY simple_key_{layout_suffix}_dictionary_l0_{load_factor}</fill_query>
|
||
|
<fill_query>SYSTEM RELOAD DICTIONARY complex_key_{layout_suffix}_dictionary_l0_{load_factor}</fill_query>
|
||
|
|
||
|
<query>SYSTEM RELOAD DICTIONARY simple_key_{layout_suffix}_dictionary_l0_{load_factor}</query>
|
||
|
<query>SYSTEM RELOAD DICTIONARY complex_key_{layout_suffix}_dictionary_l0_{load_factor}</query>
|
||
|
|
||
|
<query>
|
||
|
WITH rand64() % 3_000_000 as key
|
||
|
SELECT dictHas('default.simple_key_{layout_suffix}_dictionary_l0_{load_factor}', key)
|
||
|
FROM numbers(3_000_000)
|
||
|
FORMAT Null
|
||
|
</query>
|
||
|
|
||
|
<query>
|
||
|
WITH (rand64() % 2_000_000, toString(rand64() % 2_000_000)) as key
|
||
|
SELECT dictHas('default.complex_key_{layout_suffix}_dictionary_l0_{load_factor}', key)
|
||
|
FROM numbers(2_000_000)
|
||
|
FORMAT Null
|
||
|
</query>
|
||
|
|
||
|
<drop_query>DROP DICTIONARY simple_key_{layout_suffix}_dictionary_l0_{load_factor}</drop_query>
|
||
|
<drop_query>DROP DICTIONARY complex_key_{layout_suffix}_dictionary_l0_{load_factor}</drop_query>
|
||
|
|
||
|
<drop_query>DROP TABLE simple_key_dictionary_source_table</drop_query>
|
||
|
<drop_query>DROP TABLE complex_key_dictionary_source_table</drop_query>
|
||
|
</test>
|