-
Notifications
You must be signed in to change notification settings - Fork 8.3k
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
[Meta] Search Sessions Roadmap #61738
Comments
Pinging @elastic/kibana-app-arch (Team:AppArch) |
TL;DR As ES allows updating the Some design \ UI concerns after a meeting with @mdefazio Running a background searchConsidering the workflow a user has to take to run a background search, there are a few alternatives: Cancel and restart
👍 No significant changes to existing UI. High discoverability. Medium implementation complexity Store everything
👍 Simple implementation. Multi option search button
👍 Simple implementation, high discoverability. No need to wait to run in background. Restoring a background searchA user should be able to reopen a complete background search from within the application.
App level notificationsIs there planned support for this from the ES-UI team? |
this is a new option to me, what's the purpose of this option? I understand the ability to cancel, why the restart?
If I understand correctly this is not the results of the cached dashboard. Can we store it for the timeout time configured? |
Relates elastic/dev#1209 |
@lukasolson the default ES behavior is already to store results for 5days |
Spoke with @jimczi about the ES implementation.
Added questions to ES team at elastic/elasticsearch#49931 (comment) |
Spoke with @rudolf about platform concerns -
|
@lizozom do you know if there is any work happening to address the multiple query serialization known issue? With "other" as the default in Lens - this will have an impact on customers using the Frozen tier who are using search sessions. Are we actively moving the search service to the server? cc: @sixstringcode |
@VijayDoshi @lizozom is working on other projects now, @lukasolson and I are driving the planning ahead. The secondary query/other bucket problem is top of our queue for finishing up the Make It Slow effort. |
Thank you for contributing to this issue, however, we are closing this issue due to inactivity as part of a backlog grooming effort. If you believe this feature/bug should still be considered, please reopen with a comment. |
Pinging @elastic/kibana-data-discovery (Team:DataDiscovery) |
Part of https://github.com/elastic/dev/issues/1209
Search Sessions
A search session refers to running one or more ES searches in the background, in the context of a dashboard, or another application, allowing a user to come back and view the results later.
Proof of Concept
The POC PR includes a partial implementation of the Background Search feature, used for demo purposes. It also contains a sample plugin.
It should be reviewed and serve as a basis for the full implementation.
Tasks
(*) Means that the capability was implemented in the POC.
Improve search API
fetchSoon
andcallClient
to isolatemsearch
RFC
Client side
BackgroundSession
#83640
Server side Background Session Service
Monitoring service
Management
Clear a session upon navigating away from each application \ canceling an ongoing refresh.Warn about navigating away with existing session.UI
Improvements
Misc
Flaky tests
Docs
keep_alive
timeThe ElasticSearch
_async_search
endpoint stores results of queries that ran longer thanwait_for_completion_timeout
by default.The default
keep_alive
time is 5 days, and this includes both the query run time and store time. So ifkeep_alive
is 5 days and the query ran for 4 days, it will be stored by default for another 1 day. If a query did not complete until thekeep_alive
time is reached - it will be canceled.So while implementing this feature, it is important that Kibana doesn't store all queries for that time period. Storing queries for a long time is expensive in terms of both resources and cost. Instead, we should store the data for an initially short time, and then extend it, by sending a GET request to the same search ID, with a longer
keep_alive
.Known limitations
If we rely on the browser to track and store outgoing requests for a given background search, navigating away from the visualization before the secondary request was sent, will result in a partial background search that triggers an additional background search when opened.
The solution to this seems to be supporting server side execution, but this maybe complex and time consuming.
_async_search
API and return the search IDs somehow to the client.The text was updated successfully, but these errors were encountered: