A Microsoft quer aprimorar a integridade e a confiabilidade da escrita dos dados no Linux, especialmente em cenários onde a perda de dados - por falhas - tem consequências graves.
As gravações atômicas garantem que os dados sejam escritos de forma completa e consistente, evitando situações em que apenas parte da informação seja gravada, o que poderia corromper arquivos e sistemas.
Elas reduzem significativamente o risco de corrupção de dados, como quedas de energia ou problemas de hardware. O que é vital para sistemas de alta disponibilidade e ambientes de produção.
Os sistemas de arquivos EXT4 e XFS são amplamente utilizados em servidores Linux, e a adição de gravações atômicas aumenta a confiabilidade desses sistemas em ambientes críticos.
Por isso a Microsoft quer habilitar essas funções no EXT4 e XFS, o que oferecerá um nível mais alto de integridade e confiabilidade.
O que são gravações atômicas?
São operações de escrita que ocorrem de forma completa e indivisível. Quando você salva um arquivo ou escreve dados em um disco, todo o conteúdo é gravado de uma só vez.
Se ocorrer alguma falha, a gravação é considerada como se nunca tivesse acontecido, mantendo a integridade dos dados e evitando sua corrupção.
Isso assegura a gravação dos dados de forma consistente, sem partes incompletas. O que é útil na escrita de arquivos grandes ou nas transações de banco de dados.
Como o ext4 e XFS gravam dados hoje?
Sem a introdução do suporte a gravações atômicas no EXT4 e XFS, a escrita de dados segue um processo que envolve várias etapas suscetível a interrupções, como queda de energia.
Inicialmente os dados a serem escritos são armazenados numa área da memória chamada “buffer”.
Em um determinado momento, o sistema operacional agenda uma operação para escrever os dados, do buffer para o disco. Após a conclusão da escrita, o sistema ele marca a operação como concluída.
Se ocorrer falha de energia ou outro problema durante a escrita, os dados podem se perder ou corromper, pois nem todos os dados do buffer teriam sido escritos no disco.
Então haveria uma parte de dados novos juntos a outra de antigos, ocorrendo o fenômeno de torn write (ou “gravação rasgada”).
Entendendo o torn write*
Torn-write é um termo quedescreve uma situação indesejável que pode ocorrer durante a escrita de dados em um disco rígido.
Imagine que esteja escrevendo uma carta e, por algum motivo, a caneta falha no meio de uma palavra? Esta fica “rasgada”, incompleta. No mundo digital, o mesmo pode acontecer com os dados.
Um torn-write pode ocorrer devido a diversas razões, como queda de energia, erros de softwate (bugs) e hardware, o que atrapalha o funcionamento em diversos aplicativos e até do sistema operacional.
Esse é o motivo da implementação da escrita atômica no ext4 e HFS, um dos tripés do torn write protection.
Entendendo o torn write protection
Torn Write Protection (TWP), em português, Proteção contra Gravação Rasgada, é uma tríade de segurança que garante a integridade da escrita em discos rígidos e unidades de estado sólido (SSD’s).
O TWP monitora as operações de escrita, garantindo que sejam concluídas antes de serem consideradas finalizadas.
Se ocorrer alguma interrupção durante o processo, o sistema detecta o problema e tenta reescrever os dados de forma segura.
As técnicas utilizadas na implementação da TWP incluem a tríade (1) gravações atômicas, (2) checksums e (3) journaling de dados, o que garante a integridade, confiabilidade e dispinibilidade dos dados escritos num disco ou SSD.
Mas outras medidas de apoio podem ser implementadas em conjunto, como a utilização de um nobreak, snapshots e RAID.
A combinação de diferentes técnicas de proteção contra gravação rasgada é essencial para garantir a integridade dos dados em sistemas críticos.
A escolha da melhor abordagem depende das necessidades específicas de cada aplicação, considerando fatores como custo, desempenho e nível de proteção desejado.
Mas a adição da gravação atômica nos sistemas de arquivos ext4 e XFS é uma parte importante na prevenção do torn write, sendo implentada mais facilmente que outros recursos mais complexos, demorados e caros.
Fonte: link no texto