replication in distributed real time database

Post on 15-Jul-2015

50 Views

Category:

Engineering

4 Downloads

Preview:

Click to see full reader

TRANSCRIPT

A Seminar on

Replication in Distributed Real Time Database

Presented By

Ashish Upadhyay, CSE,III Yr.

CONTENTS

Introduction

Distributed Real Time Database

Replication

Why do we need it?

Replication Model

Replication Strategies

Replication Protocols

Advantages

INTRODUCTION

• In real-time distributed databasesystems, timeliness of results can be asimportant as their correctness.

• The objective is to provide a high degreeof concurrency and thus faster averageresponse time without violating dataconsistency

Distributed Real Time Database

• Database is a collection of data items controlledby Database Management System.

• A Distributed database is a database allocatedto multiple nodes in a distributed system, wherethe database is the object of distribution.

• A Real-time database is a database systemwhich uses real-time processing to handleworkloads whose state is constantly changing.

Data Replication

•A strategy in which multiple copies of some data are stored at multiple sites.

•A technique by which database can meet the demand of real time application.

Why do we need it ?

• Availability

• Performance

Middleware Architecture

Site 1 File XSite 2 File X

User 1User 2

User 3Site 3 File XSite n File X

Replication ModelReplication model can be described using five generic phases

• Request (RE): The client submits an operation to one (ormore) replicas.

• Server Coordination (SC): The replica servers coordinatewith each other to synchronise the execution of theoperation

• Execution (EX): The operation is executed on the replicaservers.

• Agreement Coordination (AC): The replica servers agreeon the result of the execution.

• Response (END): The outcome of the operation istransmitted back to the client.

Replication Strategies

• Grey et al have categorized database replicationprotocols using two parameters :

When update propagation takes place?

Who can perform updates?

When update propagation takes place ?Synchronous (Eager) Replication

It keeps all replicas exactly synchronized at all nodesby updating all the replicas as part of one transaction

Write AWrite BWrite CCommit

Write AWrite A

Write AWrite B

Write BWrite B

Write CWrite C

Write CCommit

CommitCommit

Single NodeTransaction

Three Node EagerTransaction

• Asynchronous (Lazy) Replication

Each transaction updates a replica and the update is propagated to other replicas

Write AWrite BWrite CCommit

Write AWrite BWrite CCommit

Write AWrite BWrite CCommit

Write AWrite BWrite CCommit

Single NodeTransaction

Three Node LazyTransaction

Who Can perform updates ?Group

Any node with a copy of data item can update it, this is often called update anywhere.

Object Group

• Master

Each object has a master node . Only master can update the primary copy of the object. All other replicas are read only.

ObjectMaster

Object Master

Replication Protocols

• Eager Primary Key Replication

• Eager Update Everywhere Replication

• Lazy Primary Key

• Lazy Update Everywhere

Advantages

• Availability

• Increased parallelism

• Less Data Movement over Network

Conclusion

• Replication is need of hour.

• We can achieve replication in real time distributed database using any of the discussed protocols.

• Each protocol is differentiated on behalf of time execution and consistency in transaction.

• Area of active research.

THANK YOU

QUERY?

top related