Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Extend Compare Subcommand Capabilities #532

Closed
IanHoang opened this issue May 14, 2024 · 4 comments
Closed

Extend Compare Subcommand Capabilities #532

IanHoang opened this issue May 14, 2024 · 4 comments
Assignees
Labels
enhancement New feature or request

Comments

@IanHoang
Copy link
Collaborator

Is your feature request related to a problem? Please describe.
At the moment, compare subcommand compares two different test executions and displays the differences to the user. We can extend this feature to support aggregating the results across a series of tests and even converting them into a CSV format.

Describe the solution you'd like
We could utilize scripts similar to what's seen in these two scripts

@IanHoang IanHoang added enhancement New feature or request good first issue Good for newcomers labels May 14, 2024
@OVI3D0
Copy link
Member

OVI3D0 commented Jul 30, 2024

Hey @IanHoang I can take this issue

@IanHoang
Copy link
Collaborator Author

IanHoang commented Jul 31, 2024

Some folks used the scripts I linked and requested for the scripts’ features to eventually be incorporated into OSB. At the time, it seemed like the compare sub-command was the most appropriate place for these features because we were using those scripts to aggregate results across several test records and then compare them with other aggregated results.
But on second thought, doing this might couple “aggregating” to “comparing”. We might be better off creating a new subcommand called aggregate. This would isolate the “aggregate” and “compare” abilities, and also make the tool more flexible.

For example, if users are ultimately comparing OS 2.3 with OS 2.4, they might be running several rounds of tests for each version. After running all the rounds of tests, they might do the following:

# Aggregate all rounds of tests related to OS 2.3
opensearch-benchmark aggregate --ids=id1,id2,id3 --output-name=os23 # Outputs to a new id called aggregate-os23
# Aggregate all rounds of tests related to OS 2.4
opensearch-benchmark aggregate --ids=id4,id5,id6 --output-name=os24 # Outputs to a new id called aggregate-os24

# Compares the aggregated results
opensearch-benchmark compare --baseline=aggregate-os23 --contender=aggregate-os24

@gkamat
Copy link
Collaborator

gkamat commented Jul 31, 2024

The idea for an aggregate command is a good idea. There are several scenarios where something like this would be useful, such as carrying out runs using the same release over several days, or when combining results from a set of loadgen hosts, similar to DWG.
It will be helpful to gather ideas to incorporate into this command as folks comment on this issue.

@IanHoang
Copy link
Collaborator Author

This idea has been moved into and further described in #627

@github-project-automation github-project-automation bot moved this from In Progress to Done in Performance Roadmap Sep 25, 2024
@gkamat gkamat removed the good first issue Good for newcomers label Oct 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: ✅ Done
Status: This Quarter
Status: Done
Development

No branches or pull requests

3 participants