Knowledge Management

Using mean(x) in summary search run every 5 minutes - when running a report on summary index using mean(x) per day or month, will that give the same result?

JYTTEJ
Communicator

Hi - I need to calculate the mean(response time) for at complete month based on summary index.

The summary index search has to run every 5 minutes - selecting last 5 minutes of data.

The search will look like this: Search.... |sistats mean(response time) by xxx yyyy www ttt

The monthly report search will look like this: index=summary REPORT=MEANRESP|timechart span=1month mean(response time)

QUESTION: Will the search run on the summary index give the same result as if I made the search run on the actual transaction log?

Tags (2)
0 Karma
1 Solution

somesoni2
Revered Legend

There will be some differences (magnitude depend upon the data) as there will be little rounding in mean calculation of summary indexes and subsequent mean calculation during data fetch from. See this runanywhere search example and compare the results.

SET 1
simulating summary index
| gentimes start=-1 | eval temp=mvrange(1,200,2) | table temp | mvexpand temp | eval data=temp+1 | bucket span=5s data | stats mean(temp) as temp by data | stats mean(temp) as temp

Direct calculation
| gentimes start=-1 | eval temp=mvrange(1,200,2) | table temp | mvexpand temp | eval data=temp+1 | stats mean(data) as temp

SET 2
simulating summary index
| gentimes start=-1 | eval temp=mvrange(2,200,2) | table temp | mvexpand temp | eval data=temp+1 | bucket span=5s data | stats mean(temp) as temp by data | stats mean(temp) as temp

Direct calculation
| gentimes start=-1 | eval temp=mvrange(2,200,2) | table temp | mvexpand temp | eval data=temp+1 | stats mean(data) as temp

View solution in original post

somesoni2
Revered Legend

There will be some differences (magnitude depend upon the data) as there will be little rounding in mean calculation of summary indexes and subsequent mean calculation during data fetch from. See this runanywhere search example and compare the results.

SET 1
simulating summary index
| gentimes start=-1 | eval temp=mvrange(1,200,2) | table temp | mvexpand temp | eval data=temp+1 | bucket span=5s data | stats mean(temp) as temp by data | stats mean(temp) as temp

Direct calculation
| gentimes start=-1 | eval temp=mvrange(1,200,2) | table temp | mvexpand temp | eval data=temp+1 | stats mean(data) as temp

SET 2
simulating summary index
| gentimes start=-1 | eval temp=mvrange(2,200,2) | table temp | mvexpand temp | eval data=temp+1 | bucket span=5s data | stats mean(temp) as temp by data | stats mean(temp) as temp

Direct calculation
| gentimes start=-1 | eval temp=mvrange(2,200,2) | table temp | mvexpand temp | eval data=temp+1 | stats mean(data) as temp
Get Updates on the Splunk Community!

Transforming Financial Data into Fraud Intelligence

Every day, banks and financial companies handle millions of transactions, logins, and customer interactions ...

How to send events & findings from AWS to Splunk using Amazon EventBridge

Amazon EventBridge is a serverless service that uses events to connect application components together, making ...

Exciting News: The AppDynamics Community Joins Splunk!

Hello Splunkers,   I’d like to introduce myself—I’m Ryan, the former AppDynamics Community Manager, and I’m ...