我已经阅读了所有 SO 问题、编码恐怖文章,并用 Google 搜索了我的大脑,寻找修订控制数据的最佳方法。它们都可以工作,并且都有基于用例等的适当实现。我真正想知道的是为什么没有编写一个数据库来原生支持数据级别的修改?
让我感到困惑的是,API 已经在交易中实际到位了。我们启动一个事务,更改一些数据,然后commit。我们也在对数据库进行身份验证,因此存在责任。我的公司存储整个数据库的月末版本用于会计目的,相当于标签。这不是让人尖叫RCS吗?
数据库在模式而非数据方面也可以从分支中受益匪浅。由于我真的只关心数据,这会大大增加实现的难度,所以我将坚持只使用标签和提交。
现在我知道数据库是非常关键的时间应用程序,因此任何不必要的开销都会被遗忘,并且某些数据库是史诗级的巨大,修订只会使该大小成指数增长。每个表的选择加入版本控制无疑在中小型环境中占有一席之地,在这些环境中,有毫秒的空闲时间,并且数据历史具有一定程度的重要性。我想要提交,我想要日志,我想要恢复,我想要差异,我想要责备,我想要标签,我想要签出。我想要 MF-ing 修订控制。
我有一个问题在那里...
Oracle 是一种本地解决方案闪回数据库(又名全面回忆) http://www.oracle.com/technology/products/database/oracle11g/pdf/total-recall-whitepaper.pdf。它是企业版的额外收费,但它非常酷。只要我们想要保留数据的版本,它就会透明地存储它,并提供查询旧版本数据的语法。它可以逐个表地启用。
本质上,闪回数据库就像使用触发器将记录存储在跟踪表中,但灵活、高性能且对正常工作不可见。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)