Document toolboxDocument toolbox

Percentile 90 (percentile90)

Description

This operation returns the highest value below the 90th percentile of a specified column for each grouping occurrence using linear interpolation.

How does it work in the search window?

Before being able to perform this operation, you have to group your data. Be aware that the columns used as arguments for the grouping operation will not be available to select as arguments for the aggregation operation.

After grouping the data, select Aggregation in the search window toolbar, then select the Percentile 90 operation. You need to specify one argument:

Argument

Data type

Argument

Data type

Source mandatory

integer

The data type of the aggregated values is integer.

Example

In the siem.logtrust.web.activity table, we want to get the highest value below the 90th percentile of the contentLength column in each 5-minute period. Before aggregating the data, the table must be grouped in 5-minute intervals. Then we will perform the aggregation using the Percentile 90 operation.

The arguments needed for the Percentile 90 operation are:

  • Source → contentLength column

Click Aggregate function and you will see the following result:

How does it work in LINQ?

Group your data using the following structure:

  • group every server period by column1, column2...
    every client period

Then, use select... as...  to add the new column that will show the aggregated values. This is the syntax for the Percentile 90 operation:

  • percentile90(integer_column)

See Build a query using LINQ to learn more about grouping and aggregating your data using the LINQ language.

Example

You can copy the following LINQ syntax and try the example above on thesiem.logtrust.web.activity table:

from siem.logtrust.web.activity group every 5m every 5m select percentile90(contentLength) as percentile90_contentLength