logo

Proprietà ACID nel DBMS

DBMS è la gestione dei dati che dovrebbe rimanere integrata quando vengono apportate modifiche. È perché se l'integrità dei dati viene compromessa, tutti i dati verranno disturbati e danneggiati. Pertanto, per mantenere l'integrità dei dati, ci sono quattro proprietà descritte nel sistema di gestione del database, note come ACIDO proprietà. Le proprietà ACID sono pensate per la transazione che passa attraverso un diverso gruppo di attività, e qui arriviamo a vedere il ruolo delle proprietà ACID.

In questa sezione impareremo e comprenderemo le proprietà dell'ACIDo. Impareremo cosa rappresentano queste proprietà e a cosa serve ciascuna proprietà. Comprenderemo anche le proprietà dell'ACIDO con l'aiuto di alcuni esempi.

Proprietà dell'ACIDO

L'espansione del termine ACID definisce per:

Proprietà ACID nel DBMS

1) Atomicità

Il termine atomicità definisce che i dati rimangono atomici. Significa che se viene eseguita un'operazione sui dati, dovrebbe essere eseguita o eseguita completamente o non dovrebbe essere eseguita affatto. Significa inoltre che l'operazione non deve essere interrotta o eseguita parzialmente. In caso di esecuzione di operazioni sulla transazione, l'operazione dovrà essere eseguita integralmente e non parzialmente.

Esempio: Se Remo ha un conto A con $ 30 sul suo conto, desidera inviare $ 10 al conto di Sheero, che è B. Nel conto B, è già presente una somma di $ 100. Quando $ 10 verranno trasferiti sul conto B, la somma diventerà $ 110. Ora, ci saranno due operazioni che avranno luogo. Uno è l'importo di $ 10 che Remo vuole trasferire verrà addebitato sul suo conto A e lo stesso importo verrà accreditato sul conto B, cioè sul conto di Sheero. Ora, cosa succede: la prima operazione di addebito viene eseguita con successo, ma l'operazione di accredito, invece, fallisce. Pertanto, nel conto A di Remo, il valore diventa $ 20 e in quello del conto di Sheero rimane $ 100 come era precedentemente presente.

Proprietà ACID nel DBMS

Nel diagramma sopra, si può vedere che dopo aver accreditato $ 10, l'importo è ancora $ 100 sul conto B. Quindi, non si tratta di una transazione atomica.

L'immagine seguente mostra che sia le operazioni di addebito che quelle di accredito vengono eseguite con successo. Quindi la transazione è atomica.

Proprietà ACID nel DBMS

Pertanto, quando l’importo perde atomicità, nei sistemi bancari questo diventa un problema enorme, e quindi l’atomicità è l’obiettivo principale nei sistemi bancari.

2) Coerenza

La parola consistenza significa che il valore dovrebbe rimanere sempre preservato. In DBMS , l'integrità dei dati dovrebbe essere mantenuta, il che significa che se viene apportata una modifica al database, dovrebbe rimanere sempre preservato. Nel caso delle transazioni, l'integrità dei dati è fondamentale affinché il database rimanga coerente prima e dopo la transazione. I dati dovrebbero essere sempre corretti.

Esempio:

Proprietà ACID nel DBMS

Nella figura sopra, ci sono tre conti, A, B e C, dove A sta effettuando una transazione T una per una sia verso B che verso C. Ci sono due operazioni che hanno luogo, cioè Debito e Credito. Il conto A addebita innanzitutto $ 50 sul conto B e l'importo nel conto A viene letto da $ 300 da B prima della transazione. Dopo la transazione riuscita T, l'importo disponibile in B diventa $ 150. Ora, A addebita $ 20 sul conto C e, in quel momento, il valore letto da C è $ 250 (questo è corretto poiché un addebito di $ 50 è stato eseguito con successo su B). L'operazione di addebito e accredito dal conto A al conto C è stata eseguita correttamente. Possiamo vedere che la transazione è stata eseguita con successo e anche il valore viene letto correttamente. Pertanto, i dati sono coerenti. Nel caso in cui il valore letto da B e C sia $ 300, ciò significa che i dati non sono coerenti perché quando viene eseguita l'operazione di addebito, non saranno coerenti.

3) Isolamento

Il termine 'isolamento' significa separazione. In DBMS, l'isolamento è la proprietà di un database in cui nessun dato dovrebbe influenzare l'altro e può verificarsi contemporaneamente. In breve, l'operazione su un database dovrebbe iniziare quando l'operazione sul primo database viene completata. Ciò significa che se due operazioni vengono eseguite su due database diversi, potrebbero non influire sul valore l'una dell'altra. Nel caso delle transazioni, quando due o più transazioni avvengono simultaneamente, la coerenza dovrebbe rimanere mantenuta. Qualsiasi modifica che si verifica in una particolare transazione non verrà vista dalle altre transazioni fino a quando la modifica non verrà salvata in memoria.

Esempio: Se due operazioni vengono eseguite contemporaneamente su due conti diversi, il valore di entrambi i conti non dovrebbe essere influenzato. Il valore dovrebbe rimanere persistente. Come puoi vedere nel diagramma seguente, il conto A sta effettuando transazioni T1 e T2 sui conti B e C, ma entrambi vengono eseguiti in modo indipendente senza influenzarsi a vicenda. È noto come Isolamento.

Proprietà ACID nel DBMS

4) Durabilità

La durabilità garantisce la permanenza di qualcosa. Nei DBMS, il termine durabilità garantisce che i dati dopo la corretta esecuzione dell'operazione diventino permanenti nel database. La durabilità dei dati dovrebbe essere così perfetta che, anche se il sistema fallisce o porta a un arresto anomalo, il database sopravvive comunque. Tuttavia, in caso di smarrimento, diventa responsabilità del responsabile del ripristino garantire la durabilità del database. Per confermare i valori, il comando COMMIT deve essere utilizzato ogni volta che apportiamo modifiche.

Pertanto, la proprietà ACID del DBMS svolge un ruolo fondamentale nel mantenere la coerenza e la disponibilità dei dati nel database.

Pertanto, si è trattato di un'introduzione precisa delle proprietà ACID nel DBMS. Abbiamo discusso queste proprietà anche nella sezione relativa alle transazioni.