VoltDB Community Edition如何支持磁盘级持久性?

时间:2012-07-20 01:52:02

标签: voltdb

VoltDB的网站显示社区版支持完整的ACID(其中包括D表示持久性)但看起来它不支持与命令日志记录相关的崩溃恢复。社区版和商业版之间的耐久性“D”部分是否有所不同?如果机器发生故障,所有数据都会丢失吗?

1 个答案:

答案 0 :(得分:13)

VoltDB发行版 - 社区版和企业版 - 通过数据库快照支持持久性,数据库快照可以临时执行,以管理员定义的频率或连续执行。快照将写入永久存储。通过从快照还原来实现数据库恢复(持久性)。

VoltDB企业版还包括一项名为命令日志记录的功能,该功能为快照之间(通常是短暂的)时间间隔内发生的事务提供持久性。命令日志记录可以配置为同步运行(100%持久性保证)或异步运行(对事务延迟的影响较小,代价是在崩溃期间丢失某些事务)。如果使用异步日志记录,则可以配置fsync窗口以平衡延迟和持久性目标。

总之,VoltDB的两个发行版都通过快照支持持久性,而企业版通过命令日志提供额外的持久性。

应该注意的是,VoltDB的两个发行版还包括通过称为k-safety的同步多主特征的内置高可用性。你可以保持尽可能多的主人和#34;根据需要,每个数据库节点都可以,并且VoltDB将透明地(并同步地)将事务应用于所有适当的节点。如果一个节点崩溃,其对等方只需继续接受/处理工作。这个" Tandem-style"容错显着降低了需要数据库恢复的中断的可能性。

详细了解VoltDB快照:http://community.voltdb.com/docs/UsingVoltDB/SaveSnapshotAuto

阅读有关VoltDB命令日志记录的更多信息:http://community.voltdb.com/docs/UsingVoltDB/ChapCmdLog