He estado guardando algunos datos de ticks en TimescaleDB y me ha sorprendido la cantidad de espacio que ha estado ocupando. Soy bastante nuevo en esto, pero guardo aproximadamente 10 millones de filas por día en una tabla que tiene las siguientes columnas:
Esto ha estado ocupando aproximadamente 35 GB por día, lo que parece excesivo. Me preguntaba qué pasos puedo tomar para reducir esta cantidad: si cambiara la columna de dobles a flotante, ¿tendría esto un gran impacto? ¿Existen otras formas de reducir este tamaño?
EDITAR:
Los resultados de ejecutar chunk_relation_size_pretty() son:
y hypertable_relation_size_pretty() :
También parece muy extraño que el índice ocupe tanto espacio: intenté consultar los datos en un cierto rango de datos y los resultados tardaron bastante en volver (aproximadamente 10 minutos para los datos de un día). El índice se establece actualmente como un índice compuesto entre (instrumento, intercambio, tiempo DESC).
Debe activar la compresión nativa de TimescaleDB:
https://docs.timescale.com/latest/using-timescaledb/compression
Intente almacenar los datos en otras bases de datos de series temporales como InfluxDB o VictoriaMetrics (soy el desarrollador principal de VictoriaMetrics). Pueden proporcionar una mejor compresión en disco que TimescaleDB según los puntos de referencia .