Che cos'è la coerenza dei dati?
La coerenza dei dati è il processo per mantenere le informazioni uniformi mentre si spostano attraverso una rete e tra varie applicazioni su un computer. Esistono in genere tre tipi di coerenza dei dati: coerenza temporale, coerenza delle transazioni e coerenza delle applicazioni. Garantire che una rete di computer abbia tutti e tre gli elementi di coerenza dei dati coperti è il modo migliore per garantire che i dati non vengano persi o danneggiati mentre viaggiano attraverso il sistema. In assenza di coerenza dei dati, non ci sono garanzie che qualsiasi informazione sul sistema sia uniforme su tutta la larghezza della rete di computer.
La coerenza temporizzata si occupa di garantire l'uniformità di tutti gli elementi di un sistema in un determinato momento. Ciò impedisce la perdita di dati durante arresti anomali del sistema, arresti impropri e altri problemi sulla rete. Funziona facendo riferimento a pezzi di dati sul sistema tramite timestamp e altri indicatori di coerenza, consentendo al sistema di essere ripristinato in un momento specifico nel tempo con ogni pezzo di dati nella sua posizione originale. Senza coerenza temporale, non vi sarebbe alcuna garanzia che tutte le informazioni su un computer in crash possano essere ripristinate al loro stato pre-crash.
La coerenza delle transazioni è la coerenza di un dato attraverso una transazione funzionante all'interno del computer. Ad esempio, un programma bancario potrebbe originariamente richiedere il saldo del conto iniziale di un utente finale. Da quel momento in poi, l'intero programma si basa sulla cifra del saldo originale che rimane coerente nella memoria del programma. Se il saldo originale è di $ 50.000 Dollari USA ($ 50.000 USD) e un problema sul sistema lo altera a $ 75.000 USD, il computer è privo di coerenza delle transazioni. Senza coerenza delle transazioni, nulla inserito in un programma rimane affidabile.
La coerenza delle applicazioni non è altro che la coerenza delle transazioni tra i programmi. Ad esempio, se il programma bancario comunica con un programma fiscale sul computer, la coerenza dell'applicazione significa che le informazioni che si spostano tra i programmi rimarranno nel loro stato originale. Senza la coerenza dell'applicazione, qui sorgono gli stessi problemi della coerenza delle transazioni errata: non ci sarà modo di dire se un valore inserito nel sistema rimane corretto nel tempo.
Il vantaggio principale di garantire la coerenza dei dati è mantenere l'integrità delle informazioni archiviate sul computer o attraverso la rete. Senza che tutti e tre i tipi di coerenza lavorino insieme, non si può dire se i dati memorizzati sul computer oggi saranno gli stessi a seguito di un arresto anomalo, installazione o altri eventi di sistema importanti. Ecco perché mantenere la coerenza è uno degli obiettivi principali di tutti i programmi per computer basati su dati.