【发布时间】:2026-01-30 23:05:01
【问题描述】:
您可以采用哪些流行技术来增加内存数据结构的持久性(即,如果进程崩溃,您可以保留之前对该数据结构执行的所有操作?
如果我的数据结构只包含一个元组列表,那么我只需将它们存储在 SQL DB 中,这样我就可以免费获得持久性。但是,如果我的数据结构是图或树怎么办?
我能想到的一件事是将所有操作显式记录到磁盘(仅附加日志),并在发生崩溃时重播日志以保留以前的状态。如果日志变得太大,那么就会有一个压缩步骤。我猜这是数据库引擎在内部为持久性所做的事情(检查点就是这个过程的名称)?
顺便说一句,这不是整个数据集不适合内存的情况。
【问题讨论】:
标签: serialization data-structures