Bi BigDebug : : Interactive Debugger for Bi Big - - PowerPoint PPT Presentation

bi bigdebug interactive debugger for bi big data
SMART_READER_LITE
LIVE PREVIEW

Bi BigDebug : : Interactive Debugger for Bi Big - - PowerPoint PPT Presentation

Bi BigDebug : : Interactive Debugger for Bi Big Data Analytics in Apache Spark MUHAMMAD ALI GULZAR, MATTEO INTERLANDI, TYSON CONDIE,


slide-1
SLIDE 1

Bi BigDebug: ¡ : ¡Interactive ¡ ¡Debugger ¡ ¡for ¡ ¡ Bi Big ¡ ¡Data ¡ ¡Analytics ¡ ¡in ¡ ¡Apache ¡ ¡Spark ¡ ¡

MUHAMMAD ¡ ALI ¡GULZAR, ¡ MATTEO ¡ INTERLANDI, ¡ TYSON ¡ CONDIE, ¡ ¡MIRYUNG KIM UNIVERSITY ¡ OF ¡CALIFORNIA, ¡ LOS ¡ ANGELES

slide-2
SLIDE 2

Developing ¡Big ¡Data ¡Analytics

  • Data ¡scientists ¡gather ¡insights ¡from ¡massive ¡quantities ¡of ¡

data ¡using ¡data ¡intensive ¡scalable ¡computing ¡systems

  • Debugging ¡of ¡big ¡data ¡analytic ¡workflows ¡on ¡the ¡cloud ¡is ¡

time ¡consuming ¡and ¡error-­‑prone

MapReduce

slide-3
SLIDE 3

Traditional ¡Debugging ¡in ¡Big ¡Data ¡ Analytics

Enabling ¡interactive ¡debugging ¡requires ¡us ¡to re-­‑think ¡the ¡ features ¡of ¡traditional ¡debugger ¡such ¡as ¡GDB

  • Pausing ¡the ¡entire ¡computation ¡on ¡the ¡cloud ¡could ¡reduce ¡

throughput

  • It ¡is ¡clearly ¡infeasible ¡for ¡a ¡user ¡to ¡inspect ¡billion ¡of ¡

records ¡through ¡a ¡regular ¡watchpoint

  • Even ¡launching ¡remote ¡JVM ¡debuggers ¡to ¡individual ¡

worker ¡nodes ¡cannot ¡scale ¡for ¡big ¡data ¡computing

slide-4
SLIDE 4

BigDebug : ¡Interactive ¡Debugger ¡for ¡ Apache ¡Spark ¡[ICSE ¡2016]

slide-5
SLIDE 5

Feature ¡1: ¡Simulated ¡Breakpoint

map map map groupBy Key

Stage 1 Stage 0

slide-6
SLIDE 6

Feature ¡1: ¡Simulated ¡Breakpoint

map map map groupBy Key

Stage 1 Stage 0

slide-7
SLIDE 7

Feature ¡1: ¡Simulated ¡Breakpoint

Stage 0 Stage 1

map simulated breakpoint map map groupBy Key

slide-8
SLIDE 8

Feature ¡1: ¡Simulated ¡Breakpoint

Stage 0 Stage 1

map simulated breakpoint map map Group ByKey

Simulated ¡breakpoint ¡enables ¡user ¡to ¡inspect ¡intermediate ¡ program ¡state ¡without ¡pausing ¡the ¡computation

slide-9
SLIDE 9

Feature ¡2: ¡On ¡Demand ¡Guarded ¡ Watchpoint

map simulated breakpoint map map group ByKey

Stage 0 Stage 1

watch point

slide-10
SLIDE 10

map simulated breakpoint map map group ByKey

Stage 0 Stage 1

watch point

Feature ¡2: ¡On ¡Demand ¡Guarded ¡ Watchpoint

A ¡user ¡can ¡inspect ¡intermediate ¡data ¡using ¡a ¡ guard ¡and ¡also ¡update ¡it ¡on ¡the ¡fly

slide-11
SLIDE 11

Feature ¡3: ¡Crash ¡Culprit ¡Identification ¡ and ¡Remediation

map simulated breakpoint map group ByKey

Stage 0 Stage 1

watch point map

slide-12
SLIDE 12

simulated breakpoint map

Stage 1

watch point

Feature ¡3: ¡Crash ¡Culprit ¡Identification ¡ and ¡Remediation

A ¡user ¡can ¡use ¡BigDebugto ¡identify ¡the ¡crashing ¡records ¡ and ¡remediate ¡from ¡the ¡failure

slide-13
SLIDE 13

simulated breakpoint map

Stage 1

watch point

Feature ¡4: ¡Forward ¡and ¡Backward ¡ Tracing ¡[VLDB ¡’15]

Data ¡provenance ¡enables ¡users ¡to ¡identify ¡crash ¡inducing ¡ inputs ¡records ¡ ¡

slide-14
SLIDE 14

Performance ¡Evaluation ¡[ICSE ¡‘16]

1 10 100 1000 10000 0.5 0.9 4 8 30 70 200 1000 Time ¡(s) Dataset ¡Size ¡(GB)

BigDebug ¡Scale ¡Up

BigDebug Spark

With ¡maximum ¡instrumentation, ¡BigDebugtakes ¡2.4X ¡the ¡ time ¡of ¡baseline ¡Spark ¡while ¡the ¡average ¡case ¡is ¡at ¡1.34X ¡

slide-15
SLIDE 15

Time ¡Saving ¡

BigDebugfinds ¡a ¡crash ¡inducing ¡record ¡with ¡100% ¡accuracy ¡and saves ¡upto 100% ¡time ¡saving ¡through ¡runtime ¡crash ¡remediation

50 100 150 200 250 S1 S2 S3 S4 Time ¡(s) Location ¡of ¡crash ¡(Stage) BigDebug Arthur

The ¡first ¡run ¡ crashes The ¡second ¡run ¡instruments ¡ all ¡ records ¡leading ¡to ¡a ¡crash The ¡third ¡run ¡removes ¡ the ¡crash. ¡

Arthur ¡[Dave ¡et ¡al. ¡2013] BigDebug

A ¡single ¡run ¡can ¡detect ¡and ¡remove ¡the ¡ crash ¡and ¡resumes ¡ the ¡job

slide-16
SLIDE 16

In ¡Summary ¡

  • BigDebug provides ¡primitives ¡ to ¡enable ¡interactive ¡debugging ¡on ¡

the ¡cloud ¡without ¡sacrificing ¡the ¡performance

  • Using ¡data ¡provenance ¡ a ¡user ¡can ¡understand ¡how ¡errors ¡

propagate ¡through ¡data ¡processing ¡steps

  • On ¡average, ¡BigDebug poses ¡34% ¡overhead ¡ and ¡saves ¡100% ¡of ¡

time ¡in ¡case ¡of ¡crash

  • BigDebug is ¡publicly ¡available ¡at

https://sites.google.com/site/sparkbigdebug/