Open costin opened 1 month ago
Pinging @elastic/es-analytical-engine (Team:Analytics)
From a compute engine standpoint it feels like we could do:
-void addRawInput(Page page);
+void addRawInput(Page page, BooleanVector);
That should be easy to make the code generation stuff build. That's be super easy to specialize into constantAll
, constantNone
, and variable
. We can make those BooleanVector
s out of the expression trees easy enough.
Since the bool is used only for filtering, there's no need for MV or null handling - how about using a simple bitset instead ?
For pre-filtering:
Description
Grouping (
STATS
) command can be quite expensive, whether for processing data coming in (creating groups) or out (number of buckets), etc... This problem can be alleviated by allowing pre and post filters, both for individual aggs and grouping keys on the grouping command to drop the data as soon being read or is being produced. Example of pre-filter (see #110821):Example of post-filter: