Skip to content

[TSVB] Improve schema validation performance #97061

@wylieconlon

Description

@wylieconlon

This is the last and most important piece of improving TSVB performance in a dashboard. I have been profiling a dashboard that uses 46 panels of TSVB using the metricbeat-* and filebeat-* index patterns, but this dashboard I'm testing is totally empty- I have no matching data, so all the visualizations are empty. I've been able to optimize other parts of the request to return in 2-3 seconds, down from 8-10 seconds before, but the schema validation performance is our biggest bottleneck.

As you can see in this screenshot, the schema validation code is the slowest part of loading the dashboard:

Screen Shot 2021-04-13 at 6 12 47 PM

I don't have a solution to this issue yet, but brainstorming some possibilities:

  1. The @elastic/kibana-core team might improve the performance of schema validation overall
  2. We could simplify the TSVB schema
  3. Maybe there is a way to improve performance by batching requests together

cc @alexwizp

Metadata

Metadata

Labels

Feature:TSVBTSVB (Time Series Visual Builder)Team:VisualizationsTeam label for Lens, elastic-charts, Graph, legacy editors (TSVB, Visualize, Timelion) t//performance

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions