DolphinDB采用列式存储,支持无损压缩,压缩算法支持压缩效果和解压缩时间综合性能较高的LZ4和DELTA算法。DolphinDB采用增量压缩策略,每次对新增数据进行压缩,因此批量写入有助于提升压缩效果。在实际生产环境中,金融数据的压缩率一般能达到20~25%左右。
系统默认使用LZ4压缩算法,时间/日期类型或者相邻数据变化较小的整型建议采用DELTA算法。对小批量写入的场景,DolphinDB提供了写入缓存(Cache Engine)机制。写完WAL之后,数据写入缓存,到达一定阈值以后, 开始异步将缓存中的数据写入磁盘中。这相当于把少量多次的写入变成了批次写入,不仅能提升写入性能,也能提高压缩率。