2010-05-14 38 views
1

我有一個簡單的(實際上簡化了:))場景,可能是因爲我一直有在過去的幾天頭痛的原因...對遷移的影響MVCC從Oracle到DB2

我現在應用程序(服務於100多名用戶)目前使用Oracle作爲數據庫。我沒有存儲過程(實際上我希望)。

現在,有人問我,如果我遷移到IBM DB2作爲數據庫,產品是否會工作。

因此,在認爲Oracle理所當然的同時......並重新閱讀了MVCC(Multiversion併發控制)上的Tom's article,並且通過this post指出DB2不在「列表中」或「在該地區工作,因爲它......我知道我不能確定該產品將按原樣與DB2一起工作。

有沒有希望..或有沒有一個很好的免責聲明我可以使用..?

UPDATE:DB2已經提高了賭注,至少在紙面上看起來不錯。那麼,我有'子句'添加到我的db2-migration-requirements。

DB2 licenses Postgres Plus - DB2 9.7
Enterprise DB Oracle Compatibility

回答

1

我很確定這會工作。我應該透露我現在是IBM的移民專家。 DB2已經許可Postgress plus,這在DB2 9.7中。這基本上被用於一組Oracle兼容性功能。其中一個功能是 併發控制。其他主要的是SQL方言,PL/SQL,PL/SQL包 內置包,帶擴展的JDBC客戶端,OCI客戶端應用程序,SQL * Plus腳本。

+0

是啊!這正是我正在尋找的。謝謝! – 2010-05-21 02:54:04

0

不知道你在找什麼。 不讀取正被併發插入/更新/刪除的數據的應用程序對MVCC非常「免疫」(除非在讀取大塊時鎖定,而鎖定成爲問題時除外)。

一個幾乎只需插入的應用程序也不用擔心。

像應用程序,這是不是關注「一致性」的'微博'也不必擔心。

簡而言之,有很多應用程序不會有什麼區別。無論你的應用是否在組中,這裏都不是任何人都可以幫到的。

也就是說,你會從迴歸測試計劃開始。需要多長時間對您的應用程序(包括大量模擬用戶的大量數據上的每個屏幕,批量作業等)執行完整的迴歸測試,以確認其正常工作。它不會在沒有任何改變的情況下第一次工作,所以加倍這個數字。如果你的老闆沒有在這個總數上下功夫,那麼請幾位DB2專家來看代碼和應用程​​序,並得到他們的意見。

+1

哦,它絕對是一個正在同時修改的應用程序讀取數據......但是令人擔憂的是,「在相同環境下執行相同的,顯然是安全的隔離級別的各種數據庫可以並且會返回截然不同的答案」。不同數據庫的測試用例結果不同? :) – 2010-05-18 08:20:08