Skip to content
Erlang :: Exponential moving average library
Erlang
Find file
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
src
.gitignore
LICENSE
Makefile
README

README

This module implements exponential moving average logic,
a useful data structure to store hits/second averaged over some time period.

For a general description see:
http://en.wikipedia.org/wiki/Moving_average#Exponential_moving_average

USAGE
=====

1. Create a moving average code with a given smoothing window.

	M1 = jn_mavg:new_mavg(300).

2. Update the moving average by accounting for new incoming events.

	M2 = jn_mavg:bump_mavg(M1, 1).
	M3 = jn_mavg:bump_mavg(M2, 1).

3. Query moving average value.

	EventsPerMinute = jn_mavg:getEventsPer(M3, 60).
	EventsPerHour = jn_mavg:getEventsPer(M3, 3600).

Something went wrong with that request. Please try again.