Professional Documents
Culture Documents
databases
R & G Chapter 22
What is a distributed
database?
Resilience to failures
Data size
Throughput
versus
Or needs to be distributed
Communication needed
Types of distributed
databases
Client-server
User interaction
Network
Data processing
Parallel database
Primary/secondary
Multidatabase
What is shared?
How to distribute the data?
How to process the data?
How to update the data?
What is shared?
Memory
Most
Most modern
modern DBMSs
DBMSs
CPUs
RAM
Disk
What is shared?
Disk
Oracle
Oracle RAC
RAC
RAM
What is shared?
Nothing
Search
Search engines,
engines, Teradata
Teradata
RAM
Server 1
6/1/07
424252
Couch
$570
6/1/07
256623
Car
$1123
6/2/07
636353
Bike
$86
6/5/07
662113
Chair
$10
6/7/07
121113
Lamp
$19
6/9/07
887734
Bike
$56
6/11/07
252111
Scooter
$18
6/11/07
116458
Hammer
$8000
Server 2
Server 3
Server 4
Range partitioning
(key,value)
<= X
>X
Server 1
6/1/07
424252
Couch
$570
6/1/07
256623
Car
$1123
6/2/07
636353
Bike
$86
6/5/07
662113
Chair
$10
6/7/07
121113
Lamp
$19
6/9/07
887734
Bike
$56
6/11/07
252111
Scooter
$18
6/11/07
116458
Hammer
$8000
Server 2
Server 3
Server 4
Query processing
Intra-operator parallelism
Inter-operator parallelism
Parallel scanning
Result
filter
filter
filter
filter
filter
filter
Sorting
Sorting
Join
Semi-join
Inter-operator parallelism
Synchronous: read-any-write-all
Reads
Reads are
are fast
fast
Synchronous: voting
Synchronous: voting
Writes
Writes tolerant
tolerant to
to disconnection
disconnection
Consistency of distributed
data
Primary/secondary
Two-phase commit
PREPARE
COMMIT
PREPARED PREPARED
Two-phase commit
PREPARE
ABORT
PREPARED ABORT
Two-phase commit
PREPARE
ABORT
PREPARED
Two-phase commit
PREPARE
X
PREPARED PREPARED
Conclusion
Performance
Fault tolerance
Scale
But complex!