Advertisement
Guest User

Untitled

a guest
Sep 18th, 2019
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.10 KB | None | 0 0
  1. <test>
  2. <!-- clickhouse performance-test --lite --input-file test.xml -->
  3. <name>test</name>
  4.  
  5. <type>loop</type>
  6.  
  7. <stop_conditions>
  8. <all_of>
  9. <total_time_ms>30000</total_time_ms>
  10. </all_of>
  11. <any_of>
  12. <average_speed_not_changing_for_ms>6000</average_speed_not_changing_for_ms>
  13. <total_time_ms>60000</total_time_ms>
  14. </any_of>
  15. </stop_conditions>
  16.  
  17. <main_metric>
  18. <queries_per_second />
  19. <min_time />
  20. </main_metric>
  21.  
  22. <substitutions>
  23. <substitution>
  24. <name>table_name</name>
  25. <values>
  26. <value>perf_test_orig</value>
  27. <value>perf_test_new</value>
  28. </values>
  29. </substitution>
  30. <substitution>
  31. <name>rows</name>
  32. <values>
  33. <value>100000</value>
  34. <value>1000000</value>
  35. </values>
  36. </substitution>
  37. </substitutions>
  38.  
  39. <create_query>SET allow_experimental_data_skipping_indices = 1</create_query>
  40. <create_query>
  41. CREATE TABLE perf_test_orig (
  42. c1 LowCardinality(String),
  43. c2 UInt8,
  44. c3 UInt16,
  45. c4 UInt64,
  46. timestamp_ns UInt64,
  47. timestamp DateTime MATERIALIZED toDateTime(timestamp_ns / 1000000000),
  48. c7 Enum8('A' = 0, 'B' = 1),
  49. c8 Enum8('AA' = 0, 'BB' = 1),
  50. c9 LowCardinality(String),
  51. c10 String,
  52.  
  53. INDEX timestamp_idx timestamp TYPE minmax GRANULARITY 1,
  54. INDEX c4_idx c4 TYPE minmax GRANULARITY 3
  55. )
  56. ENGINE = MergeTree()
  57. ORDER BY (c1, c2, timestamp_ns)
  58. PARTITION BY toYYYYMM(timestamp);
  59. </create_query>
  60. <create_query>
  61. CREATE TABLE perf_test_new (
  62. c1 LowCardinality(String),
  63. c2 UInt8,
  64. c3 UInt16,
  65. c4 UInt64,
  66. timestamp_ns UInt64,
  67. timestamp DateTime MATERIALIZED toDateTime(timestamp_ns / 1000000000),
  68. c7 Enum8('A' = 0, 'B' = 1),
  69. c8 Enum8('AA' = 0, 'BB' = 1),
  70. c9 LowCardinality(String),
  71. c10 String
  72. )
  73. ENGINE = MergeTree()
  74. ORDER BY (timestamp_ns, c1, c2)
  75. PARTITION BY toYYYYMM(timestamp);
  76. </create_query>
  77. <create_query>SYSTEM STOP MERGES {table_name}</create_query>
  78.  
  79. <query>
  80. SELECT COUNT() FROM (SELECT 'service_name_'||toString(rand() % 10), 0 == rand() % 10, 1, rand() % ({rows} / 30), (1546290000 * 10000 + number)*100000+rand()%1000000000 AS timestamp_ns, 'A', 0 == rand() % 2, '12345678901234'||toString(rand() % 10), '{"x":"'||toString(arrayResize([0], rand()%250))||'"}'
  81. FROM system.numbers LIMIT {rows})
  82. </query>
  83. <query>
  84. INSERT INTO {table_name} SELECT '1234567890123'||toString(rand() % 10), 0 == rand() % 10, 1, rand() % ({rows} / 30), (1546290000 * 10000 + number)*100000+rand()%1000000000 AS timestamp_ns, 'A', 0 == rand() % 2, '12345678901234'||toString(rand() % 10), '{"x":"'||toString(arrayResize([0], rand()%250))||'"}'
  85. FROM system.numbers LIMIT {rows}
  86. </query>
  87.  
  88. <drop_query>DROP TABLE IF EXISTS {table_name}</drop_query>
  89. <drop_query>SYSTEM START MERGES {table_name}</drop_query>
  90.  
  91. </test>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement