a software architecture for translucent replication etienne antoniutti di muro università degli...

23
A Software Architecture for Translucent Replication Etienne Antoniutti Di Muro Università degli Studi di Trieste, Italy [email protected] 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France

Upload: violet-mckenzie

Post on 04-Jan-2016

218 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: A Software Architecture for Translucent Replication Etienne Antoniutti Di Muro Università degli Studi di Trieste, Italy eantoniutti@units.it 29th November,

A Software Architecture for Translucent

Replication

Etienne Antoniutti Di MuroUniversità degli Studi di Trieste, Italy

[email protected]

29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France

Page 2: A Software Architecture for Translucent Replication Etienne Antoniutti Di Muro Università degli Studi di Trieste, Italy eantoniutti@units.it 29th November,

Directions…Directions…

Arjuna Technologies Ltd.Newcastle upon Tyne, UK> Stuart Wheater (co-supervisor )

Università degli Studi di Trieste> Etienne Antoniutti Di Muro> Prof. Alberto Bartoli (supervisor )

2nd Middleware Doctoral Symposium @ Middleware 2005 Conference,Grenoble, France29th November 2005

A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro

29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 2/23

Page 3: A Software Architecture for Translucent Replication Etienne Antoniutti Di Muro Università degli Studi di Trieste, Italy eantoniutti@units.it 29th November,

Food for thought…Food for thought…> Background and motivations:

> Middleware transparency, crisis and paradox< interlude: clustering and replication />> Dependability vs. performance

> Goal: Address dependability and performance conflicts

> Proposal: Translucent replication:> top-down and bottom-up translucency models> application requirements

> Evaluation: Translucent replication in a real case scenario< interlude: JMS clustering /> > JMS translucent replication

> Summary and Conclusions

29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 3/23

A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro

Page 4: A Software Architecture for Translucent Replication Etienne Antoniutti Di Muro Università degli Studi di Trieste, Italy eantoniutti@units.it 29th November,

Background and motivations:Background and motivations:

> to provide a common high-level environment to the components of a distributed system> to isolate applications form underlying hw/sw changes

distributed application(s)

><

operating system hardware

><

MIDDLEWARE ><

Application(s)

Domain Specific Services

Host-infrastructure Services

Common Services

Distribution Services

System Platform

network

Application(s)

Domain Specific Services

Host-infrastructure Services

Common services

Distribution Services

System Platform

> Middleware: born TRANPARENT and HOMOGENEOUS …

29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 4/23

A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro

Page 5: A Software Architecture for Translucent Replication Etienne Antoniutti Di Muro Università degli Studi di Trieste, Italy eantoniutti@units.it 29th November,

Background and motivations:Background and motivations:

> Middleware: …grown MONOLITHIC and HETEROGENEOUS

> to achieve transparency> to accommodate application complexity, distribution models, (COTS) component reuse

> Middleware: requires a partial redesign to match the exact application requirements: the middleware crisis

> Middleware: faces an interoperability problem coming from middleware itself: the middleware paradox

29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 5/23

A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro

Page 6: A Software Architecture for Translucent Replication Etienne Antoniutti Di Muro Università degli Studi di Trieste, Italy eantoniutti@units.it 29th November,

< interlude: clustering and interlude: clustering and replication replication >

> Clustering : exploiting services using multiple physical machines w/ external appearance of one single highly capable server

> performance

> Replication : having a service replicated across multiple nodes ensures that another instance of the service exists if one replica crashes

> service dependability, i.e. availability and reliability

Service

Clients

network

29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 6/23

A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro

Page 7: A Software Architecture for Translucent Replication Etienne Antoniutti Di Muro Università degli Studi di Trieste, Italy eantoniutti@units.it 29th November,

> Clustering and Replication : a common requirement is replication transparency: neither clients nor applications should have to be aware of multiple physical data replicas

> Example:> ADAPT (Middleware Technologies for Adaptive and Composable Distributed Components). EU contract no. IST-2001-37126 (2005)

> no interaction between the replicated beans and the replication layer across the application/middleware boundary29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 7/23

Bean

ADAPT Framework

Replication Algorithm

J2EE Server

Communication with other replicas

A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro

Application/middleware boundary

Page 8: A Software Architecture for Translucent Replication Etienne Antoniutti Di Muro Università degli Studi di Trieste, Italy eantoniutti@units.it 29th November,

< interlude: clustering and interlude: clustering and replication replication />

> Example:> A Replication Framework for Program-to-Program Interaction across Unreliable Networks and its Implementation in a Servlet Container (2004)

> no interaction between the replicated web service and the replication layer across the application/middleware boundary 29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 8/23

Web Service

Servlet Container

Replication Layer

Replication Algorithm

Client

Client

Client

Interceptor

Communication with other replicas

A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro

application/middleware boundary

Page 9: A Software Architecture for Translucent Replication Etienne Antoniutti Di Muro Università degli Studi di Trieste, Italy eantoniutti@units.it 29th November,

Background and motivations:Background and motivations:

> Dependability and performance conflicts:> dependability: long-standing desirable property> efficient replication remains challenging

> Maintaining high performance figures while ensuring strong consistency presents a tough contest

> Replication transparency leads to under-utilization of resources with resulting poor application performance

29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 9/23

A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro

Page 10: A Software Architecture for Translucent Replication Etienne Antoniutti Di Muro Università degli Studi di Trieste, Italy eantoniutti@units.it 29th November,

Goal:Goal:> Address system dependability and performance conflicts introducing Middleware Translucency

> New software architectural model

> Middleware layers interfaces and interactions are exposed to the system designers:

> transparently to the application that want it > with the desired level of granularity to the applications that need it

> Dependability and performance conflicts have to become trade-offs

> Trade-offs offer sets of solutions for the dependability/performance conflicts in the application design space

29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 10/23

A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro

Page 11: A Software Architecture for Translucent Replication Etienne Antoniutti Di Muro Università degli Studi di Trieste, Italy eantoniutti@units.it 29th November,

Goal:Goal:

> Novel translucency models:> top-down : upper layers provide information to lower layers about how they want their requests to be satisfied

> bottom-up : lower layers provide information to upper layers about how they are performing their work and the computational environment, so that upper layers can adapt their behavior

> Strong cross-layer interaction

> Dynamical adaptability of middleware layers

> Middleware high configurability to application requirements

29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 11/23

A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro

Page 12: A Software Architecture for Translucent Replication Etienne Antoniutti Di Muro Università degli Studi di Trieste, Italy eantoniutti@units.it 29th November,

Proposal:Proposal:> Translucent Replication:

> novel architecture for replicated infrastructures> decomposition of system level clustering requirements into lower level functional requirements> layered services realize functional requirements

29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 12/23

distributed application(s)

>

REPLICATIONMIDDLEWARE

network

Application(s)

System Platform

Context Service

Communication Service

Persistence Service

Service State

Custom Service(s) Custom Service(s) Custom Service(s)

>

operating system hardware

>

A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro

Page 13: A Software Architecture for Translucent Replication Etienne Antoniutti Di Muro Università degli Studi di Trieste, Italy eantoniutti@units.it 29th November,

Proposal:Proposal:> Translucent Replication:

> Top-down and bottom-up model

29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 13/23

distributed application(s)

>

REPLICATIONMIDDLEWARE >

>

Semantic Rules

(Custom)Sensors

API

< top-down translucency model components < bottom-up translucency model components < replicated data path

< top-down translucency model information path < bottom-up translucency model information path

Single Replica

network

Application(s)

System platform

Context Service

(GC) Communication Service

Persistence Service

Service State

Custom Service(s) Custom Service(s) Custom Service(s) KnowledgeRepository

<

<

<

A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro

application/middleware boundary

operating system

hardware

>

Page 14: A Software Architecture for Translucent Replication Etienne Antoniutti Di Muro Università degli Studi di Trieste, Italy eantoniutti@units.it 29th November,

Proposal:Proposal:> Translucent Replication: reasoning on data semantics

> generic way to implement smart replication middleware> provides the finest level of granularity for data handling> deals with replication of a wide range of entities:

> i.e. raw and plain data / objects / components> no need to develop specific different patterns

> Application requirements> formal description of operation and data semantics> messages sent to the middleware in a clear an fixed format

>Designers / Programmers> define rules to enable data semantics access> define sensors to monitor resources for application-specific adaptation

29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 14/23

A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro

Page 15: A Software Architecture for Translucent Replication Etienne Antoniutti Di Muro Università degli Studi di Trieste, Italy eantoniutti@units.it 29th November,

Evaluation:Evaluation:> Translucent Replication model evaluation : tricky

> put in numbers the advantages of solutions based on data semantics> flexibility and adaptability of a middleware architecture to specific application dependability solutions> different levels of granularity: explosion of the number of possible tunable parameters> solutions in a multidimensional space> providing translucent methodologies to application design is a trade-off itself

> Model application evaluation

> Real case scenario evaluation

29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 15/23

A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro

Page 16: A Software Architecture for Translucent Replication Etienne Antoniutti Di Muro Università degli Studi di Trieste, Italy eantoniutti@units.it 29th November,

network

System platform

Context Service

(GC) Communication Service

Persistence Service

Service State

KnowledgeRepository

Evaluation:Evaluation:> Model application evaluation

29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 16/23

A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro

application

Application Data<

Data-specific API interaction

<

Data-specific rules<

> Application throughput and latency comparison with a combination of different data

Platform basic sensors

<

< ‘opaque’ data class

< data class

Page 17: A Software Architecture for Translucent Replication Etienne Antoniutti Di Muro Università degli Studi di Trieste, Italy eantoniutti@units.it 29th November,

> JMS specs: put high demands on the message server> JMS specs: rich semantics, represent different types of messaging

> JMS clustering model : shared persistent store

< interlude: JMS clustering interlude: JMS clustering>

29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 17/23

A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro

JMS Primary Server

JMS Backup Server

1

Shared persistent store

Prod.

Cons.

JMS Backup Server

2

> not continuous availability> idle servers: waste of hardware resources

Page 18: A Software Architecture for Translucent Replication Etienne Antoniutti Di Muro Università degli Studi di Trieste, Italy eantoniutti@units.it 29th November,

> JMS clustering model: back channel

< interlude: JMS clustering interlude: JMS clustering />29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 18/23

A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro

> redundant networking> complex system architecture> waste of hardware resources

JMS Backup Server

1

Back channel

Prod.

Cons.

JMS Primary Server

JMS Backup Server

2

Page 19: A Software Architecture for Translucent Replication Etienne Antoniutti Di Muro Università degli Studi di Trieste, Italy eantoniutti@units.it 29th November,

Evaluation:Evaluation:> JMS translucent clustering evaluation

> JMS cluster based on group communication> provides high levels of data redundancy> translucency fits JMS rich semantics:

> i.e. producers / consumers requests> i.e. persistent / non persistent messages

> functional homogeneity JMS cluster design

> ‘Blind’ replication test-bed (comparison baseline)

> JMS Server clients throughput and latency for different levels of translucency

> Scalability: destination, throughput, connections …

>

29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 19/23

A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro

Page 20: A Software Architecture for Translucent Replication Etienne Antoniutti Di Muro Università degli Studi di Trieste, Italy eantoniutti@units.it 29th November,

Summary

> Transparent middleware approach: important issue> Dependability vs. performance conflicts> Transparent replication > Translucent architecture: top-down and bottom-up

models> Novel translucent replication architecture> Evaluation: model application and real case scenario

29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 20/23

A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro

Page 21: A Software Architecture for Translucent Replication Etienne Antoniutti Di Muro Università degli Studi di Trieste, Italy eantoniutti@units.it 29th November,

Conclusions

29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 21/23

A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro

> Translucent middleware> offers appropriate programming interface elements to

the application > pluggable modules (semantic rules) can be defined to

expose the required level of granularity> pluggable sensor can be defined for encapsulating

management resources > cross-layer interactions> access middleware machinery according to application-

specific requirements> adjust the conflicts between dependability and

performance turning them into trade-offs> provide sets of solutions for application

dependabiliy/performance trade-offs

Page 22: A Software Architecture for Translucent Replication Etienne Antoniutti Di Muro Università degli Studi di Trieste, Italy eantoniutti@units.it 29th November,

Questions ?

29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 22/23

A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro

Page 23: A Software Architecture for Translucent Replication Etienne Antoniutti Di Muro Università degli Studi di Trieste, Italy eantoniutti@units.it 29th November,

Thank you!

29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France 23/23

A Software Architecture for Translucent Replication : Etienne Antoniutti Di Muro