ACID, BASE e o Teorema CAP

ACID, BASE e o Teorema CAP

p de Podcast

29/01/2021 4:45PM

Sinopse do Episódio "ACID, BASE e o Teorema CAP"

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?

Ouvir "ACID, BASE e o Teorema CAP"

Mais episódios do podcast p de Podcast