ACID: Atomic, Consistent, Isolated, & Durable (Português)

posted in: Articles | 0

I don’t think it’s an overstatement to say that data is pretty important. Os dados são especialmente importantes para as organizações modernas. De fato, o The Economist chegou ao ponto de dizer que os dados superaram o petróleo como o recurso mais valioso do mundo, e isso foi em 2017.

Um dos problemas com os dados é a enorme quantidade de dados que precisam ser processados diariamente., Há tantos dados voando pelo mundo hoje em dia que temos que inventar um novo termo apenas para expressar quanta informação existe: grandes dados. Claro, não é o termo mais impressionante lá fora, mas o facto permanece.com todos esses grandes dados lá fora, as organizações estão buscando maneiras de melhorar como elas gerem tudo do ponto de vista prático, computacional e de segurança. Como o tio do Homem-Aranha, Ben, disse uma vez: “com grande vem a grande responsabilidade.”O melhor método que o mundo das TI criou para navegar pelas complexidades da Gestão de dados é através do uso de bases de dados.,o que é uma base de dados?

bases de dados são conjuntos estruturados de dados que são armazenados dentro de computadores. Muitas vezes, as bases de dados são armazenadas em fazendas de servidores inteiras cheias de computadores que foram feitos especificamente para o propósito de lidar com esses dados e os processos necessários para fazer uso dele.as bases de dados modernas são sistemas tão complexos que os sistemas de gestão foram concebidos para lidar com eles. Estes sistemas de gestão de bases de dados (SGBD) procuram optimizar e gerir o armazenamento e a recuperação de dados dentro das bases de dados.,uma das estrelas orientadoras que leva as organizações a uma gestão bem sucedida de bases de dados é a ACID approach.o que é ácido?

no contexto da ciência da computação, ACID (atomicidade, consistência, isolamento, durabilidade) é um conjunto de princípios orientadores que podem garantir que as transações de banco de dados podem ser processadas de forma confiável. Uma transação de banco de dados é qualquer operação realizada dentro de um banco de dados, como a criação de um novo registro ou atualização de dados dentro de um.

As alterações feitas dentro de uma base de dados precisam ser realizadas com cuidado para garantir que os dados dentro não se corrompem., Aplicar as propriedades ácidas a cada modificação de um banco de dados é a melhor maneira de manter a precisão e confiabilidade de um banco de dados. Vamos ver cada componente de ácido.

atomicidade

no contexto das bases de dados, atomicidade significa que você ou se compromete com a totalidade da transação que ocorre ou não tem nenhuma transação., Essencialmente, uma transação atômica garante que qualquer commit que você faça termina toda a operação com sucesso ou, em caso de conexão sendo perdida no meio de uma operação, a base de dados é rolada de volta para o seu estado antes do commit ser iniciado.

isto é importante para evitar que acidentes ou interrupções criem casos em que a transacção foi parcialmente concluída para um estado global desconhecido. Se ocorrer um estoiro durante uma transacção sem atomicidade, não poderá saber exactamente até que ponto o processo foi interrompido., Ao usar a atomicidade, você garante que toda a transação é concluída com sucesso ou que nenhuma delas foi.

consistência

consistência refere-se à manutenção de restrições de integridade dos dados. Uma transação consistente não violará as restrições de integridade colocadas nos dados pelas Regras do banco de dados. A aplicação da consistência garantirá que, se um banco de Dados entrar em um estado ilegal (se ocorrer uma violação das restrições de integridade de dados), o processo será abortado e as mudanças retornarão ao seu estado legal anterior.,

outra forma de garantir a consistência dentro de uma base de dados ao longo de cada transação é também através da aplicação de restrições declarativas colocadas na base de dados. Um exemplo de uma restrição declarativa pode ser que todas as contas de clientes devem ter um saldo positivo. Se uma transacção trouxesse uma conta de cliente para um saldo negativo, essa transacção seria revertida. Isso garante que as alterações são bem sucedidas na manutenção da integridade dos dados ou são canceladas completamente.,

isolamento

transacções isoladas são consideradas “serializáveis”, o que significa que cada transacção acontece numa ordem distinta sem que quaisquer transacções ocorram em conjunto. Qualquer leitura ou escrita realizada no banco de dados não será impactada por outras leituras e escritas de transações separadas que ocorrem no mesmo banco de dados. Uma ordem global é criada com cada operação em fila de espera em linha para garantir que as transações completas em sua totalidade antes de outra começar.isto não significa que duas operações não possam acontecer ao mesmo tempo., Múltiplas transações podem ocorrer desde que essas transações não tenham possibilidade de impactar as outras transações que ocorrem ao mesmo tempo. Fazer isso pode ter impactos na velocidade das transações, pois pode forçar muitas operações a esperar antes que elas possam iniciar. No entanto, este tradeoff vale a segurança de dados adicional fornecida pelo isolamento.

isolamento pode ser realizado através do uso de uma escala móvel de permissividade que vai entre o que são chamadas transações otimistas e transações pessimistas., Um esquema de transação otimista assume que outras transações terminarão sem ler ou escrever para o mesmo lugar duas vezes. Com o esquema otimista, ambas as transações serão abortadas e recuperadas no caso de uma transação atingir o mesmo lugar duas vezes.

o esquema de transação pessimista oferece menos liberdade e irá bloquear os recursos na suposição de que as transações irão impactar outras. Isto resulta em menos abortamentos e repetições, mas também significa que as transações são forçadas a esperar na linha por sua vez mais frequentemente em comparação com a abordagem otimista de transação., Encontrar um ponto doce entre estes dois ideais é muitas vezes onde o melhor resultado geral é encontrado.

durabilidade

o aspecto final da abordagem ácida à gestão de bases de dados é a durabilidade. A durabilidade garante que as alterações feitas à base de dados (transações) que são cometidas com sucesso sobreviverão permanentemente, mesmo no caso de falhas do sistema. Isto garante que os dados dentro do banco de dados não serão corrompidos por falhas de serviço, falhas, ou outros casos de falha., Isto é conseguido através do uso de changelogs que são referenciados quando bases de dados (ou partes da base de dados) são reiniciados.quando todos os aspectos da abordagem ACID são reunidos com sucesso, as bases de dados são mantidas com a máxima integridade e segurança de dados para garantir que eles possam continuar a fornecer valor à organização. Um banco de dados com dados corrompidos pode apresentar problemas caros devido à enorme ênfase que as organizações colocam em seus dados para ambas as operações do dia-a-dia, bem como análise estratégica.,a utilização de propriedades ácidas na sua base de dados irá garantir que a sua base de dados continua a fornecer dados valiosos ao longo das operações.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *