1

我們正在進行CRM數據遷移以保持兩個CRM系統同步。並從主CRM刪除歷史數據。目標CRM是以Source爲基礎創建的。現在,當我們遷移數據時,我們保持記錄的指導,以保持數據的完整性。該解決方案期望在GUID必須可用於分配給新記錄的目標系統中。除電子郵件外,目標系統中沒有直接創建新記錄,數量也非常少。但除此之外,還有系統創建其指導的方式,例如,當我們使用Solution將新創建的實體移動到目標解決方案時,它不會維護實體和屬性的GUID,並且會創建它自己的GUID,因爲我們無法控制此。此外,內部創建的一些記錄也將由平臺創建並分配一個新的GUID。現在,如果我們不能控制目標系統中的guid創建(雖然數量很小),但我擔心源系統已經引導了目標已經消耗的情況!在數據遷移時它會出錯。 我的問題是否有可能發生上述情況?因爲如果這發生在我們身上,整個移民解決方案將失去其價值。MS CRM中GUID衝突的可能性數據遷移

+2

如果您正在進行遷移,爲什麼不在插入時使用舊的GUID?但要回答你的問題,這幾乎是不可能的。 –

回答

3

SQL Server的NEWID()生成一個128位的ID。在同一臺機器上生成的所有ID都保證是唯一的,但由於您的機器已經在多臺機器上生成,所以不能保證。

話雖這麼說,從this source上的GUID:

...爲那裏是十億分之一的機會重複,1030000億4點的UUID必須產生。

所以答案是肯定有碰撞的機會,但是它太低了,大多數人認爲答案實際上是否定的。