Programming Model Support for Dependable, Elastic Cloud Applications

Post on 23-Feb-2016

32 views 0 download

Tags:

description

Programming Model Support for Dependable, Elastic Cloud Applications. Wei-Chiu Chuang , Bo Sang, Charles Killian, Milind Kulkarni. Motivation Elasticity Dependability Implementation Conclusion. Motivation – Cloud in Reality. Motivation -“Ideal” Cloud. Motivation - Failures. Failure!. - PowerPoint PPT Presentation

Transcript of Programming Model Support for Dependable, Elastic Cloud Applications

Chuang, Sang, Killian and Kulkarni, “Programming Model Support for Dependable, Elastic Cloud Applications” HotDep ‘12 1

Programming Model Support for Dependable, Elastic Cloud

Applications

Wei-Chiu Chuang, Bo Sang, Charles Killian, Milind Kulkarni

Chuang, Sang, Killian and Kulkarni, “Programming Model Support for Dependable, Elastic Cloud Applications” HotDep ‘12 2

MotivationElasticity

DependabilityImplementation

Conclusion

Chuang, Sang, Killian and Kulkarni, “Programming Model Support for Dependable, Elastic Cloud Applications” HotDep ‘12 3

Motivation – Cloud in Reality

Chuang, Sang, Killian and Kulkarni, “Programming Model Support for Dependable, Elastic Cloud Applications” HotDep ‘12 5

Motivation -“Ideal” Cloud

Chuang, Sang, Killian and Kulkarni, “Programming Model Support for Dependable, Elastic Cloud Applications” HotDep ‘12

Motivation - Failures

6

Failure!

Single node failure induces global failure recovery

Chuang, Sang, Killian and Kulkarni, “Programming Model Support for Dependable, Elastic Cloud Applications” HotDep ‘12 7

Motivation – Failure in Large Systems

Naïve elasticity makes system more likely to fail

Chuang, Sang, Killian and Kulkarni, “Programming Model Support for Dependable, Elastic Cloud Applications” HotDep ‘12 8

Motivation - Too Big To Fail

Chuang, Sang, Killian and Kulkarni, “Programming Model Support for Dependable, Elastic Cloud Applications” HotDep ‘12 9

MotivationElasticity

DependabilityImplementation

Conclusion

Chuang, Sang, Killian and Kulkarni, “Programming Model Support for Dependable, Elastic Cloud Applications” HotDep ‘12 10

Elasticity – Context

Node state

X

Y

Z

e1 = 2e2

= 5

= 4

Chuang, Sang, Killian and Kulkarni, “Programming Model Support for Dependable, Elastic Cloud Applications” HotDep ‘12 11

Elasticity – Independent Contexts

Node state

X

Y

Z

Context 1: x

Context 2: y

Context 3: z

e1e2

Commit in sequential order

Chuang, Sang, Killian and Kulkarni, “Programming Model Support for Dependable, Elastic Cloud Applications” HotDep ‘12 12

Elasticity - Hierarchical Contexts

global

c’

c

e1e2

message

message

message

Chuang, Sang, Killian and Kulkarni, “Programming Model Support for Dependable, Elastic Cloud Applications” HotDep ‘12 13

Elasticity – Logical NodeDemands

Distribute contexts to more nodes

demand

throughput

Chuang, Sang, Killian and Kulkarni, “Programming Model Support for Dependable, Elastic Cloud Applications” HotDep ‘12 14

Elasticity – Logical Node

demand

throughput

Chuang, Sang, Killian and Kulkarni, “Programming Model Support for Dependable, Elastic Cloud Applications” HotDep ‘12 15

Elasticity – Logical Node

Elasticity: change the mapping of contexts to physical nodes

demand

throughput

Chuang, Sang, Killian and Kulkarni, “Programming Model Support for Dependable, Elastic Cloud Applications” HotDep ‘12 16

MotivationElasticity

DependabilityImplementation

Conclusion

Chuang, Sang, Killian and Kulkarni, “Programming Model Support for Dependable, Elastic Cloud Applications” HotDep ‘12 17

Partial Recovery

123 Failure!

Failure recovery is per-context basis

Chuang, Sang, Killian and Kulkarni, “Programming Model Support for Dependable, Elastic Cloud Applications” HotDep ‘12 18

Event Replay

123 Failure!

Event replay is safe: outgoing messages is deferred until commit

Chuang, Sang, Killian and Kulkarni, “Programming Model Support for Dependable, Elastic Cloud Applications” HotDep ‘12 19

MotivationElasticity

DependabilityImplementation

Conclusion

Chuang, Sang, Killian and Kulkarni, “Programming Model Support for Dependable, Elastic Cloud Applications” HotDep ‘12 20

Head Node

Remote nodes interact with head nodes

Logical node1

Logical node2 Logical node3

Chuang, Sang, Killian and Kulkarni, “Programming Model Support for Dependable, Elastic Cloud Applications” HotDep ‘12 21

MotivationElasticity

DependabilityImplementation

Conclusion

Chuang, Sang, Killian and Kulkarni, “Programming Model Support for Dependable, Elastic Cloud Applications” HotDep ‘12 22

Conclusion

• Elasticity is crucial for cloud applications.• Our programming model enables elastic execution.• The elastic mechanism also helps fault tolerance.

http://www.macesystems.orgMaceSystems

Chuang, Sang, Killian and Kulkarni, “Programming Model Support for Dependable, Elastic Cloud Applications” HotDep ‘12 23

Questions?