ACID (Atomicity, Consistency, Isolation, Durability) Definizione significato

Cos’è il ACID (Atomicity, Consistency, Isolation, Durability)?

Sta per “Atomicità, Consistenza, Isolamento, Durabilità”. L’acronimo ACID definisce quattro caratteristiche che un database deve avere per assicurare l’integrità dei dati. In particolare, queste qualità si applicano alle operazioni di database che scrivono dati nel database. Gli esempi includono l’inserimento, l’aggiornamento e la rimozione di record.

I quattro elementi ACID sono descritti di seguito:

1. Atomicità

L’atomicità garantisce che ogni transazione è un evento “tutto o niente”. In altre parole, ha successo o fallisce completamente. Le operazioni atomiche prevengono la corruzione dei dati impedendo le transazioni parziali. Se un’operazione non può essere completata, viene “riportata” allo stato precedente, come se non fosse mai avvenuta.

Alcuni sistemi di gestione di database possono richiedere una configurazione specifica per essere ACID-compliant. Per esempio, MySQL soddisfa gli standard ACID, ma solo quando usa tables che supportano operazioni atomiche. Le tabelle InnoDB sono conformi agli standard ACID poiché supportano le transazioni, comprese le istruzioni COMMIT e ROLLBACK. Le tabelle MyISAM, che non supportano le transazioni, non sono ACID-compliant.

2. Coerenza

La coerenza è la garanzia che solo i dati validi siano scritti in un database. Per esempio, un database non accetterà transazioni non valide o dati non riconoscibili. Inoltre, può usare un “buffer a doppia scrittura” che memorizza temporaneamente le nuove transazioni. Se il database o il sistema host si blocca inaspettatamente, i dati possono essere ripristinati dal buffer.

3. Isolamento

L’isolamento assicura che ogni transazione sia gestita individualmente. Alcuni database leggono e scrivono dati diverse volte al secondo, il che può richiedere transazioni concorrenti. Anche quando le transazioni avvengono nello stesso momento, possono ancora essere isolate l’una dall’altra. Per esempio, se un’operazione fallisce, non influenzerà le altre che avvengono nello stesso momento. L’isolamento è anche essenziale per la sicurezza del database poiché impedisce che i dati di una transazione siano visibili ad un’altra.

4. Durabilità

La durabilità garantisce che i dati vengano conservati una volta che una transazione è stata processata o “impegnata” nel database. Richiede che i dati siano scritti su memoria non volatile in modo che le transazioni non vadano perse se una applicazione si blocca o si verifica un’interruzione di corrente.

Mentre il software del database può aiutare a garantire la durabilità del database, anche l’hardware è importante. Per esempio, una configurazione di archiviazione RAID può fornire ridondanza se un dispositivo di archiviazione fallisce. Una UPS batteria di backup può prevenire la perdita di dati mantenendo l’energia elettrica se la fonte di alimentazione primaria non è disponibile.


NOTE: “Acid” (minuscolo) è un web browser test che controlla il supporto del browser per specifici HTML tag e CSS regole. Il test più recente, Acid3, è stato prodotto dal gruppo Web Standards Project nel 2008.

La descrizione di ACID (Atomicity, Consistency, Isolation, Durability) in questa pagina è la definizione originale di SharTec.eu. Se volete linkare questa pagina, non dimenticate di citare la fonte dell’articolo.

SharTec.eu mira a spiegare la terminologia informatica in un modo che sia facile da capire. Ci sforziamo di essere semplici e precisi in ogni definizione che pubblichiamo. Se hai commenti sulla descrizione di ACID (Atomicità, Consistenza, Isolamento, Durabilità) o vuoi suggerire un nuovo termine tecnico, contattaci.