Etiquetas

,

La compresión de datos mejora el rendimiento de las lecturas  y escrituras en disco ( I/O) y por lo tanto el rendimiento de nuestras consultas,  si queremos habilitar la compresión de datos en nuestra base de datos podemos implementarlo a dos niveles, a nivel de pagina o a nivel de filas,  la compresión a nivel de pagina reduce mayor aun el tamaño de las tablas ya que implementa  compresión de filas, además ahorra espacio sustituyendo los valores comunes de las columnas por una referencia a dicho valor,  a continuación muestro como podemos modificar nuestras tablas para implementar compresión  a cualquiera de los dos niveles.

ALTER TABLE MiTabla

REBUILD WITH (DATA_COMPRESSION = ROW);
GO
EXEC sp_spaceused MiTabla
GO
— DATA_COMPRESSION = PAGE
ALTER TABLE MiTabla
REBUILD WITH (DATA_COMPRESSION = PAGE);
GO
EXEC sp_spaceused MiTabla
GO
— DATA_COMPRESSION = NONE
ALTER TABLE MiTabla
REBUILD WITH (DATA_COMPRESSION = NONE);
GO

EXEC sp_spaceused MiTabla
GO

Por supuesto todo esto tiene un costo que es un mayor uso del CPU pero podría ser una solución en casos donde exista un bajo rendimiento de lectura y escritura en disco.