Descompactação on-the-fly

1

Eu tenho 44 TB de arquivos gzipados com 1,5 GB cada quando compactados ou 2,0 GB quando não compactados. Eu tenho uma ferramenta que pode ler apenas arquivos descompactados. Eu gostaria de evitar a sobrecarga de descompactar o arquivo inteiro e gravar o resultado no disco, já que talvez eu precise apenas acessar uma pequena parte do arquivo. A ferramenta não pode ler dados compactados em gzip em tempo real.

Existe uma maneira de criar um objeto semelhante a um arquivo (somente leitura) que tenha todos os recursos de um arquivo do ponto de vista do aplicativo, mas em vez de armazenar dados em disco, calcula os dados dinamicamente. (possivelmente caching na memória)? Eu poderia tentar um pipe nomeado, mas isso não permite procurar. Descompactar para tmpfs é um pouco (10–20%) mais rápido que descompactar para o disco, mas ainda requer a descompactação do arquivo inteiro. Eu não preciso de nenhum acesso de gravação.

A máquina tem 2 TB de RAM e roda no servidor Red Hat Enterprise Linux versão 6.7. Os dados estão em um sistema de arquivos panfs. Outros sistemas de arquivos são um pequeno (20 GB) tmpfs e algum espaço de trabalho (15 TB compartilhado com outros). Eu não tenho privilégios de administrador do sistema.

    
por gerrit 20.01.2016 / 16:05

0 respostas