Product Selector

Fusion 5.9
    Fusion 5.9

    Rollup AggregationQuery pipeline stage configuration specifications

    The Rollup Aggregation query pipeline stage (previously called the Rollup Aggregator stage) is used to roll up Solr results from a context variable. In the REST API, this stage type is named rollup-rec-aggr.

    This stage reads the Solr results (SolrResponse.class) from the context and rolls up over a single field product a list of unique IDs and also aggregates the weights (any numeric field in Solr) for those IDs using any of the statistical aggregation functions available. The result from aggregation is saved back in the context and can be used later in a Parameterized Boosting stage.

    Query pipeline stage condition examples

    Stages can be triggered conditionally when a script in the Condition field evaluates to true. Some examples are shown below.

    Run this stage only for mobile clients:

    params.deviceType === "mobile"

    Run this stage when debugging is enabled:

    params.debug === "true"

    Run this stage when the query includes a specific term:

    params.q && params.q.includes("sale")

    Run this stage when multiple conditions are met:

    request.hasParam("fusion-user-name") && request.getFirstParam("fusion-user-name").equals("SuperUser");
    !request.hasParam("isFusionPluginQuery")

    The first condition checks that the request parameter "fusion-user-name" is present and has the value "SuperUser". The second condition checks that the request parameter "isFusionPluginQuery" is not present.

    Configuration

    When entering configuration values in the UI, use unescaped characters, such as \t for the tab character. When entering configuration values in the API, use escaped characters, such as \\t for the tab character.

    Rollup stage to aggregate Solr results in the format of List<DocumentResult>

    skip - boolean

    Set to true to skip this stage.

    Default: false

    label - string

    A unique label for this stage.

    <= 255 characters

    condition - string

    Define a conditional script that must result in true or false. This can be used to determine if the stage should process or not.

    key - stringrequired

    The key name to use from context to read Solr results.

    resultKey - stringrequired

    The key name to which the results should be saved.

    rollupField - stringrequired

    The field to rollup on.

    excludeResultsKey - string

    The key containing a set of results to exclude from this rollup.

    weightField - string

    The numerical field to consider as weight.

    weightFunction - string

    The arithmetic function to use for weight fields on documents with same rollup field.

    Default: sum

    Allowed values: summeanmaxminstddevvariancegeoMeansumOfSquaressumOfLogs

    maxRows - integer

    The maximum number of results to return

    Default: 10

    sort - boolean

    If enabled, the output is sorted based on weight field if it is not null

    Default: true

    weightExpression - string

    Optional expression to compute the final boost weight using a combination of fields returned by Solr, such as score and weight_d