我有一个简单的(实际上是简化的:)场景,这可能是我过去几天头疼的原因......
我当前的应用程序(为100个用户提供服务)目前使用Oracle作为数据库。我没有存储过程(我希望实际上)。
现在,我被问到如果我作为数据库迁移到IBM DB2,该产品是否可行。
因此,在将Oracle视为理所当然之后......并重新阅读MVCC(多版本并发控制)上的Tom's article并通过this post声明DB2不在列出'或'只是在该区域的尖端'因为它...我知道我不能确定该产品将按原样与DB2一起使用。
没有希望..还是有一个很好的免责声明我可以使用..?
更新:DB2已经提高了赌注并使其看起来很好,至少在纸面上。好吧,我得到了'子句'来添加到我的db2-migration-requirements。
DB2 licenses Postgres Plus - DB2 9.7
Enterprise DB Oracle Compatibility
答案 0 :(得分:1)
我很确定这会奏效。我应该透露我现在为IBM工作的迁移专家。 DB2已授权Postgress plus,这是在DB2 9.7中。这基本上是一组Oracle兼容性功能。其中一个特点是 并发控制。其他主要的是SQL方言,PL / SQL,PL / SQL包 内置包,带扩展的JDBC客户端,OCI客户端应用程序,SQL * Plus脚本。
答案 1 :(得分:0)
不确定您在寻找什么。 一个没有读取被同时插入/更新/删除的数据的应用程序对MVCC非常“免疫”(除非它在读取大块时取出锁定,当锁定成为问题时)。
只有插入的应用程序也不会担心。
像“推特”这样的应用程序,不关心“一致性”,也不必担心。
简而言之,有很多应用程序无法发挥作用。无论您的应用是否在群组中,这里的任何人都无法提供帮助。
那就是说,你会从回归测试计划开始。在您的应用程序上运行完整的回归测试需要多长时间(每个屏幕,批处理作业等对大量模拟用户的大量数据)。确认它是否有效。它不会全部工作没有任何改变,所以加倍这个数字。如果你的老板没有在那个方面畏缩,那么请让一些DB2专家来查看代码和应用程序并获得他们的意见。