Skip to content

feat: async profile row iterator #2953

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

Merged
merged 4 commits into from
Jan 25, 2024
Merged

Conversation

kolesnikovae
Copy link
Collaborator

@kolesnikovae kolesnikovae commented Jan 19, 2024

The PR addresses one of the issues with data streaming in the block read path: when we select profile rows for filtering (by profile series ID and the query time range) we synchronously collect the list of filtered profiles, blocking the data flow. This behaviour has been changed so that filtered profiles are passed down to the stream in batches, asynchronously.

It's not expected that the overall query performance will improve in all cases. Usually the delay caused by the described blocking is very small and does not have impact on the overall query latency and/or resource consumption. However, it may be helpful with huge datasets of high cardinality.

@kolesnikovae kolesnikovae marked this pull request as ready for review January 22, 2024 06:56
@kolesnikovae kolesnikovae requested a review from a team as a code owner January 22, 2024 06:56
Copy link
Contributor

@simonswine simonswine left a comment

Choose a reason for hiding this comment

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

LGTM

Thanks, this is a great cleanup. I have not tried to benchmark this, but it still should go ahead.

Copy link
Contributor

@cyriltovena cyriltovena left a comment

Choose a reason for hiding this comment

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

100% thank you for doing this.

@kolesnikovae kolesnikovae merged commit 5b2758d into main Jan 25, 2024
@kolesnikovae kolesnikovae deleted the feat/profile-rows-stream branch January 25, 2024 06:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
3 participants