April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 -...

60
2008 , 21 April CSCI585 - Distributed Databases Distributed Databases by Farnoush Banaei-Kashani Excerpt from “Principles of Distributed Database Systems” by M. Tamer Özsu and Patrick Valduriez

Transcript of April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 -...

Page 1: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases

Distributed Databases

by Farnoush Banaei-Kashani

Excerpt from “Principles of Distributed Database Systems”by M. Tamer Özsu and Patrick Valduriez

Page 2: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 2

File Systems

Page 3: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 3

Database Management System

Page 4: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 4

Motivation

Page 5: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 5

Distributed DBMS – Reality

Page 6: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 6

Distributed Database – User View

Page 7: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 7

Applications – First Generation

Page 8: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 8

Applications – Second Generation

� Sensor Databases

Page 9: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 9

Applications – Second Generation

http://www.greatduckisland.net/

Page 10: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 10

Applications – Second Generation

� Peer-to-Peer Databases

K V

K V

K V

K V

K V

K V

K V

K V

K V

K V

K V

Page 11: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 11

Applications – Second Generation

K V

K V

K V

K V

K V

K V

K V

K V

K V

K V

K V

insert(K1,V1)

Page 12: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 12

Applications – Second Generation

K V

K V

K V

K V

K V

K V

K V

K V

K V

K V

K V

insert(K1,V1)

Page 13: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 13

Applications – Second Generation

(K1,V1)

K V

K VK V

K V

K V

K V

K V

K V

K V

K V

K V

Page 14: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 14

Applications – Second Generation

retrieve (K1)

K V

K VK V

K V

K V

K V

K V

K V

K V

K V

K V

Page 15: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 15

Applications – Second Generation

K V

K V

K V

K V

K V

K V

K V

K V

K V

K V

K V

Page 16: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 16

Applications – Second Generation

Page 17: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 17

Topics

Page 18: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 18

Topics

Page 19: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 19

Outline

� Definition and Differentiation � Promises and Challenges� Architecture Alternatives

Page 20: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 20

Distributed Computing

Page 21: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 21

What is distributed …

Page 22: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 22

What is Distributed Database System?

Page 23: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 23

What is not a DDBS?

Page 24: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 24

What else is not a DDBS?

Page 25: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 25

Centralized DBMS on Network

Page 26: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 26

Distributed DBMS Environment

Page 27: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 27

What else is not a DDBS?

Page 28: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 28

Shared-Memory Architecture

Page 29: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 29

Shared-Disk Architecture

Page 30: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 30

Shared-Nothing Architecture

Page 31: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 31

Outline

� Definition and Differentiation � Promises and Challenges� Architecture Alternatives

Page 32: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 32

Distributed Database Promises

Page 33: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 33

Example

Page 34: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 34

Example

Page 35: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 35

Transparency

Page 36: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 36

Distributed DBMS – Reality

Page 37: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 37

Distributed Database – User View

Page 38: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 38

Distributed Database Promises

Page 39: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 39

Distributed Database Promises

Page 40: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 40

Performance Improvement

Page 41: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 41

Parallelism Requirements

Page 42: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 42

Distributed Database Promises

Page 43: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 43

Distributed Database Promises

Page 44: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 44

Outline

� Definition and Differentiation � Promises and Challenges� Architecture Alternatives

Page 45: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 45

Standard ANSI Database Architecture

Page 46: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 46

Dimensions of the Problem

Page 47: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 47

DBMS Architecture Alternatives

Page 48: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 48

1. Multiple Clients / Single Server

Page 49: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 49

1'. Multiple Clients / Multiple Server

Page 50: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 50

2. Datalogical Distributed Database Architecture

Page 51: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 51

3. Datalogical Multi-DBMS Architecture

Page 52: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 52

Global Directory - Design Dimensions

Page 53: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 53

Next: Focus Issues

Page 54: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 54

References

Page 55: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 55

References

Page 56: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 56

References

Page 57: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 57

References

Page 58: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 58

References

Page 59: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 59

References

Page 60: April 2008 - InfoLab€¦ · 1. Multiple Clients / Single Server . 2008, 21 April CSCI585 - Distributed Databases 49 1'. Multiple Clients / Multiple Server. 2008, 21 April CSCI585

2008, 21 April CSCI585 - Distributed Databases 60

References