Discoverp de PodcastACID, BASE e o Teorema CAP
ACID, BASE e o Teorema CAP

ACID, BASE e o Teorema CAP

Update: 2021-01-29
Share

Description

ACID ou BASE, qual escolher? Conhece o teorema CAP? Neste episódio falamos sobre as propriedades destes dois modelos transacionais.



Marcio  

https://twitter.com/marciofrayze



Julianno

https://twitter.com/juliannoms



Links:


Artigo "ACID vs. BASE: What are the differences?"


https://phoenixnap.com/kb/acid-vs-base


Teorema CAP:


https://en.wikipedia.org/wiki/CAP_theorem


https://dzone.com/articles/understanding-the-cap-theorem


https://martin.kleppmann.com/2015/05/11/please-stop-calling-databases-cp-or-ap.html


https://www.infoq.com/articles/cap-twelve-years-later-how-the-rules-have-changed/




Modelo ACID


    Atômico – Cada transação é devidamente realizada ou o processo para e o banco de dados volta para o estado antes do início da transação (rollback), garantindo que todos os dados no banco de dados sejam válidos.


    Consistente – Uma transação processada nunca colocará em risco a integridade estrutural do banco de dados. A transação cria um novo estado válido tanto para a estrutura como para os dados ou reverte para o estado anterior.


    Isolado – As transações não podem comprometer a integridade de outras transações interagindo com elas enquanto ainda estão em andamento.


    Durável – Os dados relacionados à transação concluída persistirão mesmo nos casos de quedas de rede ou energia. Se uma transação falhar, ela não afetará os dados manipulados.


Modelo BASE


    Basically Available – Em vez de impor consistência imediata, os bancos de dados BASE garantirão a disponibilidade de dados espalhando-os e replicando-os nos nós do cluster de banco de dados.


    Soft State – Devido à falta de consistência imediata, os valores dos dados podem ser diferentes dependendo do nó que atender a requisição.


    Eventually Consistent – O fato de não impor consistência imediata não significa que ela nunca a alcance. No entanto, até que isso ocorra, as leituras de dados ainda são possíveis (mesmo que não reflitam a realidade mais atual).



Teorema CAP


    Eric Brewer provou que em um modelo distribuído de armazenamento você só consegue atender simultaneamente duas de três opções:


    Consistência (C): Cada leitura recebe a gravação mais recente ou um erro.


    Disponibilidade (A): Cada solicitação recebe uma resposta de sucesso, sem a garantia de que contém a gravação mais recente.


    Tolerância à partição (P): O sistema continua a operar apesar de um número arbitrário de mensagens sendo retiradas (ou atrasadas) pela rede entre nós.


    Na prática você precisará ter suporte a tolerância a partição, então a escolha se resume a: quando ocorre um particionamento na rede, o que você quer priorizar: consistência ou disponibilidade?



Comments 
loading
00:00
00:00
1.0x

0.5x

0.8x

1.0x

1.25x

1.5x

2.0x

3.0x

Sleep Timer

Off

End of Episode

5 Minutes

10 Minutes

15 Minutes

30 Minutes

45 Minutes

60 Minutes

120 Minutes

ACID, BASE e o Teorema CAP

ACID, BASE e o Teorema CAP

Marcio Frayze David e Julianno Martins Silva