数据库持久化
SmartEDB提供了多种方法来确保内存中的数据库数据可以安全保存到持久存储介质上。首先,备份是一种谨慎且有效的方式,可以在硬件发生故障时保护您的数据库。(详情请参阅数据库备份和恢复页面。)通过备份,您可以将数据库恢复到最后一次备份完成时的状态。实际上,应用程序可以从单独的“备份”进程或任务中连续运行备份,但这并不是为内存数据库添加持久性的解决方案。如果您需要创建持久数据库,请参考创建数据库页面或数据导出和导入页面了解其他持久性选项。
以下是选择适合您应用程序的持久化技术时的一些考虑因素:
- 您的应用程序能否承受任何交易的损失?如果不能,那么最佳方案是创建并维护一个持久化数据库,将每个事务提交到持久存储介质(这是默认的事务策略)。虽然持久介质的速度较慢,可能会对性能造成一定影响,但可以通过优化磁盘管理器来缓解这一问题。(详情请参阅Persistent Database I/O页面。)
- 一种替代持久数据库的方法是使用高可用性(HA)。虽然这种方法也有一定的开销,但在现代快速网络环境下,它可能比写入缓慢的持久介质更快。与持久数据库相比,HA的优势在于发生故障时的停机时间更短。切换几乎是即时的,并且同步复制能确保不会丢失任何事务。(详情请参阅高可用性介绍页面。)
- 当事务日志处于活动状态时,您可以运行备份。此外,如果使用HA方案,也可以在副本上运行备份。对于持久数据库,同样可以进行备份。尽管活动备份会对性能产生一些负面影响,但它不会锁定数据库。