Skip to content
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] Common Data Access Services #29215

Closed
stacey-gammon opened this issue Jan 23, 2019 · 4 comments
Closed

[Meta] Common Data Access Services #29215

stacey-gammon opened this issue Jan 23, 2019 · 4 comments

Comments

@stacey-gammon
Copy link
Contributor

stacey-gammon commented Jan 23, 2019

As a foundation for a better architecture for editors, plugins and the Kibana core, we switched to rendering all visualizations in Kibana with the so far called "Canvas Expressions". This will allow us for better extensibility and building an aligned querying infrastructure for Kibana. Switching over to using those expressions for all visualizations is just the first step and there is still a lot of work ahead. A main task will be to stabilize and improve the execution of the expressions (caching, deduplicating, performance, …). We'll also planning to build a proper easy to use testing infrastructure (#22139). Since we want this expressions to be the base for all further data gathering in Kibana, building solid APIs (#25374) is a very important step to support plugin developers and solution teams.

With having the infrastructure stable, our focus will also shift to adding new functionality to the expressions (e.g. bucket script aggregations, transpose functions, etc.). We also want to work on adding new high level features to the expression execution, like terminating running execution/queries.

An important part and idea of the new infrastructure is, to create a common querying infrastructure for all components and solutions. We want to make sure, that we build expression functions that offer a proper alternative for courier (see also #20364), that we're making sure all existing visualizations (TSVB, Timelion, Graph, Canvas, etc.) are using those functions to retrieve their data. That allows us to have features like nested aggregations, parent-child relationships, etc. working aligned over all technologies. (Related issues: #14750, #18301). This also relates a lot to the future of index patterns and how those will be used across different implementations.

While SQL is rising in popularity and Canvas supports it for visualizations, we want to evaluate SQL usage in other parts of Kibana and figure out if and how SQL could improve querying and building visualizations.

Related concerns:

@stacey-gammon stacey-gammon added Team:Visualizations Visualization editors, elastic-charts and infrastructure :AppArch labels Jan 23, 2019
@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-app

@AlonaNadler
Copy link

Related to improving dashboard load performance and handling of frozen indices, currently, the dashboard loading time is as fast as the weakest link, which means that it only loads once all the queries return, that will be an issue with frozen indices. If even a single panel is using frozen indices, the entire dashboard will load only when the frozen index query returns, which we know will take longer. It will be good to take it under consideration when designing and try to maybe break into multiple queries instead of bulk so at least parts of the dashboard will return and users will not need to wait until frozen indices query return results.

Another issue that is raised often is how to prevent users from running bad queries in Kibana, terminating queries is one great approach, the ability to terminate the previous query once a user refresh or navigate to a different page can go a long way. We might want to think on other measurements in the data access service which can help in this goal, especially as the new GIS and the new visual builder will refresh the UI with every change unlike the traditional editor which requires to click on the play button to refresh the UI, this will result in better experience but more queries.

@aleph-zero
Copy link

We need to be clear that the problem with Kibana timeouts is not related to frozen indices. To be sure, frozen indices will exacerbate the problem, but the problem has existed for a long time. There must be some way to improve the UX w/o blocking on frozen index support.

@ppisljar
Copy link
Member

ppisljar commented May 4, 2021

closing this as most of the above points have been done and we have separate issues tracking any remaining work

@ppisljar ppisljar closed this as completed May 4, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants