Logotipo de Zephyrnet

Nunca demasiado rico o delgado: Comprimir Sqlite 80%

Fecha:

imagen

Somos grandes fanáticos del uso de SQLite para cualquier cosa de complejidad moderada en la que, de lo contrario, podría usar un archivo. Las ventajas son numerosas, pero a veces desea reducir el almacenamiento de archivos. [Phiresky] tiene una gran respuesta a eso: la extensión sqlite-zstd ofrece compresión transparente a nivel de fila para SQLite.

Hay otras opciones, por supuesto, pero como menciona la publicación, cada una de ellas tiene algunos inconvenientes. Sin embargo, al comprimir cada fila de una tabla, puede retener el acceso aleatorio sin algunos de los inconvenientes de otros métodos.

Una tabla comprimida tiene una vista sin comprimir y una tabla comprimida subyacente. El diccionario de compresión se carga para cada tabla y se almacena en caché para mejorar el rendimiento. Desde el punto de vista de la aplicación, la vista sin comprimir es solo una tabla normal y no debería necesitar ningún cambio de código.

Puede seleccionar cómo la compresión agrupa los datos que pueden ayudar con el rendimiento. Por ejemplo, en lugar de agrupar un número fijo de filas, puede comprimir grupos de registros en función de las fechas o incluso tener un solo diccionario fijo, lo que podría ser útil para las tablas que nunca cambian.

Hablando de rendimiento, la descompresión ocurre sobre la marcha, pero la compresión y la construcción del diccionario se realizan en segundo plano cuando la base de datos está inactiva. Los puntos de referencia muestran cierto impacto en el rendimiento, por supuesto, pero ese es siempre el caso: cambias velocidad por espacio. Por otro lado, para el acceso aleatorio, en realidad es más rápido usar tablas comprimidas ya que hay menos datos para leer. Sin embargo, las actualizaciones aleatorias fueron más lentas, aunque la compresión no se produce en ese momento.

Si desea un comienzo rápido para usando SQLite, hay un Linux Fu para eso. Incluso puedes usar control de versiones con un sistema similar a Git, otra ventaja sobre los archivos tradicionales.

punto_img

Información más reciente

punto_img