Quais são alguns exemplos de "Operações anexadas" como "Operações de gravações aleatórias"?

0

Acabei de ler o documento do Google File System (GFS). O artigo diz que o GFS é

optimized for appending operations rather than random writes. 

Visto que essa característica é enfatizada ao longo do artigo, entendo que deve ser muito importante.

Como um aluno que não teve nenhuma experiência de trabalho, quais são alguns exemplos da vida real dos Appending Operationsquais o Google fala? Parece muito intenso.

(Suponho que os logs tenham muitos anexos. Talvez também o e-mail?)

Algum estudante de Noob
fonte

Respostas:

1

Sim, os logs seriam um exemplo clássico de uma operação de acréscimo. O email depende da implementação. Por exemplo, os armazenamentos de email no formato Maildir são um email por arquivo, portanto, não é necessário anexar. Com o formato mbox, todos os emails estão em um único arquivo, para que novos sejam adicionados ao final - eles são anexados.

Uma atualização do banco de dados seria um exemplo de operação do tipo gravação aleatória, por exemplo, se você decidisse atualizar o Nome de todos em um banco de dados, isso resultaria em uma série de gravações no meio do arquivo que contém o banco de dados.

O que o Google está dizendo aqui é: para manter o desempenho ideal e, se você conseguir se safar, adicione novas informações ao final dos arquivos existentes, em vez de modificar o conteúdo já existente. Se você precisar excluir dados de um arquivo, sinalize-os de alguma forma e exclua-os mais tarde, quando o desempenho não for importante, como em um trabalho em lotes de limpeza. Um exemplo disso seria com os repositórios de email no formato mbox novamente. Se você excluir um email, ele será rastreado em um arquivo separado. Depois, você pode "compactar" o arquivo, que efetivamente o reescreve sem os e-mails excluídos.

Paulo
fonte
Uma má escolha de exemplos. A sinalização do conteúdo excluído em um arquivo da família mbox é uma operação de "gravação aleatória"; e escrever uma mensagem em um arquivo Maildir é uma série de operações de acréscimo da perspectiva de um sistema operacional.
JdeBP
O @JdeBP Maildir não possui um arquivo, possui pastas no sistema de arquivos. Cada email é um único arquivo, portanto nada é anexado.
Paul
@JdeBP e com o mbox, eu estava me referindo a uma implementação do mbox em que os emails sinalizados não são especificamente gravados no arquivo mbox e são acionados posteriormente.
Paul
O fato de você poder dizer "O Maildir não possui um arquivo" e "Cada email é um único arquivo" no mesmo fôlego, sem entender as coisas, é um pouco deprimente. Leia o que você está escrevendo. E pense também sobre o que sua vaga vaga "sinaliza de alguma forma" realmente está no mundo real, quando programas como o Thunderbird fazem isso. Repito: uma má escolha de exemplos.
JdeBP
@JdeBP Escrever um único arquivo dificilmente pode ser chamado de "operação de acréscimo", pode? O que é que está sendo anexado?
Paul