[Expression][Perf] Take advantage of the new column JSON format #33290
Labels
enhancement
New value added to drive a business result
Feature:ExpressionLanguage
Interpreter expression language (aka canvas pipeline)
impact:low
Addressing this issue will have a low level of impact on the quality/strength of our product.
loe:large
Large Level of Effort
performance
Team:Visualizations
Visualization editors, elastic-charts and infrastructure
The column JSON format is provided by the solution for elastic/elasticsearch#37702
Instead of the often used row format:
or
the column oriented format:
has these benefits:
To take advantage of the column oriented format:
format="column"
), in the column formatrow
vscolumn
) loops through the subsequent steps of the expression, and decides which format to use based on the first processing node it encounters that can take only one of the formats. Alternatively, execute the pipeline such that it switches to the other format as infrequently as possible, while preferring the "natural" orientation for each functionWhile the list gets daunting toward the end, there are lots of benefits to be had by just Item 1 - this lets us pipe column data directly from a query into a column-based renderer, and Item 2 lets everything work without breaking anything, even if the user starts with a columnar query but (some of the) rest of the node functions don't natively handle the column format. Item 3 is still straightforward and may speed up existing use cases.
The text was updated successfully, but these errors were encountered: