Files
datastore/tests/performance
Amos BirdandGeorge Larionov 42d7e55cf2 Rename unicode_word tokenizer to unicodeWord and improve docs
Follow-up to PR #99357 addressing post-merge review comments:
- Rename `unicode_word` to `unicodeWord` for naming consistency with other tokenizers
- Add link to Unicode Text Segmentation (UAX #29) spec in docs
- Add link to CJK Wikipedia article in docs
- Rewrite stop words documentation with explicit default character list
- Add `unicodeWord` to valid tokenizer lists in `hasAnyTokens`/`hasAllTokens` docs
- Clarify comments: ASCII-only connectors, CJK as single-char tokens, split validity rules
- Add `unicodeWord` tests to 03403_function_tokens and 02346_text_index_creation
2026-03-20 15:44:25 +00:00
..
2026-02-05 22:05:45 +01:00
…
…
…
…
…
2026-01-16 17:33:55 +00:00
…
…
…
2025-12-01 09:23:26 +08:00
2025-11-26 18:33:42 +01:00
…
2026-03-13 14:47:58 +01:00
…
…
2026-01-07 16:44:29 +00:00
2026-02-03 11:17:50 +00:00
2026-03-12 08:56:26 +00:00
2025-12-08 10:37:33 +00:00
…
…
2026-01-28 10:01:52 +00:00
…
…
…
…
…
…
…
2026-02-12 23:26:19 +00:00
2026-02-26 13:12:56 +00:00
2025-12-02 05:52:21 +00:00
2025-11-13 15:51:11 +01:00
2026-01-19 14:21:27 +00:00
…

ClickHouse performance tests

This directory contains .xml-files with performance tests.

How to write a performance test

First of all please check that existing tests don't cover your case. If there are no such tests then you can write your own test.

Test template:

<test>
    <!-- Optional: Specify settings -->
    <settings>
        <max_threads>1</max_threads>
        <max_insert_threads>1</max_insert_threads>
    </settings>

    <!-- Optional: Variable substitutions, can be referenced to by curly brackets {} and used in any queries -->
    <substitutions>
        <substitution>
            <name>x</name>
            <values>
                <value>10</value>
                <value>50</value>
            </values>
        </substitution>
        <substitution>
            <name>y</name>
            <values>
                <value>5</value>
                <value>8</value>
            </values>
        </substitution>
    </substitutions>

    <!-- Optional: Table setup queries -->
    <create_query>CREATE TABLE tab1 [..]</create_query>
    <create_query>CREATE TABLE tab2 [..]</create_query>

    <!-- Optional: Table population queries -->
    <fill_query>INSERT INTO tab1 [...]</fill_query>
    <fill_query>INSERT INTO tab2 [...]</fill_query>

    <!-- Benchmark queries -->
    <query>SELECT [...] WHERE col BETWEEN {x} AND {y}</query>
    <query>SELECT [...]</query>
    <query>SELECT [...]</query>

    <!-- Optional: Table teardown queries -->
    <drop_query>DROP TABLE tab1</drop_query>
    <drop_query>DROP TABLE tab2</drop_query>
</test>

If your test takes more than 10 minutes, please, add tag long to have an opportunity to run all tests and skip long ones.

How to run performance test

TODO

How to validate single test

pip3 install clickhouse_driver scipy
../../tests/performance/scripts/perf.py --runs 1 insert_parallel.xml