數(shù)據(jù)遷移框架的制作方法【專利說(shuō)明】數(shù)據(jù)遷移框架[0001][0002]數(shù)據(jù)系統(tǒng)當(dāng)前被廣泛使用。然而,隨著組織的成長(zhǎng)或改變,可能希望從當(dāng)前部署的一種數(shù)據(jù)系統(tǒng)切換到另一種數(shù)據(jù)系統(tǒng)。將公司的數(shù)據(jù)從一種數(shù)據(jù)系統(tǒng)迀移到另一種數(shù)據(jù)系統(tǒng)可能是相當(dāng)復(fù)雜且困難的。[0003]在一個(gè)特定示例中,業(yè)務(wù)數(shù)據(jù)系統(tǒng)被許多組織用來(lái)執(zhí)行業(yè)務(wù)操作。業(yè)務(wù)數(shù)據(jù)系統(tǒng)可包括例如企業(yè)資源規(guī)劃(ERP)系統(tǒng)、客戶關(guān)系管理(CRM)系統(tǒng)以及業(yè)務(wù)線(LOB)系統(tǒng)以及其他業(yè)務(wù)數(shù)據(jù)系統(tǒng)。[0004]隨著公司成長(zhǎng)或改變,對(duì)于公司或組織而言從使用一種業(yè)務(wù)數(shù)據(jù)系統(tǒng)改變成使用另一種業(yè)務(wù)數(shù)據(jù)系統(tǒng)并非不常見(jiàn)。這可能是困難的。例如,兩種業(yè)務(wù)數(shù)據(jù)系統(tǒng)的格式可能是不同的。在此情況下,從源業(yè)務(wù)數(shù)據(jù)系統(tǒng)向目標(biāo)業(yè)務(wù)數(shù)據(jù)系統(tǒng)準(zhǔn)確地轉(zhuǎn)移數(shù)據(jù)可能是困難的。如果源業(yè)務(wù)數(shù)據(jù)系統(tǒng)中的各記錄根據(jù)與目標(biāo)業(yè)務(wù)數(shù)據(jù)系統(tǒng)中的各記錄不同的格式保存,數(shù)據(jù)可能被不準(zhǔn)確地從一個(gè)系統(tǒng)移動(dòng)到另一個(gè)系統(tǒng),并且數(shù)據(jù)甚至可能丟失。[0005]另外,情況可能是公司簡(jiǎn)單地使用數(shù)據(jù)庫(kù)來(lái)保留其業(yè)務(wù)數(shù)據(jù)。該公司可能隨后想要將數(shù)據(jù)從數(shù)據(jù)庫(kù)迀移到業(yè)務(wù)數(shù)據(jù)系統(tǒng)。在此情況下,業(yè)務(wù)數(shù)據(jù)的源甚至不是業(yè)務(wù)數(shù)據(jù)系統(tǒng)而只不過(guò)是簡(jiǎn)單數(shù)據(jù)庫(kù)。這可加劇與數(shù)據(jù)迀移相關(guān)聯(lián)的問(wèn)題。[0006]提供以上討論僅用作一般的背景信息,并不旨在幫助確定所要求保護(hù)的主題的范圍。[0007]概述[0008]從數(shù)據(jù)系統(tǒng)的實(shí)例檢索用戶數(shù)據(jù)。生成數(shù)據(jù)系統(tǒng)和一個(gè)或多個(gè)暫存表(stagingtable)之間的映射并且生成包括數(shù)據(jù)和該映射的包。使用該映射將用戶數(shù)據(jù)保存到一個(gè)或多個(gè)暫存表。[0009]提供概述以便以簡(jiǎn)化形式介紹將在以下詳細(xì)描述中進(jìn)一步描述的一些概念的選集。本概述不旨在標(biāo)識(shí)出所要求保護(hù)的主題的關(guān)鍵特征或必要特征,也不旨在用于幫助確定所要求保護(hù)的主題的范圍。所要求保護(hù)的主題不限于解決在背景中提及的任何或所有缺點(diǎn)的實(shí)現(xiàn)。[0010]附圖簡(jiǎn)沐[0011]圖1是數(shù)據(jù)迀移體系結(jié)構(gòu)的一個(gè)實(shí)施例的框圖。[0012]圖2是示出圖1所示的體系結(jié)構(gòu)的總體操作的一個(gè)實(shí)施例的流程圖。[0013]圖3是示出用于將數(shù)據(jù)迀移到基于云的業(yè)務(wù)數(shù)據(jù)系統(tǒng)的迀移體系結(jié)構(gòu)的框圖。[0014]圖4是用于將數(shù)據(jù)迀移到基于云的業(yè)務(wù)數(shù)據(jù)系統(tǒng)的迀移體系結(jié)構(gòu)的另一框圖。[0015]圖5是示出用于將數(shù)據(jù)迀移到基于云的業(yè)務(wù)數(shù)據(jù)系統(tǒng)的迀移體系結(jié)構(gòu)的另一個(gè)實(shí)施例的框圖。[0016]圖6示出基于云的體系結(jié)構(gòu)的更多細(xì)節(jié)。[0017]圖7-11示出了移動(dòng)設(shè)備的各種實(shí)施例。[0018]圖12是一個(gè)解說(shuō)性計(jì)算環(huán)境的框圖。[0019]詳細(xì)描沐[0020]圖1示出用于從源業(yè)務(wù)數(shù)據(jù)系統(tǒng)102向目標(biāo)業(yè)務(wù)數(shù)據(jù)系統(tǒng)104迀移數(shù)據(jù)的體系結(jié)構(gòu)100的一個(gè)實(shí)施例。在本文中所述的實(shí)施例中,源業(yè)務(wù)數(shù)據(jù)系統(tǒng)102和目標(biāo)業(yè)務(wù)數(shù)據(jù)系統(tǒng)104兩者將被描述為企業(yè)資源規(guī)劃(ERP)系統(tǒng)。然而,要注意,它們也可以是多種多樣的其它數(shù)據(jù)系統(tǒng)中的任何數(shù)據(jù)系統(tǒng),只不過(guò)在本文中出于示例的原因?qū)⑺鼈兠枋鰹闃I(yè)務(wù)數(shù)據(jù)系統(tǒng)(且具體而言為ERP系統(tǒng))。[0021]情況可能是業(yè)務(wù)數(shù)據(jù)系統(tǒng)102是目標(biāo)業(yè)務(wù)數(shù)據(jù)系統(tǒng)104的不同版本,或者源業(yè)務(wù)數(shù)據(jù)系統(tǒng)102是與目標(biāo)業(yè)務(wù)數(shù)據(jù)系統(tǒng)104完全不同的業(yè)務(wù)數(shù)據(jù)系統(tǒng),在本文中構(gòu)想了所有這些可能性。[0022]在任何情況下,源業(yè)務(wù)數(shù)據(jù)系統(tǒng)102被示出為耦合至用戶設(shè)備106,該用戶設(shè)備106生成具有用戶輸入機(jī)制110的用戶界面顯示108,該用戶輸入機(jī)制110可以被用戶112致動(dòng)以控制和操縱源業(yè)務(wù)數(shù)據(jù)系統(tǒng)102。用戶輸入機(jī)制110可以是多種多樣的不同類型的用戶輸入機(jī)制中的任何機(jī)制。例如,它們可以是下拉菜單、文本框、圖標(biāo)、按鈕、復(fù)選框或其他用戶可致動(dòng)輸入機(jī)制。另外,它們還可以按多種多樣不同的方式來(lái)致動(dòng)。在使用語(yǔ)音識(shí)別組件的情況下,它們可以通過(guò)語(yǔ)音命令來(lái)被致動(dòng)。此外,在觸敏屏幕上顯示用戶界面顯示108的情況中,它們可以通過(guò)觸摸姿勢(shì)(諸如使用用戶的手指、指示筆或其他機(jī)制)來(lái)被致動(dòng)。另外,它們可以使用點(diǎn)擊設(shè)備(諸如鼠標(biāo)或跟蹤球),使用硬件鍵盤或軟鍵盤、小鍵盤、拇指墊等來(lái)致動(dòng)。[0023]源業(yè)務(wù)數(shù)據(jù)系統(tǒng)102還解說(shuō)性地包括具有一個(gè)或多個(gè)源實(shí)體文件116的數(shù)據(jù)源114。源實(shí)體文件116解說(shuō)性地是與源業(yè)務(wù)數(shù)據(jù)系統(tǒng)102中的實(shí)體相關(guān)聯(lián)的業(yè)務(wù)記錄。存在多種多樣不同類型的實(shí)體,諸如表示客戶的客戶實(shí)體、表示廠商的廠商實(shí)體、表示發(fā)票的發(fā)票實(shí)體、表不廣品的廣品實(shí)體,等等。[0024]目標(biāo)業(yè)務(wù)數(shù)據(jù)系統(tǒng)104解說(shuō)性地包括目標(biāo)數(shù)據(jù)存儲(chǔ)118和暫存(staged)數(shù)據(jù)存儲(chǔ)128。另外,目標(biāo)業(yè)務(wù)數(shù)據(jù)系統(tǒng)104解說(shuō)性地包括目標(biāo)業(yè)務(wù)數(shù)據(jù)應(yīng)用140和處理器142。將注意,盡管暫存數(shù)據(jù)存儲(chǔ)128和目標(biāo)數(shù)據(jù)存儲(chǔ)118兩者均被示為目標(biāo)業(yè)務(wù)數(shù)據(jù)系統(tǒng)104的部分,但是它們也可以是分開(kāi)的或遠(yuǎn)離目標(biāo)業(yè)務(wù)數(shù)據(jù)系統(tǒng)104并可由系統(tǒng)104訪問(wèn)。另夕卜,盡管關(guān)于目標(biāo)業(yè)務(wù)數(shù)據(jù)系統(tǒng)104示出了兩個(gè)數(shù)據(jù)存儲(chǔ),但是還可以使用附加的數(shù)據(jù)存儲(chǔ),或者這兩個(gè)數(shù)據(jù)存儲(chǔ)可以被結(jié)合到單個(gè)數(shù)據(jù)存儲(chǔ)中。同樣,盡管暫存系統(tǒng)(stagingsystem)120和目標(biāo)系統(tǒng)132被示出與目標(biāo)業(yè)務(wù)數(shù)據(jù)系統(tǒng)104和源業(yè)務(wù)數(shù)據(jù)系統(tǒng)102分開(kāi),但是它們還可以是這兩個(gè)系統(tǒng)中任一者的部分。[0025]在一個(gè)實(shí)施例中,暫存系統(tǒng)120包括源到暫存映射器組件122、源到暫存組件124和處理器126。目標(biāo)系統(tǒng)132包括暫存到目標(biāo)映射器組件134、暫存到目標(biāo)組件136和處理器138。[0026]處理器126、138和142是具有相關(guān)聯(lián)的存儲(chǔ)器和定時(shí)電路系統(tǒng)(未單獨(dú)示出)的解說(shuō)性的計(jì)算機(jī)處理器。它們被它們所隸屬的系統(tǒng)的其他部分解說(shuō)性地激活并促成這些部分的功能。[0027]在更加詳細(xì)地描述體系結(jié)構(gòu)100的總體操作之前,出于清楚起見(jiàn)提供簡(jiǎn)要概覽。當(dāng)用戶112決定將數(shù)據(jù)源114中的數(shù)據(jù)迀移到目標(biāo)業(yè)務(wù)數(shù)據(jù)系統(tǒng)104中的目標(biāo)數(shù)據(jù)源118時(shí),源到暫存映射器組件122解說(shuō)性地生成數(shù)據(jù)源114中的數(shù)據(jù)和暫存數(shù)據(jù)存儲(chǔ)128中的各種暫存表(或其他暫存數(shù)據(jù)結(jié)構(gòu))之間的映射123。例如,映射器122將解說(shuō)性地生成源實(shí)體文件116中的數(shù)據(jù)和暫存數(shù)據(jù)存儲(chǔ)128中的數(shù)據(jù)結(jié)構(gòu)之間的映射。源到暫存組件124隨后使用映射123將數(shù)據(jù)從源實(shí)體文件116迀移到暫存數(shù)據(jù)存儲(chǔ)128中所映射的數(shù)據(jù)結(jié)構(gòu)。這導(dǎo)致來(lái)自源實(shí)體文件116的數(shù)據(jù)被迀移到數(shù)據(jù)存儲(chǔ)128中的表或其他結(jié)構(gòu)作為暫存數(shù)據(jù)130。[0028]暫存到目標(biāo)映射器組件134隨后生成暫存數(shù)據(jù)存儲(chǔ)128中各數(shù)據(jù)結(jié)構(gòu)與目標(biāo)數(shù)據(jù)存儲(chǔ)118中各數(shù)據(jù)結(jié)構(gòu)之間的映射,其中暫存數(shù)據(jù)存儲(chǔ)128存儲(chǔ)暫存數(shù)據(jù)130,目標(biāo)數(shù)據(jù)存儲(chǔ)118將來(lái)自源實(shí)體文件116的數(shù)據(jù)最終存儲(chǔ)為一個(gè)或多個(gè)目標(biāo)實(shí)體文件150。這被示為映射135。暫存到目標(biāo)組件136隨后訪問(wèn)映射135,并將暫存數(shù)據(jù)130迀移到目標(biāo)數(shù)據(jù)存儲(chǔ)118以及將其存儲(chǔ)在目標(biāo)實(shí)體文件150中。一旦完成這個(gè),就可以如用戶112所期望那樣在目標(biāo)實(shí)體文件150上運(yùn)行目標(biāo)業(yè)務(wù)數(shù)據(jù)應(yīng)用140。[0029]圖2是示出從源業(yè)務(wù)數(shù)據(jù)系統(tǒng)102向目標(biāo)業(yè)務(wù)數(shù)據(jù)系統(tǒng)104迀移數(shù)據(jù)的體系結(jié)構(gòu)100的總體操作的一個(gè)實(shí)施例的流程圖。源到暫存映射器組件122首先讀源實(shí)體文件116。這由圖2中的框200指示。將注意,源實(shí)體文件116可以根據(jù)未知的方案202來(lái)格式化,并且其還可以是非規(guī)范化(或不規(guī)則)的方案204。類似地,如背景部分簡(jiǎn)要討論的,數(shù)據(jù)的源甚至不需要是業(yè)務(wù)數(shù)據(jù)系統(tǒng)。相反,它可以僅是數(shù)據(jù)庫(kù)或其他系統(tǒng)。在任何情況下,映射器組件122讀源實(shí)體文件116。[0030]組件122隨后生成映射123,該映射從源實(shí)體文件116映射到暫存數(shù)據(jù)存儲(chǔ)128中的一個(gè)或多個(gè)暫存表。這可以包括多種多樣的不同步驟及匹配技術(shù)。在一個(gè)實(shí)施例中,映射器組件122對(duì)照源實(shí)體文件116中的數(shù)據(jù)來(lái)映射暫存數(shù)據(jù)存儲(chǔ)128中現(xiàn)有的各列。為了做到這個(gè),映射器組件122可以對(duì)照源實(shí)體文件116中的數(shù)據(jù)名稱來(lái)映射各列的名稱。在兩個(gè)名稱完全匹配的情況下,與所匹配的名稱相對(duì)應(yīng)的源數(shù)據(jù)以及暫存數(shù)據(jù)存儲(chǔ)128中與所匹配的名稱相對(duì)應(yīng)的列被相互映射。這由圖2中的框206指示。映射器組件122還解說(shuō)性地執(zhí)行部分匹配。例如,如果數(shù)據(jù)既具有表名稱又具有字段名稱,映射器組件122解說(shuō)性地嘗試匹配這兩者。替換地,暫存數(shù)據(jù)存儲(chǔ)128中的現(xiàn)有表可以將源實(shí)體文件116中找出的表名和字段名分成兩個(gè)單獨(dú)的表。在此情況下,源數(shù)據(jù)被匹配到暫存數(shù)據(jù)存儲(chǔ)128中的這兩個(gè)單獨(dú)的表中。圖2中的框208和框210指示跨多個(gè)不同表中的多個(gè)不同行的部分匹配和匹配。當(dāng)然,還可以使用其他類型的映射技術(shù),如框212所指示。例如,如果源實(shí)體文件116具有在相同欄內(nèi)的客戶名稱和消費(fèi)者地址,映射器組件122可以解說(shuō)性地識(shí)別它們可以被映射到暫存數(shù)據(jù)存儲(chǔ)128中的兩個(gè)不同的單獨(dú)的表中,并也以那種方式生成映射。在任何情況下,圖3中的框214解說(shuō)性地指示生成從源文件到暫存數(shù)據(jù)存儲(chǔ)128中暫存表的映射。[00當(dāng)前第1頁(yè)1 2 3 4