DolphinDB的压缩率

shishiah_1888
  • 150

请问DolphinDB使用分布式表写入股票level1数据时,合理的压缩率大概在多少?目前看来,在DolphinDB中使用的空间和csv本身的大小相差不大,好像只是csv和binary的区别。

回复
阅读 1.3k
2 个回答

DolphinDB采用列式存储,支持无损压缩,压缩算法支持压缩效果和解压缩时间综合性能较高的LZ4和DELTA算法。DolphinDB采用增量压缩策略,每次对新增数据进行压缩,因此批量写入有助于提升压缩效果。在实际生产环境中,金融数据的压缩率一般能达到20~25%左右。

系统默认使用LZ4压缩算法,时间/日期类型或者相邻数据变化较小的整型建议采用DELTA算法。对小批量写入的场景,DolphinDB提供了写入缓存(Cache Engine)机制。写完WAL之后,数据写入缓存,到达一定阈值以后, 开始异步将缓存中的数据写入磁盘中。这相当于把少量多次的写入变成了批次写入,不仅能提升写入性能,也能提高压缩率。

1.DolphinDB采用增量压缩策略,每次只对新增数据进行压缩,因此批量写入有助于提升压缩效果。
2.每次写入的数据每列中重复的越多,压缩效果越好。
3.如果每次只是写入每秒的数据,由于这些数据都是不同的股票,每列中的数据基本不一样,压缩效果就不会好。
4.https://gitee.com/dolphindb/T... 这个教程的4.6节有提升数据压缩率的介绍,供参考

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进