Cómo realizar una compresión de datos más rápida con PBZIP2

Cómo realizar una compresión de datos más rápida con PBZIP2

Introducción

¿Qué pasaría si pueda realizar una compresión de datos cuatro veces más rápida?. La utilidad de la línea de comandos PBZIP2 puede lograrlo fácilmente, ya que le da una opción para seleccionar la CPU número y la cantidad de RAM que se utilizará durante el proceso de compresión.

Compresión regular de alquitrán y bzip2

Todos conocemos el comando regular para realizar la compresión del directorio TAR y BZIP2. El siguiente comando alquitrán y comprimir nuestro directorio de sandbox Foobar. También estamos prefijando el siguiente comando para obtener tiempo exacto durante cuánto tiempo llevará la salida del archivo comprimido Foobar.alquitrán.BBZ2 Del directorio de Foobar de 242 MB:

# TIEMPO TAR CJF FOOBAR1.alquitrán.bz2 foobar/ real 0m20.Usuario de 030 0m19.828S SYS 0M0.304s 

Desde la salida de tiempo anterior, podemos ver que tardó unos 20 segundos en crear el siguiente archivo comprimido:

# ls -lh foobar1.alquitrán.bz2 -rw-r-r-- 1 raíz de la raíz 54m 10 de marzo 20:25 Foobar1.alquitrán.bz2 

Compresión más rápida con bpzip2

pbzip2 Por defecto, utiliza todas las CPU disponibles y 100 MB de RAM para realizar la compresión. El siguiente comando Linux realizará compresión de directorio utilizando pbzip2. Una vez más, usamos el tiempo para medir el tiempo de ejecución:

# Tiempo Tar -C Foobar | pbzip2 -c> foobar2.alquitrán.bz2 real 0m4.777S Usuario 0m35.588S SYS 0M1.060S 

Alternativamente, el comando Bellow producirá el mismo resultado:

# TIEMPO TAR CF FOOBAR3.alquitrán.BZ2 --Use-Compress-prog = Pbzip2 Foobar Real 0M4.764s usuario 0m35.508S SYS 0M1.136s 

Recursos de reserva

Como ya fue mencionado, pbzip2 Permite al usuario seleccionar el número de CPU y la cantidad de RAM para dedicarse a la compresión. El siguiente ejemplo es usar solo una sola CPU para realizar la compresión solicitada:

# Tiempo Tar -C Foobar | pbzip2 -c -p1> foobar4.alquitrán.bz2 real 0m20.Usuario de 348s 0M19.972S SYS 0M0.648s 

Para dedicar la cantidad seleccionada de uso de RAM -metro cambiar. Por defecto, PBZIP2 usa 100 MB. El ejemplo a continuación realiza la compresión usando 1 CPU y 10 MB de RAM:

# Tiempo Tar -C Foobar | pbzip2 -c -p1 -m10> foobar5.alquitrán.bz2 real 0m20.Usuario de 362s 0m19.932S SYS 0M0.704s 

Nivel de compresión

Como suele ser el caso con cualquier utilidad de compresión, pbzip2 también permite configuraciones de relación de compresión. El rango de compresión es de 1 a 9, donde el valor predeterminado es 9, que también es la mejor relación de compresión. Cambiar la tasa de compresión a EG. 1 usar -1:

 Tiempo Tar -C Foobar | pbzip2 -c -1> foobar6.alquitrán.bz2 real 0m3.786s usuario 0m28.612S SYS 0M0.364s 

Usando el ejemplo anterior, terminará con un tiempo de ejecución más rápido pero Nombre de archivo más grande:

 # ls -lh *.bz2 -rw-r-r-- 1 raíz de la raíz 54m 10 de marzo 20:02 Foobar1.alquitrán.bz2 -rw-r-r-- 1 raíz de la raíz 54m 10 de marzo 20:41 Foobar2.alquitrán.bz2 -rw-r-r-- 1 raíz de la raíz 54m 10 de marzo 20:43 foobar3.alquitrán.bz2 -rw-r-r-- 1 raíz de la raíz 54m 10 de marzo 20:48 FOOBAR4.alquitrán.bz2 -rw-r-r-- 1 raíz de la raíz 54m 10 de marzo 20:54 foobar5.alquitrán.bz2 -rw-r-r-- 1 raíz de la raíz 67m 10 de marzo 21:00 Foobar6.alquitrán.bz2 

Descompresión

Para preformar una descompresión utilizando pbzip2 hace para producir un ahorro de tiempo significativo, si lo hay, en comparación con bzip2. Los siguientes comandos de Linux se pueden usar para descomprimir los datos comprimidos BZIP2 utilizando pbzip2 utilidad:

# tar xf foobar1.alquitrán.bz2 --use-compress-propg = pbzip2 o # pbzip2 -dc foobar1.alquitrán.BZ2 | Tar x 

Tutoriales de Linux relacionados:

  • Una introducción a la automatización, herramientas y técnicas de Linux
  • Cosas para instalar en Ubuntu 20.04
  • La mejor herramienta de compresión en Linux
  • Cosas que hacer después de instalar Ubuntu 20.04 fossa focal Linux
  • Guía de solución de problemas GNU/Linux General para principiantes
  • Mastering Bash Script Loops
  • Verifique el uso de CPU y RAM de una vaina de Kubernetes
  • Comandos de Linux: los 20 comandos más importantes que necesitas ..
  • Sistema colgado de Linux? Cómo escapar a la línea de comando y ..
  • Comandos básicos de Linux