You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem? Please describe.
In the perf tuning of the query path in Psearch, it will read data from the Pravega stream with the specific EventPointer, namely random read. It's found that the random read is the bottleneck of the whole query path in Psearch. So, it's necessary to tune the perf of the random read.
The flame graph is collected in Psearch side (Pravega client side), it's found that there are some implementations can be further optimized.
When the EventSegmentReader is initialized, it will init the DelegationTokenProvider and then fetch the latest token. This operation is time cost. Here is the flame graph snapshot.
other perf tuning will be created in another JIRA.
Describe the solution you'd like
For the time cost operation of EventSegmentReader, the solution is that the one SimpleCache<String, DelegationTokenProvider> is provided for every segment. When the client gets access to the same segment, it will use the DelegationTokenProvider from the cache to avoid the initialization.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.
The text was updated successfully, but these errors were encountered:
Is your feature request related to a problem? Please describe.
In the perf tuning of the query path in Psearch, it will read data from the Pravega stream with the specific EventPointer, namely random read. It's found that the random read is the bottleneck of the whole query path in Psearch. So, it's necessary to tune the perf of the random read.
The flame graph is collected in Psearch side (Pravega client side), it's found that there are some implementations can be further optimized.
When the EventSegmentReader is initialized, it will init the DelegationTokenProvider and then fetch the latest token. This operation is time cost. Here is the flame graph snapshot.
other perf tuning will be created in another JIRA.
Describe the solution you'd like
For the time cost operation of EventSegmentReader, the solution is that the one SimpleCache<String, DelegationTokenProvider> is provided for every segment. When the client gets access to the same segment, it will use the DelegationTokenProvider from the cache to avoid the initialization.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.
The text was updated successfully, but these errors were encountered: