a software architecture for translucent replication
DESCRIPTION
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. - PowerPoint PPT PresentationTRANSCRIPT
A Software Architecture for Translucent
Replication
Etienne Antoniutti Di MuroUniversità degli Studi di Trieste, Italy
29th November, 2005 2nd Middleware Doctoral Symposium @ Middleware 2005 Conference, Grenoble, France
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
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
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
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
< 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
> 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
< 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
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
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
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
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
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
>
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
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
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
> 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
> 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
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
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
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
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
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