Skip to content

Add round-robin support for clickhouse-benchmark#26607

Merged
alexey-milovidov merged 4 commits intoClickHouse:masterfrom
azat:bench-round-robin
Jul 24, 2021
Merged

Add round-robin support for clickhouse-benchmark#26607
alexey-milovidov merged 4 commits intoClickHouse:masterfrom
azat:bench-round-robin

Conversation

@azat
Copy link
Copy Markdown
Member

@azat azat commented Jul 20, 2021

Changelog category (leave one):

  • Improvement

Changelog entry (a user-readable short description of the changes that goes to CHANGELOG.md):
Add round-robin support for clickhouse-benchmark (it does not differ from the regular multi host/port run except for statistics report).

@robot-clickhouse robot-clickhouse added the pr-improvement Pull request with some product improvements label Jul 20, 2021
@azat azat marked this pull request as draft July 20, 2021 20:06
@azat azat marked this pull request as ready for review July 21, 2021 05:53
@alexey-milovidov alexey-milovidov self-assigned this Jul 24, 2021
@alexey-milovidov
Copy link
Copy Markdown
Member

What's the purpose of it?
Note that hosts are queried sequentially (while one host is queried others are not).

{
if (!connection_description.empty())
connection_description += ",";
connection_description += ", ";
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This will make it impossible to distinguish list of hosts from other columns, since other columns is printed via , too, i.e.:

Before:

127.1:9000,127.2:9000, queries 2, QPS: 48.036, RPS: 48.036, MiB/s: 0.000, result RPS: 48.036, result MiB/s: 0.000.

After:

127.1:9000, 127.2:9000, queries 2, QPS: 48.036, RPS: 48.036, MiB/s: 0.000, result RPS: 48.036, result MiB/s: 0.000.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't like lack of whitespace after comma 😿

@azat
Copy link
Copy Markdown
Member Author

azat commented Jul 24, 2021

What's the purpose of it?

This option will just change the output, so instead of differentiate hosts between each other, statistics will be accounted for all hosts in summary, i.e.

before:

127.1:9000, queries 1, QPS: 42.519, RPS: 42.519, MiB/s: 0.000, result RPS: 42.519, result MiB/s: 0.000.
127.2:9000, queries 1, QPS: 24.075, RPS: 24.075, MiB/s: 0.000, result RPS: 24.075, result MiB/s: 0.000.

after:

127.1:9000,127.2:9000, queries 2, QPS: 48.036, RPS: 48.036, MiB/s: 0.000, result RPS: 48.036, result MiB/s: 0.000.

So latency and others will be accounted in summary, maybe useful for benchmarking the cluster.

AFAIU initial mode was added for perf tests.

Note that hosts are queried sequentially (while one host is queried others are not).

Yes, but with --concurrency you can run multiple workers/

@alexey-milovidov
Copy link
Copy Markdown
Member

Ok. But why it is needed?

@azat
Copy link
Copy Markdown
Member Author

azat commented Jul 24, 2021

Ok. But why it is needed?

So latency and others will be accounted in summary, maybe useful for benchmarking the throughput of the cluster.

@alexey-milovidov
Copy link
Copy Markdown
Member

Maybe instead add another mode that will do requests to all hosts in parallel?
For example, 2 hosts x concurrency 16 will give 32 threads.

@alexey-milovidov
Copy link
Copy Markdown
Member

I was thinking more about this solution and found it Ok.

@alexey-milovidov alexey-milovidov merged commit ec949e4 into ClickHouse:master Jul 24, 2021
@azat azat deleted the bench-round-robin branch July 26, 2021 07:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr-improvement Pull request with some product improvements

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants