Download - Beyond Averages - Web Performance Meetup

Transcript
Page 1: Beyond Averages - Web Performance Meetup

BEYOND AVERAGESDan Kuebrich / @dankosaur

Page 2: Beyond Averages - Web Performance Meetup

Beyond Averages

• Abstraction: summary statistics for performance data

• Why performance data is hard

• Visualizing data distributions

Page 3: Beyond Averages - Web Performance Meetup
Page 4: Beyond Averages - Web Performance Meetup
Page 5: Beyond Averages - Web Performance Meetup

A few of my favorite abstractions

Page 6: Beyond Averages - Web Performance Meetup

A few of my favorite abstractions• Abstraction lets us trade information for

actionability

Page 7: Beyond Averages - Web Performance Meetup

A few of my favorite abstractions• Abstraction lets us trade information for

actionability

• Min, max, average (“mean”), quantiles, stdev

Page 8: Beyond Averages - Web Performance Meetup

A few of my favorite abstractions• Abstraction lets us trade information for

actionability

• Min, max, average (“mean”), quantiles, stdev

• That’s a great trade! • ... right?

Page 9: Beyond Averages - Web Performance Meetup

Averages: average at best

Page 10: Beyond Averages - Web Performance Meetup

Averages: average at best

Page 11: Beyond Averages - Web Performance Meetup

Averages: average at best

Page 12: Beyond Averages - Web Performance Meetup

Averages: average at best

Page 13: Beyond Averages - Web Performance Meetup

Averages vs Percentiles

[1, 16, 17, 19, 13, 5, 20, 3, 10, 14, 8]

Page 14: Beyond Averages - Web Performance Meetup

Averages vs Percentiles

[1, 3, 5, 8, 10, 13, 14, 16, 17, 19, 20]

Page 15: Beyond Averages - Web Performance Meetup

Averages vs Percentiles

[1, 3, 5, 8, 10, 13, 14, 16, 17, 19, 20]

Average (Mean): 11.54

Median (50th Percentile): 13 90th Percentile: 19

Page 16: Beyond Averages - Web Performance Meetup

Percentiles: 1 of 100 slices95%

X

Page 17: Beyond Averages - Web Performance Meetup

Percentiles: 2 of 100 slices95%

10%

X

Y

Page 18: Beyond Averages - Web Performance Meetup

Percentiles: 2 of 100 slices95%

10%

Page 19: Beyond Averages - Web Performance Meetup

Percentiles: 2 of 100 slices95%

10%

Page 20: Beyond Averages - Web Performance Meetup

Percentiles: 2 of 100 slices95%

10%

Page 21: Beyond Averages - Web Performance Meetup

Computers are hard• Rarely do we have a single distribution underlying the

data

• Different users, different requests, different resources, different instances, different times

Page 22: Beyond Averages - Web Performance Meetup

Percentiles vs Distributions

http://en.wikipedia.org/wiki/Percentile

Page 23: Beyond Averages - Web Performance Meetup

Percentiles vs Distributions

[13, 13, 13, 13, 13, 13, 19, 19, 19, 19, 19]

Median (50th Percentile): 13 90th Percentile: 19

Page 24: Beyond Averages - Web Performance Meetup

Rarely do we have a single normal distribution underlying the data

Page 25: Beyond Averages - Web Performance Meetup
Page 26: Beyond Averages - Web Performance Meetup

Median Mean 90th

Page 27: Beyond Averages - Web Performance Meetup
Page 28: Beyond Averages - Web Performance Meetup
Page 29: Beyond Averages - Web Performance Meetup
Page 30: Beyond Averages - Web Performance Meetup

Median Mean 90th

Page 31: Beyond Averages - Web Performance Meetup

The Log-Normal Distribution

(source: http://www.geo.mtu.edu/volcanoes/vc_web/background/S_chem.html)

Page 32: Beyond Averages - Web Performance Meetup

Log-Normal Distribution

(source: http://en.wikipedia.org/wiki/File:Comparison_mean_median_mode.svg)

Page 33: Beyond Averages - Web Performance Meetup

Log-Normal Distribution

(source: http://en.wikipedia.org/wiki/File:Comparison_mean_median_mode.svg)

Page 34: Beyond Averages - Web Performance Meetup

Log-Normal Distribution

Page 35: Beyond Averages - Web Performance Meetup

Is there a place between Averageland and “A Beautiful Mind”?

http://now-here-this.timeout.com/2012/10/07/crazy-walls-of-clues-from-tv-film-reviewed-by-carrie-from-homeland/

Page 36: Beyond Averages - Web Performance Meetup

Histograms

Freq

uenc

y (e

g. #

of c

alls

)

Value (eg. latency)

Page 37: Beyond Averages - Web Performance Meetup

Populations revisited95%

10%

Page 38: Beyond Averages - Web Performance Meetup

HistogramsFr

eque

ncy

(eg.

# o

f cal

ls)

Value (eg. latency)

Page 39: Beyond Averages - Web Performance Meetup

Populations re-revisited95%

10%?

Page 40: Beyond Averages - Web Performance Meetup

3d Histograms?

Freq

uenc

y (e

g. #

of c

alls

)

Value (eg. latency)

Page 41: Beyond Averages - Web Performance Meetup

3d Histograms?Fr

eque

ncy

(eg.

# o

f cal

ls)

Value (eg. latency)

Time

Page 42: Beyond Averages - Web Performance Meetup

Heatmaps

Freq

uenc

y (e

g. #

of c

alls

)

Value (eg. latency)

Page 43: Beyond Averages - Web Performance Meetup

HeatmapsFr

eque

ncy

(eg.

# o

f cal

ls)

Value (eg. latency)

Page 44: Beyond Averages - Web Performance Meetup

HeatmapsFr

eque

ncy

(eg.

# o

f cal

ls)

Value (eg. latency)

Page 45: Beyond Averages - Web Performance Meetup

HeatmapsVa

lue

(eg.

late

ncy)

Time

Page 46: Beyond Averages - Web Performance Meetup

HeatmapsVa

lue

(eg.

late

ncy)

Time

Page 47: Beyond Averages - Web Performance Meetup

Latency in the wild…

http://sciencefiction.com/2013/10/24/throwback-thursday-jurassic-park/

Page 48: Beyond Averages - Web Performance Meetup

Average, or Absolute?

Page 49: Beyond Averages - Web Performance Meetup

Average, or Absolute?

Page 50: Beyond Averages - Web Performance Meetup

Multi-modal Data

Page 51: Beyond Averages - Web Performance Meetup

Multi-modal Data

Page 52: Beyond Averages - Web Performance Meetup

Multi-modal Drill-down

Page 53: Beyond Averages - Web Performance Meetup

Multi-modal Drill-down

Page 54: Beyond Averages - Web Performance Meetup

Multi-modal Drill-down

Page 55: Beyond Averages - Web Performance Meetup

Long Tails and Outliers

Page 56: Beyond Averages - Web Performance Meetup

bottom 98%

Long Tails and Outliers

Page 57: Beyond Averages - Web Performance Meetup

bottom 98%

Long Tails and Outliers

Page 58: Beyond Averages - Web Performance Meetup

all of it

Long Tails and Outliers

Page 59: Beyond Averages - Web Performance Meetup

Added Population

Page 60: Beyond Averages - Web Performance Meetup

Added Population

Page 61: Beyond Averages - Web Performance Meetup

Added Population

Page 62: Beyond Averages - Web Performance Meetup

Thanks!

Sign up for a free TraceView account at appneta.com/products/traceview-free-account