Anar al contingut

ACID

De L'Enciclopèdia, la wikipedia en valencià

En bases de senyes es denomina ACID a les característiques dels paràmetros que permeten classificar les transaccions dels sistemes de gestió de bases de senyes. Quan es diu que una acció és ACID compliant s'indica -en diversos graus- que esta permet realisar transaccions.

En concret, ACID és un acrònim en anglés de Atomicity, Consistency, Isolation and Durability: Atomicidad, Consistència, Aïllament i Durabilitat, en espanyol.

Definicions

[editar | editar còdic]
  • Atomicidad: Si quan una operació consistix en una série de passos, dels que o be s'eixecuten tots o cap, és dir, les transaccions són completes.
  • Consistència: (Integritat). És la propietat que assegura que només s'escomença allò que es pot acabar. Per lo tant s'eixecuten aquelles operacions que no van a trencar les regles i directrius de Integritat de la base de senyes. La propietat de consistència sosté que qualsevol transacció durà a la base de senyes des d'un estat vàlit a un atre també vàlit. "L'Integritat de la Base de Senyes nos permet assegurar que les senyes són exactes i consistents, és dir que estiguen sempre intactes, siguen sempre els esperats i que de cap manera canvien ni es deformen. D'esta manera podem garantisar que l'informació que es presenta a l'usuari serà sempre la mateixa."
  • Aïllament: Esta propietat assegura que una operació no pot afectar a unes atres. Açò assegura que la realisació de dos transaccions sobre la mateixa informació siguen independents i no generen cap tipo d'error. Esta propietat definix cóm i quàn els canvis produïts per una operació es fan visibles per a les demés operacions concurrents. L'aïllament pot alcançar-se en distints nivells, sent el paràmetro essencial a l'hora de seleccionar SGBDs.
  • Durabilitat: (Persistència). Esta propietat assegura que una volta realisada l'operació, esta persistirà i no es podrà desfer encara que falle el sistema i que d'esta forma les senyes sobrevixquen d'alguna manera.

Complint estos 4 requisits un sistema gestor de bases de senyes pot ser considerat ACID Compliant.

Posada en pràctica

[editar | editar còdic]

Posar les característiques ACID en eixecució no és tan senzill. El procés d'una transacció requerix a sovint un número de canvis menuts en ser realisat, incloent la posada al dia dels índexs que són utilisats en el sistema per a accelerar busques. Esta seqüència d'operacions pot fallar per un número de raons; per eixemple, el sistema pot no tindre cap lloc disponible en els seus accionament de disc, o pot haver sobrepassat el seu temps de CPU assignat.

ACID sugerix que la base de senyes puga realisar totes estes operacions immediatament. De fet açò és difícil de conseguir. Hi ha dos classes de tècniques populars: escriure a un registre abans de continuar i la paginació de l'ombra. En abdós casos, els bloquejos es deuen implantar abans que l'informació siga actualisada, i depenent de la tècnica posada en pràctica, totes les senyes es tenen que haver llegit. En escriure a un registre abans de continuar, la atomicidad és garantisada assegurant-se que tota l'informació estiga escrita a un registre ans que s'escriga a la base de senyes. Això permet que la base de senyes torne a un estat anterior en cas d'un desplome. En sombrear, les actualisacions s'apliquen a una còpia de la base de senyes, i s'activa la nova còpia quan la transacció siga confiable. La còpia referix a parts sense canvis de la vella versió de la base de senyes, en lloc de ser un duplicat sancer.


Açò significa que deu realisar-se un bloqueig en qualsevol moment abans de processar senyes en una base de senyes, inclús en operacions llegides. Mantindre una gran cantitat de bloquejos dona lloc a un aument substancial indirecte dels processos aixina com a una alteració de la concurrència d'ells. Si l'usuari A està processant una transacció que ha llegit una fila de les senyes que l'usuari B desija modificar, per eixemple, l'usuari B deu esperar fins que l'atre usuari acabe..

Una alternativa a la fixació és mantindre còpies separades de qualsevol senya que es modifique. Açò permet a usuaris llegir senyes sense adquirir cap bloqueig. Usant de nou l'eixemple anterior, quan la transacció de l'usuari conseguix les senyes que l'usuari B ha modificat, la base de senyes pot recuperar la versió exacta de les senyes per a que l'usuari A comence la seua transacció. Açò assegura que l'usuari A conseguixca una vista constant de la base de senyes encara que atres usuaris estiguen canviant senyes.

És difícil garantisar les característiques ACID en un ambient de ret. Les conexions de ret poden fallar, o dos usuaris poden utilisar la mateixa part de la base de senyes al mateix temps.


Referències

[editar | editar còdic]