18
SEeSAW Similarity Exploiting Storage for Accelerating Analytics Workflows June 28, 2016 Kalapriya Kannan, Suparna Bhattacharya, Raj Kumar, Muthukumar Murugan, Doug Voigt Hewlett Packard Enterprise USENIX HotStorage, June 20, 2016

SEeSAW Similarity Exploiting Storage for Accelerating ... · SEeSAW –Similarity ... Prevent generation of nearly same data across workflows Analytical applications and frameworks

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: SEeSAW Similarity Exploiting Storage for Accelerating ... · SEeSAW –Similarity ... Prevent generation of nearly same data across workflows Analytical applications and frameworks

SEeSAW – Similarity Exploiting Storage

for Accelerating Analytics Workflows

June 28, 2016

Kalapriya Kannan, Suparna Bhattacharya, Raj Kumar, Muthukumar Murugan, Doug Voigt

Hewlett Packard Enterprise

USENIX HotStorage, June 20, 2016

Page 2: SEeSAW Similarity Exploiting Storage for Accelerating ... · SEeSAW –Similarity ... Prevent generation of nearly same data across workflows Analytical applications and frameworks

2

Digital data generation in an always-on world …

Beach day this weekend? Check out the #HamptonBeach sand sculptures

Got to see some great sand sculpting yesterday #sandsculptures #sandsculpting#beach #hamptonbeach #beachday

Page 3: SEeSAW Similarity Exploiting Storage for Accelerating ... · SEeSAW –Similarity ... Prevent generation of nearly same data across workflows Analytical applications and frameworks

3

As a Dad, this is my favorite Sand Sculpture at the

2016 Hampton Beach Sand Sculpture Contest.

#HappyFathersDay to all the wonderful dads

we know. Look at what's on #HamptonBeach!

Enjoy this gorgeous day!

… inevitable when it is so easy to capture details

Page 4: SEeSAW Similarity Exploiting Storage for Accelerating ... · SEeSAW –Similarity ... Prevent generation of nearly same data across workflows Analytical applications and frameworks

Informatics becomes the bottleneck as cost of gathering data goes down (mobile, social, IoT, surveillance, machine logs, …)

The Promise

Abundance of historical context to discover insights via analytics

4

Instead, … could storage leverage characteristics of the data to address this dilemma?

The Dilemma

How to build capacity to absorb all information even if available?

Storage tends to be the long pole in analytics, bypassed as far as possible!

Courtesy: National Human Genome Research Institute

Page 5: SEeSAW Similarity Exploiting Storage for Accelerating ... · SEeSAW –Similarity ... Prevent generation of nearly same data across workflows Analytical applications and frameworks

5

Example: VM utilization data characteristics (Cloud Optimizer)

Historical utilization based forecasting (capacity planning, placement, migration)

1500 VM’s, 90 days dataSnapshot = 3 days

102 102 102 102 102 102 102 102

101 101 101 101 101 101 101 101

102 102 102 102 102 102 102

99 99 99 99 99 99 99 99 99 99

98 98 98 98 98 98 98 98 98 98 98

99 99

100 100 100 100 100 100 100 100 100 100

99 99 99 99 99 99 99 99 99 99 99

100 100

101 101

100 100 100 100 100 100 100

101 101 101 101

99 99 99 99

101.1 101.1 101.1 101.1 101.1 101.1

96

97

98

99

100

101

102

103

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23

CP

U U

TIL

IZA

TIO

N D

AT

A

24 HRS OBSERVATION

UTILIZATION DATA FOR A INSTANCE FOR 4 SNAPSHOTS

Snapshot1 Snapshot2 Snapshot3 Snapshot4

Snapshots similar 98% of the time

Page 6: SEeSAW Similarity Exploiting Storage for Accelerating ... · SEeSAW –Similarity ... Prevent generation of nearly same data across workflows Analytical applications and frameworks

Storage systems can accumulate much data with similar contentEspecially true of data that is stored primarily for the purpose of analytics

Similar patterns arise naturally

Observations that show consistent repetitive variation

– Sensor, surveillance, geo-satellite data

Data generated by similar sources in a similar context

– System utilization data for similar workloads

– Human generated info on same viewpoint

Results of similar computation on similar data

Often semantically or statistically similar but not duplicates …

6

… unlike typical data/compute de-dup

Apples

Bananas

Carrots

Bananas

Oranges

Apples

Jaccard Similarity

= |X ∩ Y| / |X U Y|

= 0.5

Page 7: SEeSAW Similarity Exploiting Storage for Accelerating ... · SEeSAW –Similarity ... Prevent generation of nearly same data across workflows Analytical applications and frameworks

Should similarity detection be a fundamental storage primitive ?Recognizing and exploiting this data property @ storage has several benefits

Advantages Ex: Similarity based storage optimization

7

S1 S2 .. .. SnAccelerate analytics by skipping similar

data sets

Optimize storage by assigning

differential value to data sets

Prevent generation of nearly same data

across workflows

Analytical applications and frameworks

operate without modification

Reduce data movement, unlike similarity

check at a higher layer

Page 8: SEeSAW Similarity Exploiting Storage for Accelerating ... · SEeSAW –Similarity ... Prevent generation of nearly same data across workflows Analytical applications and frameworks

Provided we can get it rightChallenging Goals

–Similarity detection should not be heavy weight– Rule out dissimilarity with minimal cost

– State maintained with minimal storage overhead

–Save resources IO, CPU, .. and time to get analytics results while preserving accuracy– Similarity detection should reflect application relevant features

–Seamlessly exploit similarity at the storage level– Without application (or even framework) involvement

8

?

Page 9: SEeSAW Similarity Exploiting Storage for Accelerating ... · SEeSAW –Similarity ... Prevent generation of nearly same data across workflows Analytical applications and frameworks

9

SEeSAW – Similarity Exploiting Storage

Therefore ….

Page 10: SEeSAW Similarity Exploiting Storage for Accelerating ... · SEeSAW –Similarity ... Prevent generation of nearly same data across workflows Analytical applications and frameworks

The Idea

Identify similar data sets NOT JUST at the raw input but at intermediate transformation outputs (TO) to accelerate analytics workflows

10

e.g. Haar wavelet

Similarity at later stages reflects semantics of the model

Page 11: SEeSAW Similarity Exploiting Storage for Accelerating ... · SEeSAW –Similarity ... Prevent generation of nearly same data across workflows Analytical applications and frameworks

How? Intercept transformation outputs to detect similarity

11

Seamlessly bypass remaining stages and reuse results

Plugin leverages lineage mechanism in Spark/Alluxio

Similar data

seen?

Mark data at all previous stages as semantically similar

Example: Cloud Optimizer VM resource usage forecasting

Page 12: SEeSAW Similarity Exploiting Storage for Accelerating ... · SEeSAW –Similarity ... Prevent generation of nearly same data across workflows Analytical applications and frameworks

Identify the Optimal stage and thresholds during first few runs

12

What is the time/space saved ? vs

Time to compute similarity

Pick optimal stage

to test for similarity

Page 13: SEeSAW Similarity Exploiting Storage for Accelerating ... · SEeSAW –Similarity ... Prevent generation of nearly same data across workflows Analytical applications and frameworks

Subsequent runs only test and exploit similarity at optimal stage

13

Similar data at optimal stage?

Opportunity to save significant % of storage space?

Opportunity to save significant % of execution time?

Example: Cloud Optimizer VM resource usage forecasting

Page 14: SEeSAW Similarity Exploiting Storage for Accelerating ... · SEeSAW –Similarity ... Prevent generation of nearly same data across workflows Analytical applications and frameworks

Early ResultsHow much similarity is observed?

Similarity at the optimal stage across snapshots taken 3 days

14

Snapshot 1 and 4

Similarity Threshold <=5 <=8 <=10

Percentage Data set 97.5% 98% 99.28

88.0952381

97.5 98.095238199.28571429

80

85

90

95

100

105

<2 <5 <8 <10

% o

f In

sta

nces s

imila

r

Similarity Threshold (Manhattan distance)

Observed Similarity

Page 15: SEeSAW Similarity Exploiting Storage for Accelerating ... · SEeSAW –Similarity ... Prevent generation of nearly same data across workflows Analytical applications and frameworks

Early ResultsDo similar inputs at the optimal stage lead to similar analytics outputs?

15

Snapshot 1-4

Variation < 0.5 %

80

85

90

95

100

105

80

85

90

95

100

105

<2 <5 <8 <10

% s

imila

rity

Similarity Threshold

Output similarity follows input similarity

Optimal Stage Similarity Output Similarity

Page 16: SEeSAW Similarity Exploiting Storage for Accelerating ... · SEeSAW –Similarity ... Prevent generation of nearly same data across workflows Analytical applications and frameworks

Early Results

How much are the benefits

Speed-up 97%

16

Execution Time Savings

What was the performance benefit observed?

1

10

100

Using SEeSAW Without SEeSAW

% o

f ti

me

for

Dif

fere

nt

Stag

es

Time Saving using SEeSAW with Forecasting Engine

Cycle + Seasonality +Trend Detection +Forecasting Engine

OneDHaar + coefficientcomparison

Connecting to similarityservice in Alluxio

Data ingestion from DB+ minutes alignment+hourly rollup

Page 17: SEeSAW Similarity Exploiting Storage for Accelerating ... · SEeSAW –Similarity ... Prevent generation of nearly same data across workflows Analytical applications and frameworks

Open challenges Storage systems that exploit such data characteristics – worthwhile or too radical?

How should storage ensure ..

–Appropriate features and algorithms for measuring similarity?

–Similarity based decisions that preserve analytics accuracy?

–Enough history of prior executions is maintained for similarity detection and optimal stage analysis?

17

Are there other use cases for storage based similarity detection?

Are there other data characteristics storage systems could leverage?

Page 18: SEeSAW Similarity Exploiting Storage for Accelerating ... · SEeSAW –Similarity ... Prevent generation of nearly same data across workflows Analytical applications and frameworks

Thank you

[email protected]

18