3.7. Medición de la deduplicación VDO
Este procedimiento comprueba la eficacia de la deduplicación de datos VDO en un volumen de prueba VDO.
Requisitos previos
- Se monta un volumen de prueba VDO recién creado. Para más detalles, consulte Sección 3.4, “Creación de un volumen de prueba VDO”.
Procedimiento
Prepara una tabla en la que puedas registrar los resultados de las pruebas:
Estadística Sistema de archivos sin soporte Después de la semilla Después de 10 copias Tamaño del sistema de archivos utilizado
Datos VDO utilizados
VDO lógico utilizado
Cree 10 directorios en el volumen VDO para contener 10 copias del conjunto de datos de prueba:
$ mkdir /mnt/vdo-test/vdo{01..10}
Examine el uso del disco informado por el sistema de archivos:
$ df --human-readable /mnt/vdo-test
Ejemplo 3.1. Uso del disco
Filesystem Size Used Avail Use% Mounted on /dev/mapper/vdo-test 1.5T 198M 1.4T 1% /mnt/vdo-test
Registra los siguientes valores:
# vdostats --verbose | grep "blocks used"
Ejemplo 3.2. Bloques usados
data blocks used : 1090 overhead blocks used : 538846 logical blocks used : 6059434
-
El valor
data blocks used
es el número de bloques utilizados por los datos del usuario después de la optimización en el dispositivo físico que se ejecuta bajo VDO. -
El valor
logical blocks used
es el número de bloques utilizados antes de la optimización. Se utilizará como punto de partida para las mediciones.
-
El valor
Cree un archivo de origen de datos en el volumen VDO:
$ dd if=/dev/urandom of=/mnt/vdo-test/sourcefile bs=4096 count=1048576 4294967296 bytes (4.3 GB) copied, 540.538 s, 7.9 MB/s
Vuelva a examinar la cantidad de espacio de disco físico utilizado:
$ df --human-readable /mnt/vdo-test
Ejemplo 3.3. Uso del disco con el archivo fuente de datos
Filesystem Size Used Avail Use% Mounted on /dev/mapper/vdo-test 1.5T 4.2G 1.4T 1% /mnt/vdo-test
# vdostats --verbose | grep "blocks used"
Ejemplo 3.4. Bloques utilizados con el archivo de origen de datos
data blocks used : 1050093 # Increased by 4GiB overhead blocks used : 538846 # Did not significantly change logical blocks used : 7108036 # Increased by 4GiB
Este comando debería mostrar un aumento en el número de bloques utilizados, correspondiente al tamaño del archivo escrito.
Copie el archivo en cada uno de los 10 subdirectorios:
$ for i in {01..10}; do cp /mnt/vdo-test/sourcefile /mnt/vdo-test/vdo$i done
Vuelva a examinar la cantidad de espacio de disco físico utilizado:
$ df -h /mnt/vdo-test
Ejemplo 3.5. Uso del disco después de copiar el archivo
Filesystem Size Used Avail Use% Mounted on /dev/mapper/vdo-test 1.5T 45G 1.3T 4% /mnt/vdo-test
# vdostats --verbose | grep "blocks used"
Ejemplo 3.6. Bloques utilizados después de copiar el archivo
data blocks used : 1050836 # Increased by 3 MiB overhead blocks used : 538846 logical blocks used : 17594127 # Increased by 41 GiB
El valor de
data blocks used
debería ser similar al resultado del listado anterior, con sólo un ligero aumento debido al registro en el diario del sistema de archivos y los metadatos.- Reste este nuevo valor del espacio utilizado por el sistema de archivos del valor encontrado antes de escribir los datos de la prueba. Esta es la cantidad de espacio consumido por esta prueba desde la perspectiva del sistema de archivos.
Observe el ahorro de espacio en sus estadísticas registradas:
Ejemplo 3.7. Valores registrados
Estadística Sistema de archivos sin soporte Después de la semilla Después de 10 copias Tamaño del sistema de archivos utilizado
198 MiB
4.2 GiB
45 GiB
Datos VDO utilizados
4 MiB
4.1 GiB
4.1 GiB
VDO lógico utilizado
23.6 GiB (file system overhead for 1.6 TiB formatted drive)
27.8 GiB
68.7 GiB
NotaEn la tabla, los valores se han convertido a MiB o GiB. Los bloques en la salida de
vdostats
tienen un tamaño de 4.096 B.
Pasos de limpieza
- Retire el volumen de prueba VDO como se describe en Sección 3.6, “Limpieza del volumen de prueba de VDO”.