opensearch-project / OpenSearch-Dashboards

📊 Open source visualization dashboards for OpenSearch.
https://opensearch.org/docs/latest/dashboards/index/
Apache License 2.0
1.68k stars 884 forks source link

Support for integration with asynchronous search #1009

Open Bukhtawar opened 2 years ago

Bukhtawar commented 2 years ago

Is your feature request related to a problem? Please describe.

Some searches can be long-running espl queries over a larger dataset and might be frustrating for users to get blocked and wait for the loader, in such an event rather than blocking on the full response, dashboards can poll for the partial results as they are available incrementally and update accordingly. If the user migrates off the dashboard, a cancellation for the search can accordingly be requested. Async searches can also save the search results, dashboards can just use the async search id to reload the search results without having to fire the previous search.

Refer to https://opensearch.org/docs/latest/search-plugins/async/index/

Describe the solution you'd like

EDIT: None provided.

Describe alternatives you've considered

EDIT: None provided.

Additional context

EDIT: None provided.

kavilla commented 2 years ago

Hey @Bukhtawar, could you add more details to this one?

Bukhtawar commented 2 years ago

@kavilla I've updated the description will add more details as needed soon

kavilla commented 2 years ago

Howdy @kgcreative, this will need insight on the experience for the user.

kgcreative commented 2 years ago

My first instinct is to say this should be transparent for the user. If we detect the async search plugin, we should simply direct queries to it, instead of the search api. Perhaps in the visualization settings we could add some interface to adjust frequency and caching? The advantage of this should be that multiple refreshes of the same query should feel faster if the result is still cached and the search itself is identical (which leads me to believe having some kind of "cached" indicator for results might be needed).

With that said, @Bukhtawar, I think it would be helpful to know is where in OpenSearch dashboards would you as a user expect to see cached and async results displayed? - Dashboard? Visualize? Discover? Dev Tools? Other plugins?

Bukhtawar commented 2 years ago

Thanks @kgcreative dashboards/visualisations for sure maybe. I'll let others also weigh in

seanneumann commented 2 years ago

@kgcreative @ahopp - I'd like to prioritize async integration, but this has massive UX consequences. Let's think through the use cases and UX flows and discuss a plan here.

kavilla commented 2 years ago

Based on this: https://github.com/opensearch-project/asynchronous-search/issues/127

We will backlog this issue.

faabsen commented 1 year ago

Are there any updates on this?

Dileep-Dora commented 3 months ago

Any update on this, the async search feature seems to be very much useful but if we don't have corresponding support at OSD then the usability is very much limited. are there any technical challenges in this?