我很好奇 VoltDB 是否压缩磁盘上的数据/静态数据。
如果是,使用的算法是什么?是否有第 3 方压缩方法的选项(例如,允许丢失的专有视频流压缩算法)?
VoltDB 在将快照写入磁盘时使用 Snappy 压缩。Snappy 是一种针对速度进行了优化的算法,但它仍然具有很好的压缩效果。没有任何选项可用于配置或自定义不同的压缩方法。
存储在 VoltDB 中的数据(例如,当您插入记录时)100% 存储在 RAM 中并且未压缩。Web 界面中内置了一个大小调整工作表,可以帮助根据表的特定数据类型以及您可能定义的任何索引来估计所需的 RAM。
支持的数据类型之一是 VARBINARY,它存储字节数组,即任何二进制数据。您可以将预压缩数据存储在 VARBINARY 列中,或者在存储过程中使用第三方 Java 压缩库来压缩和解压缩输入。每列的最大大小限制为 1MB,每条记录为 2MB,但是一个过程可以通过将其拆分为多个记录来存储更大大小的二进制数据。存储过程的输入或结果的最大大小为 50MB。您可以使用多个事务潜在地存储和检索更大尺寸的二进制数据。
我看到你在我们的论坛上发布了同样的问题,如果你想来回讨论更多,那是最好的地方。我们还想与您讨论您的解决方案,因此如果您愿意,我可以通过您的 VoltDB 论坛帐户中的电子邮件地址与您联系。