ClickHouse/tests/performance
alexey-milovidov 1d309c34c8
Merge pull request #15497 from filipecaixeta/master
Add an SQL function formatReadableTimeDelta to format time delta
2020-10-14 22:36:57 +03:00
..
agg_functions_min_max_any.xml Explicitly mark short perftest queries 2020-06-23 15:09:54 +03:00
aggregate_functions_of_group_by_keys.xml Eliminate min/max/any aggregators of GROUP BY keys in SELECT section (#11667) 2020-06-17 12:32:43 +03:00
aggregating_merge_tree.xml Update aggregating_merge_tree.xml 2020-06-09 01:41:57 +03:00
aggregation_in_order.xml
analyze_array_tuples.xml Explicitly mark short perftest queries 2020-06-23 15:09:54 +03:00
and_function.xml
any_anyLast.xml Any input optimize (#11529) 2020-06-18 19:34:29 +03:00
arithmetic_operations_in_aggr_func.xml fixup 2020-07-03 11:39:43 +03:00
arithmetic.xml
array_auc.xml
array_element.xml More stable perf tests 2020-06-08 16:57:33 +03:00
array_fill.xml
array_index_low_cardinality_numbers.xml In perf test array_index_lc: adjusted iterations count 2020-08-24 12:02:48 +03:00
array_index_low_cardinality_strings.xml Don't account for short queries, we'll deal with them separately. 2020-09-17 13:00:51 +03:00
array_join.xml
array_reduce.xml
base64_hits.xml fixup 2020-06-09 16:29:07 +03:00
base64.xml
basename.xml fixup 2020-06-09 16:29:07 +03:00
bigint_arithm.xml Faster 256-bit multiplication (#15418) 2020-09-29 20:52:34 +03:00
bit_operations_fixed_string_numbers.xml More stable perf tests 2020-06-08 16:57:33 +03:00
bit_operations_fixed_string.xml fixup 2020-06-09 01:13:08 +03:00
bitCount.xml
bloom_filter.xml
bounding_ratio.xml Explicitly mark short perftest queries 2020-06-23 15:09:54 +03:00
cidr.xml Explicitly mark short perftest queries 2020-06-23 15:09:54 +03:00
codecs_float_insert.xml Improve data layout in perf test 2020-07-13 14:31:15 +03:00
codecs_float_select.xml Explicitly mark short perftest queries 2020-06-23 15:09:54 +03:00
codecs_int_insert.xml Don't account for short queries, we'll deal with them separately. 2020-09-17 13:00:51 +03:00
codecs_int_select.xml Explicitly mark short perftest queries 2020-06-23 15:09:54 +03:00
collations.xml Adjust ignore thresholds for unstable perf tests 2020-09-16 18:27:51 +03:00
column_column_comparison.xml Adjust ignore thresholds for unstable perf tests 2020-09-16 18:27:51 +03:00
columns_hashing.xml Update columns_hashing.xml 2020-09-22 13:25:16 +03:00
complex_array_creation.xml fix more queries 2020-06-26 22:11:43 +03:00
concat_hits.xml Explicitly mark short perftest queries 2020-06-23 15:09:54 +03:00
conditional.xml fix more queries 2020-06-26 22:11:43 +03:00
consistent_hashes.xml Explicitly mark short perftest queries 2020-06-23 15:09:54 +03:00
constant_column_comparison.xml
constant_column_search.xml
count.xml Adjust ignore thresholds for unstable perf tests 2020-09-16 18:27:51 +03:00
cpu_synthetic.xml Merge remote-tracking branch 'origin/master' into HEAD 2020-07-02 10:19:26 +03:00
cryptographic_hashes.xml Don't account for short queries, we'll deal with them separately. 2020-09-17 13:00:51 +03:00
date_parsing.xml Don't account for short queries, we'll deal with them separately. 2020-09-17 13:00:51 +03:00
date_time_64.xml fixup 2020-07-02 10:44:16 +03:00
date_time_long.xml Added tests for date_trunc function. 2020-08-25 16:41:23 -07:00
date_time_short.xml Added tests for date_trunc function. 2020-08-25 16:41:23 -07:00
datetime_comparison.xml Fix datetime comparison 2020-09-23 10:29:55 +08:00
decimal_aggregates.xml Adjust ignore thresholds for unstable perf tests 2020-09-16 18:27:51 +03:00
decimal_casts.xml Update decimal_casts.xml 2020-09-24 11:35:35 +03:00
decimal_parse.xml
distinct_combinator.xml more optimal aggregate functions with both 'if' and 'distinct' combinators 2020-06-22 17:57:30 +03:00
distributed_aggregation_memory_efficient.xml
distributed_aggregation.xml
duplicate_order_by_and_distinct.xml fix more queries 2020-06-26 22:11:43 +03:00
early_constant_folding.xml fix more queries 2020-06-26 22:11:43 +03:00
empty_string_deserialization.xml fixup 2020-07-02 10:44:16 +03:00
empty_string_serialization.xml Adjust ignore thresholds for unstable perf tests 2020-09-16 18:27:51 +03:00
entropy.xml Don't account for short queries, we'll deal with them separately. 2020-09-17 13:00:51 +03:00
extract.xml Don't account for short queries, we'll deal with them separately. 2020-09-17 13:00:51 +03:00
first_significant_subdomain.xml
fixed_string16.xml fix more queries 2020-06-26 22:11:43 +03:00
float_formatting.xml fixup 2020-06-29 17:09:51 +03:00
float_mod.xml Add performance test 2020-07-21 13:38:14 +03:00
float_parsing.xml fixup 2020-07-02 10:44:16 +03:00
format_date_time.xml fix more queries 2020-06-26 22:11:43 +03:00
format_readable.xml Add performance test 2020-10-11 18:25:29 +03:00
functions_coding.xml fix more queries 2020-06-26 22:11:43 +03:00
functions_geo.xml
functions_with_hash_tables.xml
fuzz_bits.xml
general_purpose_hashes_on_UUID.xml make some perf tests slower 2020-10-14 18:39:27 +03:00
general_purpose_hashes.xml Don't account for short queries, we'll deal with them separately. 2020-09-17 13:00:51 +03:00
generate_table_function.xml fixup 2020-07-03 11:39:43 +03:00
great_circle_dist.xml Update great_circle_dist.xml 2020-06-21 21:31:58 +03:00
group_array_moving_sum.xml
h3.xml
if_array_num.xml
if_array_string.xml Adjust ignore thresholds for unstable perf tests 2020-09-16 18:27:51 +03:00
if_string_const.xml fix more queries 2020-06-26 22:11:43 +03:00
if_string_hits.xml fix more queries 2020-06-26 22:11:43 +03:00
if_to_multiif.xml fixup 2020-07-02 10:44:16 +03:00
if_transform_strings_to_enum.xml Try to make if_transform_strings perf test faster (#12598) 2020-07-21 13:34:55 +03:00
information_value.xml
injective_functions_inside_uniq.xml Delete injective functions inside uniq (#12337) 2020-07-10 13:42:41 +03:00
insert_parallel.xml Adjust ignore thresholds for unstable perf tests 2020-09-16 18:27:51 +03:00
insert_select_default_small_block.xml
insert_values_with_expressions.xml Update insert_values_with_expressions.xml 2020-09-22 13:23:10 +03:00
inserts_arrays_lowcardinality.xml
int_parsing.xml Update int_parsing.xml 2020-07-08 12:40:33 +03:00
IPv4.xml fix more queries 2020-06-26 22:11:43 +03:00
IPv6.xml fix more queries 2020-06-26 22:11:43 +03:00
jit_large_requests.xml Adjust ignore thresholds for unstable perf tests 2020-09-16 18:27:51 +03:00
jit_small_requests.xml fix more queries 2020-06-26 22:11:43 +03:00
joins_in_memory_pmj.xml fixup 2020-09-14 10:27:46 +03:00
joins_in_memory.xml Adjust ignore thresholds for unstable perf tests 2020-09-16 18:27:51 +03:00
json_extract_rapidjson.xml
json_extract_simdjson.xml
least_greatest_hits.xml fixes 2020-07-09 13:46:16 +03:00
leftpad.xml fixup 2020-07-02 10:44:16 +03:00
linear_regression.xml More robust 2020-08-24 03:14:24 +03:00
local_replica.xml Don't account for short queries, we'll deal with them separately. 2020-09-17 13:00:51 +03:00
logical_functions_large.xml
logical_functions_medium.xml Adjust ignore thresholds for unstable perf tests 2020-09-16 18:27:51 +03:00
logical_functions_small.xml
materialized_view_parallel_insert.xml Adjust ignore thresholds for unstable perf tests 2020-09-16 18:27:51 +03:00
math.xml
merge_table_streams.xml
merge_tree_huge_pk.xml Adjust ignore thresholds for unstable perf tests 2020-09-16 18:27:51 +03:00
merge_tree_many_partitions_2.xml
merge_tree_many_partitions.xml Adjust ignore thresholds for unstable perf tests 2020-09-16 18:27:51 +03:00
merge_tree_simple_select.xml Adjust ignore thresholds for unstable perf tests 2020-09-16 18:27:51 +03:00
mingroupby-orderbylimit1.xml
modulo.xml
monotonous_order_by.xml Optimize monotonous ORDER BY (#12467) 2020-07-15 13:10:21 +03:00
ngram_distance.xml
number_formatting_formats.xml fixup 2020-06-09 01:13:08 +03:00
nyc_taxi.xml
order_by_decimals.xml Updated perftests. 2020-06-17 13:00:28 +03:00
order_by_read_in_order.xml
order_by_single_column.xml Don't account for short queries, we'll deal with them separately. 2020-09-17 13:00:51 +03:00
order_with_limit.xml Merge branch 'master' into remove-useless-setting-from-perf-test 2020-07-14 09:31:34 +03:00
parallel_final.xml
parallel_index.xml Don't account for short queries, we'll deal with them separately. 2020-09-17 13:00:51 +03:00
parallel_insert.xml Adjust ignore thresholds for unstable perf tests 2020-09-16 18:27:51 +03:00
parallel_mv.xml
parse_engine_file.xml Adjust ignore thresholds for unstable perf tests 2020-09-16 18:27:51 +03:00
point_in_polygon_const.xml fix more queries 2020-06-26 22:11:43 +03:00
point_in_polygon.xml Disable "optimize_trivial_insert_select" for one perf test 2020-08-26 01:33:31 +03:00
polymorphic_parts_l.xml Update polymorphic_parts_l.xml 2020-07-03 11:46:48 +03:00
polymorphic_parts_m.xml Update polymorphic_parts_m.xml 2020-07-03 11:46:29 +03:00
polymorphic_parts_s.xml Merge remote-tracking branch 'origin' into CurtizJ-polymorphic-parts 2020-07-06 21:34:17 +03:00
pre_limit_no_sorting.xml Added performance test to resemble questionable benchmark 2020-06-25 23:40:07 +03:00
prewhere.xml Added performance test to resemble questionable benchmark 2020-06-25 23:40:07 +03:00
push_down_limit.xml Adjust ignore thresholds for unstable perf tests 2020-09-16 18:27:51 +03:00
questdb_sum_float32.xml split 2020-07-07 11:01:50 +03:00
questdb_sum_float64.xml too slow 2020-07-07 20:07:04 +03:00
questdb_sum_int32.xml split 2020-07-07 11:01:50 +03:00
rand.xml
random_fixed_string.xml fixup 2020-07-02 10:44:16 +03:00
random_printable_ascii.xml Adjust ignore thresholds for unstable perf tests 2020-09-16 18:27:51 +03:00
random_string_utf8.xml
random_string.xml Adjust ignore thresholds for unstable perf tests 2020-09-16 18:27:51 +03:00
range.xml
read_from_comp_parts.xml Mark query short 2020-07-24 16:59:50 +03:00
read_hits_with_aio.xml
read_in_order_many_parts.xml Adjust ignore thresholds for unstable perf tests 2020-09-16 18:27:51 +03:00
README.md Update instruction for perf tests 2020-08-26 20:34:05 +03:00
redundant_functions_in_order_by.xml Update redundant_functions_in_order_by.xml 2020-07-17 15:11:17 +03:00
removing_group_by_keys.xml Remove functions of other keys in GROUP BY section (#10051) 2020-06-16 12:14:25 +03:00
right.xml
round_down.xml
round_methods.xml fixup 2020-07-02 10:44:16 +03:00
scalar.xml
select_format.xml Adjust ignore thresholds for unstable perf tests 2020-09-16 18:27:51 +03:00
set_hits.xml fixup 2020-06-10 02:37:48 +03:00
set_index.xml Adjust ignore thresholds for unstable perf tests 2020-09-16 18:27:51 +03:00
set.xml Adjust ignore thresholds for unstable perf tests 2020-09-16 18:27:51 +03:00
simple_join_query.xml
single_fixed_string_groupby.xml Update single_fixed_string_groupby.xml 2020-09-20 19:42:11 +03:00
slices_hits.xml fix more queries 2020-06-26 22:11:43 +03:00
sort_radix_trivial.xml
sort.xml
string_join.xml
string_set.xml
string_sort.xml Don't account for short queries, we'll deal with them separately. 2020-09-17 13:00:51 +03:00
sum_map.xml fixup 2020-07-02 10:13:02 +03:00
sum.xml
synthetic_hardware_benchmark.xml Update synthetic_hardware_benchmark.xml 2020-08-10 20:16:23 +03:00
trim_numbers.xml
trim_urls.xml
trim_whitespace.xml
uniq.xml Don't account for short queries, we'll deal with them separately. 2020-09-17 13:00:51 +03:00
url_hits.xml
vectorize_aggregation_combinators.xml Added performance test to resemble questionable benchmark 2020-06-25 23:40:07 +03:00
visit_param_extract_raw.xml
website.xml Don't account for short queries, we'll deal with them separately. 2020-09-17 13:00:51 +03:00

ClickHouse performance tests

This directory contains .xml-files with performance tests for @akuzm tool.

How to write performance test

First of all you should check existing tests don't cover your case. If there are no such tests than you should write your own.

You have to specify preconditions. It contains table names. Only hits_100m_single, hits_10m_single, test.hits are available in CI.

You can use substitions, create, fill and drop queries to prepare test. You can find examples in this folder.

Take into account, that these tests will run in CI which consists of 56-cores and 512 RAM machines. Queries will be executed much faster than on local laptop.

If your test continued 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 @akuzm

How to validate single test

pip3 install clickhouse_driver
../../docker/test/performance-comparison/perf.py --runs 1 insert_parallel.xml