when is data in the journal transferred to the disk?
Depende de duas coisas principais: o sistema de arquivos em uso e o armazenamento físico dispositivo. XFS usa escreva barreiras . EXT3 usa escrever barreiras, se ativado . EXT4 tem barreiras ativadas por padrão . Os HDDs tradicionais usam caches . Solid State Drives pode ou não ter um cache . Em última análise, é uma combinação do sistema operacional, sistema de arquivos e arquitetura de hardware subjacente e especificações que determinam quando os dados são mantidos no dispositivo de armazenamento.
is the write complete to the user when the data is written to the journal or to the disk?
Isso também depende do aplicativo em uso e do sistema operacional. Linux
tem a chamada de sistema fsync
que aplicativos e sistemas de arquivos usam para
liberar dados em cache para os dispositivos físicos. Nem todos os aplicativos usam fsync
para
esvaziar explicitamente os dados armazenados em cache no armazenamento. Você sempre pode emitir um sync
comando para liberar manualmente os buffers do sistema de arquivos.
How is disk defragmentation related to journal?
A fragmentação de disco afeta desempenho , especialmente ao lidar com arquivos grandes cujos blocos não são contíguos. Existem diferentes técnicas para mitigação da fragmentação . Por exemplo, XFS e outros sistemas de arquivos usam uma técnica alocar-em-liberar para minimizar fragmentação.