-
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
[Lens] Expose Elasticsearch accuracy warnings to the user #94918
Comments
Pinging @elastic/kibana-app (Team:KibanaApp) |
Thanks for opening this @flash1293 Wording which is comprehensible to lay users is likely to be tricky but the low-level guidance for devs might be of some help |
Is this a warning, error, or information? I don't think we have an existing pattern to fit this into, so we'll need some thinking about how this would look and behave. Some questions:
I would really like to avoid the previous patterns that are used in Visualize: semi-transparent warnings that obscure the chart, and toast messages which stack up on the screen when you load a dashboard. Can we come up with a more user-friendly way to display this? |
Not a fan of semi-transparent warning boxes either. We do have one pattern that's related (at least for the editor): Not sure whether we need to show it in the embeddable as well. cc @MichaelMarcialis do you have an idea how to show warnings in a Lens panel on a dashboard for cases where we can render a chart, but the data might not be fully correct? |
There's a fair amount of stuff out there about visualizing uncertainty. It's worth considering what we can offer users to resolve the inaccuracies. For example, a button to retrieve the exact numbers for the displayed terms. Typically we mix discovery (finding out the top/lowest N terms) and reporting (showing numerical values connected to these terms) in one request. Fixing the reporting is easy - just send another query with an include clause of the discovered terms and all data nodes will focus on filling in all the details for this select group. However, fixing the discovery part (correctly identifying the global top N terms from millions in the first place) can be much harder which could involve While we might not be able to solve the discovery inaccuracies, the reporting inaccuracies are easily fixable. |
@flash1293: I also like the idea of utilizing the warning button and popover in the editor for this. As for providing a similar warning popover for Lens panels in Dashboard, a few possibilities come to mind (though I'm not 100% familiar with what is or isn't technically possible in dashboards). The most immediate thought would be to include an Let me know if this is something you need/want mocked up, or if you prefer to just make a POC yourself in code. |
consider performance warning cases when designing warnings |
* [Lens] Expose Elasticsearch accuracy warnings to the user Closes: #94918 * fix comments * update text Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
* [Lens] Expose Elasticsearch accuracy warnings to the user Closes: #94918 * fix comments * update text Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
Per #87115 (comment)
Kibana does not show warnings when sort by ascending results from elasticsearch include the unbounded error warning:
"doc_count_error_upper_bound" : -1,
To give a concrete example how this could easily happen:
Given time-based indices, terms are not distributed evenly across the indices. Today for example "Tanya Roberts" is mentioned widely in news articles because she was reported as dead but then it was revealed she was alive. A very popular topic in today's news index. However the 80s Bond girl is very rarely mentioned, if at all, in older indices. So when you do a "rarest terms" aggregation across multiple shards the index for today would not return Tanya Roberts in the list of rarest values because she is seen as far from rare. However, another older index might have one mention of her and return that as being rare. So the final merged results for Tanya are 1 - entirely missing the large count from today's index.
In these cases we take special care to supply a
doc_count_error_upper_bound
to let client apps know how far out the doc counts can be. When we return -1 it means we could be majorly wrong - as in the Tanya Roberts blind spot. Lens and regular visualisations do not offer any warning when this is the case:The warning in the response going unreported is this one:
The data/mapping to recreate this error is here. I use shard-routing to recreate the uneven spread of names typical of time-based indices:
When working with descending count sort orders the results are much less prone to inaccuracy and are more bounded error margins (most shards agree on Trump, Obama etc being the most popular) but ascending sort order inaccuracies can be wild.
The text was updated successfully, but these errors were encountered: