La seconda guerra mondiale per licei e scuole medie
PostgreSQL: Integrità dei dati
1. Transazioni e concorrenza
Integrità dei dati
27/11/08 /home/scotty/enrico/corsoweb/finale/Architettura/arch4.odp page 1
2. Integrità dei dati
Parleremo di
Write ahead log
Wal buffers
Wal flushing
Delayed commit
Transaction log
27/11/08 /home/scotty/enrico/corsoweb/finale/Architettura/arch4.odp page 2
3. Transaction logging WAL
Write ahead logging
Crea un record per ogni insert/update/delete prima che i
dati vengano memorizzati
Il sistema non considera i dati “sicuri” prima che il log non
sia scritto sul disco
Il sistema wal fornisce un meccanismo di recovery nel
caso in cui vi sia un crash di del sistema.
27/11/08 /home/scotty/enrico/corsoweb/finale/Architettura/arch4.odp page 3
4. Commit e Checkpoint
Prima del commit: gli aggiornamenti del log che non
hanno ancora avuto il commit risiedono in memoria
RAM
Dopo il commit: dopo che gli aggiornamenti hanno
avuto il commit tali aggiornamenti passano dalla
shared memory al disco → ovvero al wal file.
Dopo il checkpoint: le pagine dati modificate (8k per
defaults, cioè le pagine che contengono realmente i
dati) vengono scritte dalla shared memory ai files
contenti i dati
27/11/08 /home/scotty/enrico/corsoweb/finale/Architettura/arch4.odp page 4
5. Commit e Checkpoint
Commit Checkpoint
27/11/08 /home/scotty/enrico/corsoweb/finale/Architettura/arch4.odp page 5
6. Commit e Checkpoint
Se il db va off pe qualche
ragione si perdono tutte le
transazioni non committed
e si rieseguono le transazioni
dall'ultimo checkpoint
fino all'ultimo commit.
27/11/08 /home/scotty/enrico/corsoweb/finale/Architettura/arch4.odp page 6
8. Transaction Log Archiving
Trans.
archiver
Log
L'archiver attende
che il file xlog sia
pieno e poi copia il
da un altra parte il
file
Archive command:
copy
27/11/08 /home/scotty/enrico/corsoweb/finale/Architettura/arch4.odp page 8
9. Punto della situazione
Abbiamo parlato di
Write ahead log
Wal buffers
Wal flushing
Delayed commit
Transaction log
27/11/08 /home/scotty/enrico/corsoweb/finale/Architettura/arch4.odp page 9