🔎
Más
Especiales
Filtros
IA hace 2 h

Prototipos de texto-historia comprimidos en SQLite

Se han desarrollado prototipos de almacenamiento de historial de texto comprimido en SQLite. Estos prototipos permiten almacenar versiones anteriores de un texto en una base de datos relacional de manera eficiente.

Los prototipos se basan en la idea de aplicar algoritmos de compresión a un array JSON que contiene todas las versiones anteriores del texto. Esto reduce significativamente el tamaño de los datos almacenados. Se han implementado dos enfoques: `WholeBlobHistoryStore` y `ChunkedHistoryStore`. El primero reescribe un blob histórico comprimido por cada edición, mientras que el segundo divide la historia en trozos comprimidos para mejorar la escalabilidad.

“El primero reescribe un blob histórico comprimido por cada edición, mientras que el segundo divide la historia en trozos comprimidos para mejorar la escalabilidad”

La compresión de los datos históricos ha demostrado ser efectiva. En un experimento, 1.000 revisiones simuladas de un documento resultaron en 20,4 MB de texto de revisión sin comprimir, que se redujeron a 80,3 KB después de aplicar la compresión Zstandard. Para evitar la sobrecarga de descomprimir y volver a comprimir la matriz completa en cada edición, se sugiere dividir la historia en varias filas, cada una con un máximo de 128 revisiones o 3 MB de JSON sin comprimir.

El almacenamiento de historial de texto en bases de datos relacionales es un desafío común. La mayoría de los enfoques tradicionales implican almacenar cada versión anterior del texto en una fila separada, lo que puede generar una gran cantidad de datos. La compresión de estos datos puede ser una solución eficiente, especialmente cuando se combinan con técnicas de división de datos para mejorar la escalabilidad.

Más sobre IA