Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

PostgreSQL: Integrità dei dati

2,284 views

Published on

Slides www.pgtraining.com su PostgreSQL: integrità dei dati

Published in: Education, Technology, Business
  • Be the first to comment

PostgreSQL: Integrità dei dati

  1. 1. Transazioni e concorrenza Integrità dei dati 27/11/08 /home/scotty/enrico/corso­web/finale/Architettura/arch4.odp page 1
  2. 2. Integrità dei dati Parleremo di Write ahead log Wal buffers Wal flushing Delayed commit Transaction log 27/11/08 /home/scotty/enrico/corso­web/finale/Architettura/arch4.odp page 2
  3. 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/corso­web/finale/Architettura/arch4.odp page 3
  4. 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/corso­web/finale/Architettura/arch4.odp page 4
  5. 5. Commit e Checkpoint Commit Checkpoint 27/11/08 /home/scotty/enrico/corso­web/finale/Architettura/arch4.odp page 5
  6. 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/corso­web/finale/Architettura/arch4.odp page 6
  7. 7. WAL ­ Overview postgres postgres postgres Shared data buffers Wal buffer Stable database Trans. Log 27/11/08 /home/scotty/enrico/corso­web/finale/Architettura/arch4.odp page 7
  8. 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/corso­web/finale/Architettura/arch4.odp page 8
  9. 9. Punto della situazione Abbiamo parlato di  Write ahead log Wal buffers Wal flushing Delayed commit Transaction log 27/11/08 /home/scotty/enrico/corso­web/finale/Architettura/arch4.odp page 9

×