Tengo un programa que lee y escribe archivos de texto muy grandes. Sin embargo, debido al formato de estos archivos (son representaciones ASCII de lo que deberían haber sido datos binarios), estos archivos se comprimen muy fácilmente. Por ejemplo, algunos de estos archivos tienen más de 10 GB de tamaño, pero gzip logra una compresión del 95%.¿Cómo puedo comprimir/descomprimir un archivo de forma transparente a medida que un programa escribe/lee de él?
No puedo modificar el programa, pero el espacio en el disco es precioso, así que tengo que configurar una forma de que pueda leer y escribir estos archivos mientras se comprimen y descomprimen de forma transparente.
El programa solo puede leer y escribir archivos, por lo que tengo entendido, necesito configurar un conducto con nombre para entrada y salida. Algunas personas sugieren un sistema de archivos comprimido, que parece que también funcionaría. ¿Cómo hago cualquiera de los dos trabajos?
Información técnica: Estoy en un Linux moderno. El programa lee un archivo de entrada y salida por separado. Se lee a través del archivo de entrada en orden, aunque dos veces. Escribe el archivo de salida en orden.
No dude en editar mis etiquetas. Me resultó muy difícil elegir los apropiados. Además, si esto es un duplicado, como siempre, házmelo saber y estaré encantado de borrar ... –
esto no está relacionado con la programación, ya que no puedes cambiar tu programa. o necesita discos más grandes o un sistema de archivos comprimido r/w. – Alnitak