我在网上找到了许多资源,概述了MVCC (多版本并发控制)的概念,但没有详细的技术参考,说明它应该如何工作或实现。是否有任何在线文档或离线书籍包含足够的理论(以及一些实际帮助,理想情况下)作为实现的基础?我希望或多或少地效仿PostgreSQL所做的事情。
(对于信息,我将使用SAS/Share在SAS中实现它-它提供了一些锁定原语和对底层数据存储的并发读/写访问,但没有任何事务隔离或适当的DBMS功能。如果任何人熟悉SAS/Share,并认为这是一项不可能完成的任务,请大声喊出来!)
发布于 2011-03-03 19:08:42
发布于 2015-12-20 16:37:05
发布于 2017-03-01 20:10:49
PostgreSQL中的一个表可以存储同一行的多个版本。
此外,还有两个额外的列:
的事务id
更新是通过删除和插入新记录来完成的,VACUUM过程收集不再使用的旧版本。
https://stackoverflow.com/questions/5179676
复制相似问题