benches,benchmark: refactor for testing search and delete - #541
Merged
Conversation
ewienik
force-pushed
the
vector-781-refactor-benches
branch
from
July 31, 2026 16:26
1d41ee9 to
01cab0c
Compare
ewienik
marked this pull request as ready for review
July 31, 2026 16:29
This commit setup usearch simulator with 1us waiting time as a configuration for pipeline benches (it will test the pipeline only).
Module table uses Timestamp(0) value as an initial value for tombstone, so to be able to update value each timestamp must be higher. This commit fixes this.
It renames fullscan-add into fullscan-insert and cdc-add into cdc-insert to better follow cql syntax.
All *-while-* tests use two background traffic - the first described with the test name (we test search against this traffic on the same index). The second is for filling Worker tasks with traffic from other index (simulates busy vector-store). This commit refactors the second one - it makes it a search with high concurrency. It simplifies background traffic management.
This commit adds new tests for benchmarking pipeline for deleting during cdc and for testing searches while deleting.
To measure performance of search during handling massive deletion we need to have ability to remove rows one by one. This commit adds command for this.
This commit refactors parquet data reading to be more performant. It adds concurrent reading rows groups from parquet file and adds buffering of the first bucket from the parquet file. The first bucket seems to be most expensive. The change lets reading from file in parallel to sending rows to the db.
Collaborator
Author
|
Changelog for 7602460
range diff |
ewienik
force-pushed
the
vector-781-refactor-benches
branch
from
August 3, 2026 12:36
01cab0c to
7602460
Compare
Member
typo: beches -> benches |
QuerthDP
requested changes
Aug 6, 2026
QuerthDP
left a comment
Member
There was a problem hiding this comment.
Leaving some concerns. Although the patch looks quite fine.
QuerthDP
reviewed
Aug 6, 2026
QuerthDP
approved these changes
Aug 6, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
We need performance tests for benchmarking parallel search and delete operations.
This PR refactors benches and introduces new tests: cdc-delete and search-while-deleting.
Additionally this PR adds new benchmark command delete-rows to be able to simulate massive deletion from table.
For faster benchmark testing this PR refactors loading data from parquet file by running reading from disk parallel to the uploading data to scylladb.
Fixes: VECTOR-781