SlideShare une entreprise Scribd logo
1  sur  53
Télécharger pour lire hors ligne
Keynote✨✨ ✨✨
The Paper Edition!
! " # $ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! "
! " # $ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! "
#$ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! " $ %
♥ ' ! " # $ %♥ ' ! " # $ % # $ %♥♥ ' ! " $
! " # $ %♥ ' ! ! "' ! "% # $ %♥ '♥ $ %♥
Agile, Lean, Rugged
First
.Introductions
@Randommood
Ines Sombra
@adriancolyer
Adrian Colyer
The Rules
Only 5 minutes per paperFoundation
!
Frontier
A challenge!
No Cheating!
A paper tour of
Agile
Foundation
!
We disdain old software
“The only systems that
don’t get changed are
those that are so bad
nobody wants to use
them”
When software gets older
Design for change
Embrace modularity & information hiding
Stress clarity & documentation
Amputate disease-ridden parts
Plan for eventual replacement
Preventative medicine
Frontier
What do we want? We want agile
Development
Testing and
verification
Delivery
and we want
agility of
operations too!
Facebook Scuba
"
Data lives in server’s heap
The problem with state
Restarting a database clears its memory
Reading 120GB of data from disk takes
about 3 hours per server (8 per machine)
Even with orchestrated restarts & partial
queries total of ~12 hours to restart a fleet
Operationally
expensive & slow!
#
“When we shutdown a server
for a planned upgrade, we
know that the memory state
is good… so we decided to
decouple the memory’s
lifetime from the process’s
lifetime“
2-3 minutes per server
Fleet restarts < 1 hour now!
$
A paper tour of
Lean
Foundation
!
Which system is better?
Which system is better?
Single-minded
pursuit of scalability
is the wrong goal
Common wisdom
Effective scaling is
evidence of solid
system building
Why does this happen?
McSherry et al.
Any system can scale
arbitrarily well with a
sufficient lack of care
in its implementation
! " # $ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! "
#$ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! " $ %
♥ ' ! " # $ %♥ ' ! " # $ % # $ %♥♥ ' ! " $
! " # $ %♥ ' ! ! "' ! "% # $ %♥ '♥ $ %♥
#$ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! " $ %
♥ ' ! " # $ %♥ ' ! " # $ % # $ %♥♥ ' ! " $
! " # $ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! "
#$ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! " $ %
♥ ' ! " # $ %♥ ' ! " # $ % # $ %♥♥ ' ! " $
! " # $ %♥ ' ! ! "' ! "% # $ %♥ '♥ $ %♥
#$ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! " $ %
♥ ' ! " # $ %♥ ' ! " # $ % # $ %♥♥ ' ! " $
COST
Configuration that outperforms a single
thread
COST of a system is the hardware
platform (number of cores) required before
the platform outperforms a competent
single threaded implementation
“If you’re building a system,
make sure it’s better than
your laptop. If you’re using a
system, make sure it’s better
than your laptop” McSherry
Frontier
Sampling works!
Error bounds & confidence
Don’t ask wasteful
questions
A paper tour of
Rugged
Foundation
!
Strategies to enhance
ruggedness in the
presence of failures
Better way to think about
system availability
Ruggedness as availability
Harvest: fraction of
the complete result
Yield: fraction of
answered queries
Yield as response ruggedness
Close to uptime (% requests answered
successfully) but more useful because it
directly maps to user experience
Failure during high & low traffic generates
different yields. Uptime misses this
Focus on yield rather than uptime
Harvest as quality of response
From Coda Hale’s “You can’t sacrifice partition tolerance”
Server A Server B Server C
Baby AnimalsCute
Harvest as quality of response
From Coda Hale’s “You can’t sacrifice partition tolerance”
Server A Server B Server C
Baby AnimalsCute
X
66% harvest
#1: Probabilistic Availability
Graceful harvest degradation under faults
Randomness to make the worst-case &
average-case the same
Replication of high-priority data for greater
harvest control
Degrading results based on client capability
#2 Decomposition & Orthogonality
Decomposing into subsystems independently
intolerant to harvest degradation (fail by
reducing yield). But app can continue if they fail
Only provide strong consistency for the
subsystems that need it
Orthogonal mechanisms (state vs functionality)
%
Frontier
Ruggedness via verification
Formal
Methods Testing
TOP-DOWN
FAULT INJECTORS, INPUT GENERATORS
BOTTOM-UP
LINEAGE DRIVEN FAULT INJECTORS
WHITE / BLACK BOX
WE KNOW (OR NOT) ABOUT THE SYSTEM
HUMAN ASSISTED PROOFS
SAFETY CRITICAL (TLA+, COQ, ISABELLE)
MODEL CHECKING
PROPERTIES + TRANSITIONS (SPIN, TLA+)
LIGHTWEIGHT FM
BEST OF BOTH WORLDS (ALLOY, SAT)
&
! " # $ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! "
#$ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! " $ %
♥ ' ! " # $ %♥ ' ! " # $ % # $ %♥♥ ' ! " $
! " # $ %♥ ' ! ! "' ! "% # $ %♥ '♥ $ %♥
#$ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! " $ %
♥ ' ! " # $ %♥ ' ! " # $ % # $ %♥♥ ' ! " $
! " # $ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! "
#$ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! " $ %
♥ ' ! " # $ %♥ ' ! " # $ % # $ %♥♥ ' ! " $
! " # $ %♥ ' ! ! "' ! "% # $ %♥ '♥ $ %♥
#$ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! " $ %
♥ ' ! " # $ %♥ ' ! " # $ % # $ %♥♥ ' ! " $
MOLLY: Lineage Driven Fault Injection
Reasons backwards from correct
system outcomes & determines if a
failure could have prevented it
MOLLY only injects the failures it can
prove might affect an outcome
Ruggedness with MOLLY
“Without explicitly
forcing a system to
fail, you have no
confidence that it
will operate
correctly in failure
modes”Caitie McCaffrey’s pearls of wisdom
'(
Verifier
Programmer
MOLLY helps us undestand failure
“Presents a middle ground
between pragmatism and
formalism, dictated by the
importance of verifying fault
tolerance in spite of the
complexity of the space of
faults”
Now let’s
.Wrap things
Agile Lean Rugged
tl;dr - foundations
A scalable
system may
not be a lean
system
Pursuing
scalability out
of context can
be COSTly
Designing for
change is
designing for
success
Think about
availability in
terms of yield
and harvest
Graceful
degradation is a
design outcome
! !
Agile Lean Rugged
tl;dr - Frontiers
Asking the
wrong question
is wasteful
Think about
what is truly
needed
Use
approximations
State can be
challenging
Saving state in
shared
memory allows
us to restart
DB processes
faster
Reasoning
backwards from
correct system
output helps us
determine the
execution
failures that
prevent it from
happening
Join your local PWL and
read The Morning Paper!
github.com/Randommood/GotoLondon2015
Papers are a lot of fun!)
✨ ✨
*+ ,- *+ ,- *+ ,- *+ ,- *+ ,- *+ ,
*+,-*+,-*+,-*+,-*+,-*+,
DRANKS!

Contenu connexe

En vedette

History 141 canada part2
History 141   canada part2History 141   canada part2
History 141 canada part2Sophia Young
 
Data antipatterns NYC Devops - 2014
Data antipatterns NYC Devops - 2014Data antipatterns NYC Devops - 2014
Data antipatterns NYC Devops - 2014Ines Sombra
 
Submission for Short "commercial" turning a "worst" idea into a good one By E...
Submission for Short "commercial" turning a "worst" idea into a good one By E...Submission for Short "commercial" turning a "worst" idea into a good one By E...
Submission for Short "commercial" turning a "worst" idea into a good one By E...Codescape Consultant Pvt Ltd Jaipur
 
Relational Databases in the Cloud - Great Wide Open 2014
Relational Databases in the Cloud - Great Wide Open 2014Relational Databases in the Cloud - Great Wide Open 2014
Relational Databases in the Cloud - Great Wide Open 2014Ines Sombra
 
Getting started with Riak in the Cloud
Getting started with Riak in the CloudGetting started with Riak in the Cloud
Getting started with Riak in the CloudInes Sombra
 
Presentation hubert delafon_140328
Presentation hubert delafon_140328Presentation hubert delafon_140328
Presentation hubert delafon_140328ACPcef
 
From 0 to Capacity Planning
From 0 to Capacity PlanningFrom 0 to Capacity Planning
From 0 to Capacity PlanningInes Sombra
 
North Bay Ruby Meetup 101911
North Bay Ruby Meetup 101911North Bay Ruby Meetup 101911
North Bay Ruby Meetup 101911Ines Sombra
 
Testing & Integration (The Remix)
 Testing & Integration (The Remix) Testing & Integration (The Remix)
Testing & Integration (The Remix)Ines Sombra
 
Product of the Year 2015 - charbel kahaleh
Product of the Year  2015 - charbel kahalehProduct of the Year  2015 - charbel kahaleh
Product of the Year 2015 - charbel kahalehCharbel Kahaleh
 
Computational Patterns of the Cloud - QCon NYC 2014
Computational Patterns of the Cloud - QCon NYC 2014Computational Patterns of the Cloud - QCon NYC 2014
Computational Patterns of the Cloud - QCon NYC 2014Ines Sombra
 
Riak at Engine Yard Cloud
Riak at Engine Yard CloudRiak at Engine Yard Cloud
Riak at Engine Yard CloudInes Sombra
 
History 140 the Jesuit Relations
History 140   the Jesuit RelationsHistory 140   the Jesuit Relations
History 140 the Jesuit RelationsSophia Young
 
Data Antipatterns
Data AntipatternsData Antipatterns
Data AntipatternsInes Sombra
 
How the Cloud is changing the world
How the Cloud is changing the worldHow the Cloud is changing the world
How the Cloud is changing the worldInes Sombra
 

En vedette (20)

History 141 canada part2
History 141   canada part2History 141   canada part2
History 141 canada part2
 
Data antipatterns NYC Devops - 2014
Data antipatterns NYC Devops - 2014Data antipatterns NYC Devops - 2014
Data antipatterns NYC Devops - 2014
 
Submission for Short "commercial" turning a "worst" idea into a good one By E...
Submission for Short "commercial" turning a "worst" idea into a good one By E...Submission for Short "commercial" turning a "worst" idea into a good one By E...
Submission for Short "commercial" turning a "worst" idea into a good one By E...
 
Et news maninder
Et  news maninderEt  news maninder
Et news maninder
 
Relational Databases in the Cloud - Great Wide Open 2014
Relational Databases in the Cloud - Great Wide Open 2014Relational Databases in the Cloud - Great Wide Open 2014
Relational Databases in the Cloud - Great Wide Open 2014
 
Getting started with Riak in the Cloud
Getting started with Riak in the CloudGetting started with Riak in the Cloud
Getting started with Riak in the Cloud
 
Presentation hubert delafon_140328
Presentation hubert delafon_140328Presentation hubert delafon_140328
Presentation hubert delafon_140328
 
Hello data
Hello dataHello data
Hello data
 
From 0 to Capacity Planning
From 0 to Capacity PlanningFrom 0 to Capacity Planning
From 0 to Capacity Planning
 
PgPyDay
PgPyDayPgPyDay
PgPyDay
 
North Bay Ruby Meetup 101911
North Bay Ruby Meetup 101911North Bay Ruby Meetup 101911
North Bay Ruby Meetup 101911
 
Testing & Integration (The Remix)
 Testing & Integration (The Remix) Testing & Integration (The Remix)
Testing & Integration (The Remix)
 
Product of the Year 2015 - charbel kahaleh
Product of the Year  2015 - charbel kahalehProduct of the Year  2015 - charbel kahaleh
Product of the Year 2015 - charbel kahaleh
 
Computational Patterns of the Cloud - QCon NYC 2014
Computational Patterns of the Cloud - QCon NYC 2014Computational Patterns of the Cloud - QCon NYC 2014
Computational Patterns of the Cloud - QCon NYC 2014
 
Riak at Engine Yard Cloud
Riak at Engine Yard CloudRiak at Engine Yard Cloud
Riak at Engine Yard Cloud
 
Ricon east
Ricon eastRicon east
Ricon east
 
Postgres Open
Postgres OpenPostgres Open
Postgres Open
 
History 140 the Jesuit Relations
History 140   the Jesuit RelationsHistory 140   the Jesuit Relations
History 140 the Jesuit Relations
 
Data Antipatterns
Data AntipatternsData Antipatterns
Data Antipatterns
 
How the Cloud is changing the world
How the Cloud is changing the worldHow the Cloud is changing the world
How the Cloud is changing the world
 

Similaire à Agile, Rugged, and Lean - The Paper Edition

Failure the-good-parts
Failure the-good-partsFailure the-good-parts
Failure the-good-partslegendofklang
 
Continuous Automated Testing - Cast conference workshop august 2014
Continuous Automated Testing - Cast conference workshop august 2014Continuous Automated Testing - Cast conference workshop august 2014
Continuous Automated Testing - Cast conference workshop august 2014Noah Sussman
 
Fallacy of Fast
Fallacy of FastFallacy of Fast
Fallacy of FastFastly
 
Test driven infrastructure development (2 - puppetconf 2013 edition)
Test driven infrastructure development (2 - puppetconf 2013 edition)Test driven infrastructure development (2 - puppetconf 2013 edition)
Test driven infrastructure development (2 - puppetconf 2013 edition)Tomas Doran
 
Just the basics_strata_2013
Just the basics_strata_2013Just the basics_strata_2013
Just the basics_strata_2013Ken Mwai
 
Understanding Autovacuum
Understanding AutovacuumUnderstanding Autovacuum
Understanding AutovacuumDan Robinson
 
Green Custard Friday Talk 19: Chaos Engineering
Green Custard Friday Talk 19: Chaos EngineeringGreen Custard Friday Talk 19: Chaos Engineering
Green Custard Friday Talk 19: Chaos EngineeringGreen Custard
 
What Problem Is Your Startup Solving?
What Problem Is Your Startup Solving?What Problem Is Your Startup Solving?
What Problem Is Your Startup Solving?Zach Nies
 
The Quest for Global Design Principles
The Quest for Global Design PrinciplesThe Quest for Global Design Principles
The Quest for Global Design PrinciplesMatthias Noback
 
Moved to https://slidr.io/azzazzel/web-application-performance-tuning-beyond-xmx
Moved to https://slidr.io/azzazzel/web-application-performance-tuning-beyond-xmxMoved to https://slidr.io/azzazzel/web-application-performance-tuning-beyond-xmx
Moved to https://slidr.io/azzazzel/web-application-performance-tuning-beyond-xmxMilen Dyankov
 
How to be Wrong (or How to be Successful at Being Wrong)
How to be Wrong (or How to be Successful at Being Wrong)How to be Wrong (or How to be Successful at Being Wrong)
How to be Wrong (or How to be Successful at Being Wrong)Russell Miles
 
Erlang - Because s**t Happens by Mahesh Paolini-Subramanya
Erlang - Because s**t Happens by Mahesh Paolini-SubramanyaErlang - Because s**t Happens by Mahesh Paolini-Subramanya
Erlang - Because s**t Happens by Mahesh Paolini-SubramanyaHakka Labs
 
Transformation Communities
Transformation CommunitiesTransformation Communities
Transformation CommunitiesKristin Wolff
 
Startupfest 2012 - Coefficients of friction
Startupfest 2012 - Coefficients of frictionStartupfest 2012 - Coefficients of friction
Startupfest 2012 - Coefficients of frictionStartupfest
 
Jogging While Driving, and Other Software Engineering Research Problems (invi...
Jogging While Driving, and Other Software Engineering Research Problems (invi...Jogging While Driving, and Other Software Engineering Research Problems (invi...
Jogging While Driving, and Other Software Engineering Research Problems (invi...David Rosenblum
 
The Enterprise Architecture You Always Wanted
The Enterprise Architecture You Always WantedThe Enterprise Architecture You Always Wanted
The Enterprise Architecture You Always WantedThoughtworks
 

Similaire à Agile, Rugged, and Lean - The Paper Edition (20)

AWS Elastic Beanstalk
AWS Elastic BeanstalkAWS Elastic Beanstalk
AWS Elastic Beanstalk
 
Failure the-good-parts
Failure the-good-partsFailure the-good-parts
Failure the-good-parts
 
Continuous Automated Testing - Cast conference workshop august 2014
Continuous Automated Testing - Cast conference workshop august 2014Continuous Automated Testing - Cast conference workshop august 2014
Continuous Automated Testing - Cast conference workshop august 2014
 
Fallacy of Fast
Fallacy of FastFallacy of Fast
Fallacy of Fast
 
Test driven infrastructure development (2 - puppetconf 2013 edition)
Test driven infrastructure development (2 - puppetconf 2013 edition)Test driven infrastructure development (2 - puppetconf 2013 edition)
Test driven infrastructure development (2 - puppetconf 2013 edition)
 
Just the basics_strata_2013
Just the basics_strata_2013Just the basics_strata_2013
Just the basics_strata_2013
 
Understanding Autovacuum
Understanding AutovacuumUnderstanding Autovacuum
Understanding Autovacuum
 
Green Custard Friday Talk 19: Chaos Engineering
Green Custard Friday Talk 19: Chaos EngineeringGreen Custard Friday Talk 19: Chaos Engineering
Green Custard Friday Talk 19: Chaos Engineering
 
What Problem Is Your Startup Solving?
What Problem Is Your Startup Solving?What Problem Is Your Startup Solving?
What Problem Is Your Startup Solving?
 
The Quest for Global Design Principles
The Quest for Global Design PrinciplesThe Quest for Global Design Principles
The Quest for Global Design Principles
 
Moved to https://slidr.io/azzazzel/web-application-performance-tuning-beyond-xmx
Moved to https://slidr.io/azzazzel/web-application-performance-tuning-beyond-xmxMoved to https://slidr.io/azzazzel/web-application-performance-tuning-beyond-xmx
Moved to https://slidr.io/azzazzel/web-application-performance-tuning-beyond-xmx
 
How to be Wrong (or How to be Successful at Being Wrong)
How to be Wrong (or How to be Successful at Being Wrong)How to be Wrong (or How to be Successful at Being Wrong)
How to be Wrong (or How to be Successful at Being Wrong)
 
Erlang - Because s**t Happens by Mahesh Paolini-Subramanya
Erlang - Because s**t Happens by Mahesh Paolini-SubramanyaErlang - Because s**t Happens by Mahesh Paolini-Subramanya
Erlang - Because s**t Happens by Mahesh Paolini-Subramanya
 
Transformation Communities
Transformation CommunitiesTransformation Communities
Transformation Communities
 
Startupfest 2012 - Coefficients of friction
Startupfest 2012 - Coefficients of frictionStartupfest 2012 - Coefficients of friction
Startupfest 2012 - Coefficients of friction
 
Jogging While Driving, and Other Software Engineering Research Problems (invi...
Jogging While Driving, and Other Software Engineering Research Problems (invi...Jogging While Driving, and Other Software Engineering Research Problems (invi...
Jogging While Driving, and Other Software Engineering Research Problems (invi...
 
Device deployment
Device deploymentDevice deployment
Device deployment
 
Engineering Reliability and Resilience
Engineering Reliability and ResilienceEngineering Reliability and Resilience
Engineering Reliability and Resilience
 
Software Testing_Overview
Software Testing_OverviewSoftware Testing_Overview
Software Testing_Overview
 
The Enterprise Architecture You Always Wanted
The Enterprise Architecture You Always WantedThe Enterprise Architecture You Always Wanted
The Enterprise Architecture You Always Wanted
 

Dernier

Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...roncy bisnoi
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130Suhani Kapoor
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Call Girls in Nagpur High Profile
 
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)Suman Mia
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations120cr0395
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Christo Ananth
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130Suhani Kapoor
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxpurnimasatapathy1234
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Dr.Costas Sachpazis
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Serviceranjana rawat
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlysanyuktamishra911
 
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).pptssuser5c9d4b1
 
UNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular ConduitsUNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular Conduitsrknatarajan
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Dr.Costas Sachpazis
 
AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdfankushspencer015
 
result management system report for college project
result management system report for college projectresult management system report for college project
result management system report for college projectTonystark477637
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxpranjaldaimarysona
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escortsranjana rawat
 

Dernier (20)

Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
 
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
 
Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptx
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
 
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
(RIA) Call Girls Bhosari ( 7001035870 ) HI-Fi Pune Escorts Service
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghly
 
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
247267395-1-Symmetric-and-distributed-shared-memory-architectures-ppt (1).ppt
 
UNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular ConduitsUNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular Conduits
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
 
AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdf
 
result management system report for college project
result management system report for college projectresult management system report for college project
result management system report for college project
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptx
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
 

Agile, Rugged, and Lean - The Paper Edition

  • 2. The Paper Edition! ! " # $ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! " ! " # $ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! " #$ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! " $ % ♥ ' ! " # $ %♥ ' ! " # $ % # $ %♥♥ ' ! " $ ! " # $ %♥ ' ! ! "' ! "% # $ %♥ '♥ $ %♥ Agile, Lean, Rugged
  • 6. The Rules Only 5 minutes per paperFoundation ! Frontier A challenge! No Cheating!
  • 7. A paper tour of Agile
  • 9. We disdain old software
  • 10. “The only systems that don’t get changed are those that are so bad nobody wants to use them”
  • 12. Design for change Embrace modularity & information hiding Stress clarity & documentation Amputate disease-ridden parts Plan for eventual replacement Preventative medicine
  • 14. What do we want? We want agile Development Testing and verification Delivery and we want agility of operations too!
  • 15. Facebook Scuba " Data lives in server’s heap
  • 16. The problem with state Restarting a database clears its memory Reading 120GB of data from disk takes about 3 hours per server (8 per machine) Even with orchestrated restarts & partial queries total of ~12 hours to restart a fleet Operationally expensive & slow! #
  • 17. “When we shutdown a server for a planned upgrade, we know that the memory state is good… so we decided to decouple the memory’s lifetime from the process’s lifetime“
  • 18. 2-3 minutes per server Fleet restarts < 1 hour now! $
  • 19. A paper tour of Lean
  • 21. Which system is better?
  • 22. Which system is better?
  • 24. Common wisdom Effective scaling is evidence of solid system building Why does this happen? McSherry et al. Any system can scale arbitrarily well with a sufficient lack of care in its implementation
  • 25. ! " # $ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! " #$ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! " $ % ♥ ' ! " # $ %♥ ' ! " # $ % # $ %♥♥ ' ! " $ ! " # $ %♥ ' ! ! "' ! "% # $ %♥ '♥ $ %♥ #$ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! " $ % ♥ ' ! " # $ %♥ ' ! " # $ % # $ %♥♥ ' ! " $ ! " # $ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! " #$ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! " $ % ♥ ' ! " # $ %♥ ' ! " # $ % # $ %♥♥ ' ! " $ ! " # $ %♥ ' ! ! "' ! "% # $ %♥ '♥ $ %♥ #$ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! " $ % ♥ ' ! " # $ %♥ ' ! " # $ % # $ %♥♥ ' ! " $ COST Configuration that outperforms a single thread COST of a system is the hardware platform (number of cores) required before the platform outperforms a competent single threaded implementation
  • 26.
  • 27. “If you’re building a system, make sure it’s better than your laptop. If you’re using a system, make sure it’s better than your laptop” McSherry
  • 29.
  • 30.
  • 32. Error bounds & confidence
  • 34. A paper tour of Rugged
  • 36. Strategies to enhance ruggedness in the presence of failures Better way to think about system availability Ruggedness as availability
  • 37. Harvest: fraction of the complete result Yield: fraction of answered queries
  • 38. Yield as response ruggedness Close to uptime (% requests answered successfully) but more useful because it directly maps to user experience Failure during high & low traffic generates different yields. Uptime misses this Focus on yield rather than uptime
  • 39. Harvest as quality of response From Coda Hale’s “You can’t sacrifice partition tolerance” Server A Server B Server C Baby AnimalsCute
  • 40. Harvest as quality of response From Coda Hale’s “You can’t sacrifice partition tolerance” Server A Server B Server C Baby AnimalsCute X 66% harvest
  • 41. #1: Probabilistic Availability Graceful harvest degradation under faults Randomness to make the worst-case & average-case the same Replication of high-priority data for greater harvest control Degrading results based on client capability
  • 42. #2 Decomposition & Orthogonality Decomposing into subsystems independently intolerant to harvest degradation (fail by reducing yield). But app can continue if they fail Only provide strong consistency for the subsystems that need it Orthogonal mechanisms (state vs functionality) %
  • 44. Ruggedness via verification Formal Methods Testing TOP-DOWN FAULT INJECTORS, INPUT GENERATORS BOTTOM-UP LINEAGE DRIVEN FAULT INJECTORS WHITE / BLACK BOX WE KNOW (OR NOT) ABOUT THE SYSTEM HUMAN ASSISTED PROOFS SAFETY CRITICAL (TLA+, COQ, ISABELLE) MODEL CHECKING PROPERTIES + TRANSITIONS (SPIN, TLA+) LIGHTWEIGHT FM BEST OF BOTH WORLDS (ALLOY, SAT) &
  • 45. ! " # $ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! " #$ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! " $ % ♥ ' ! " # $ %♥ ' ! " # $ % # $ %♥♥ ' ! " $ ! " # $ %♥ ' ! ! "' ! "% # $ %♥ '♥ $ %♥ #$ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! " $ % ♥ ' ! " # $ %♥ ' ! " # $ % # $ %♥♥ ' ! " $ ! " # $ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! " #$ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! " $ % ♥ ' ! " # $ %♥ ' ! " # $ % # $ %♥♥ ' ! " $ ! " # $ %♥ ' ! ! "' ! "% # $ %♥ '♥ $ %♥ #$ %♥ ' ! " # $ %♥ ' ! " # $ %♥ ' ! " $ % ♥ ' ! " # $ %♥ ' ! " # $ % # $ %♥♥ ' ! " $ MOLLY: Lineage Driven Fault Injection Reasons backwards from correct system outcomes & determines if a failure could have prevented it MOLLY only injects the failures it can prove might affect an outcome
  • 46. Ruggedness with MOLLY “Without explicitly forcing a system to fail, you have no confidence that it will operate correctly in failure modes”Caitie McCaffrey’s pearls of wisdom '( Verifier Programmer
  • 47. MOLLY helps us undestand failure
  • 48. “Presents a middle ground between pragmatism and formalism, dictated by the importance of verifying fault tolerance in spite of the complexity of the space of faults”
  • 50. Agile Lean Rugged tl;dr - foundations A scalable system may not be a lean system Pursuing scalability out of context can be COSTly Designing for change is designing for success Think about availability in terms of yield and harvest Graceful degradation is a design outcome ! !
  • 51. Agile Lean Rugged tl;dr - Frontiers Asking the wrong question is wasteful Think about what is truly needed Use approximations State can be challenging Saving state in shared memory allows us to restart DB processes faster Reasoning backwards from correct system output helps us determine the execution failures that prevent it from happening
  • 52. Join your local PWL and read The Morning Paper! github.com/Randommood/GotoLondon2015 Papers are a lot of fun!)
  • 53. ✨ ✨ *+ ,- *+ ,- *+ ,- *+ ,- *+ ,- *+ , *+,-*+,-*+,-*+,-*+,-*+, DRANKS!