本發(fā)明專利技術(shù)實施例提供一種數(shù)據(jù)遷移方法及裝置,該方法包括:接收數(shù)據(jù)遷移請求,所述數(shù)據(jù)遷移請求中包括源數(shù)據(jù)對象和目標(biāo)數(shù)據(jù)對象;所述源數(shù)據(jù)對象存儲于第一數(shù)據(jù)庫中,所述目標(biāo)數(shù)據(jù)對象存儲于第二數(shù)據(jù)庫中;分別確定所述源數(shù)據(jù)對象的第一數(shù)據(jù)結(jié)構(gòu)和所述目標(biāo)數(shù)據(jù)對象的第二數(shù)據(jù)結(jié)構(gòu);根據(jù)所述第一數(shù)據(jù)結(jié)構(gòu)和所述第二數(shù)據(jù)結(jié)構(gòu),確定數(shù)據(jù)遷移規(guī)則;將從所述第一數(shù)據(jù)庫中獲取的所述源數(shù)據(jù)對象的各數(shù)據(jù),按照所述數(shù)據(jù)遷移規(guī)則存儲至所述第二數(shù)據(jù)庫的所述目標(biāo)數(shù)據(jù)對象中。如此,增加數(shù)據(jù)庫中數(shù)據(jù)的整體統(tǒng)一性,且無需另外對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行整理,降低數(shù)據(jù)整理成本。
【技術(shù)實現(xiàn)步驟摘要】
一種數(shù)據(jù)遷移方法及裝置
本申請涉及網(wǎng)絡(luò)
,尤其涉及一種數(shù)據(jù)遷移方法及裝置。
技術(shù)介紹
DataX是阿里開源的一個異構(gòu)數(shù)據(jù)源離線同步工具,致力于實現(xiàn)包括關(guān)系型數(shù)據(jù)庫(MySQL、Oracle等)、HDFS、Hive、ODPS、HBase、FTP等各種異構(gòu)數(shù)據(jù)源之間穩(wěn)定高效的數(shù)據(jù)同步功能。其中,DataX可以通過架起一座‘橋梁’,實現(xiàn)任意兩個數(shù)據(jù)源之間皆可以通過DataX進(jìn)行數(shù)據(jù)同步;將原有的數(shù)據(jù)源之間的網(wǎng)絡(luò)形式的數(shù)據(jù)同步鏈路,改變?yōu)橐訢ataX為中心的發(fā)散式數(shù)據(jù)同步鏈路,增加了異構(gòu)數(shù)據(jù)源之間進(jìn)行數(shù)據(jù)同步的高效性和穩(wěn)定性。但該種方式雖然能實現(xiàn)異構(gòu)數(shù)據(jù)源之間的數(shù)據(jù)同步,但是隨著同步數(shù)據(jù)量增加,會導(dǎo)致數(shù)據(jù)源的數(shù)據(jù)復(fù)雜度增加,數(shù)據(jù)的整體統(tǒng)一性下降。且該種方式只能支持在本地運行異構(gòu)數(shù)據(jù)源之間的數(shù)據(jù)同步。因此,現(xiàn)在亟需一種數(shù)據(jù)遷移方法,增夠在進(jìn)行數(shù)據(jù)遷移的同時,保證數(shù)據(jù)源數(shù)據(jù)的整體統(tǒng)一性。
技術(shù)實現(xiàn)思路
本專利技術(shù)實施例提供一種數(shù)據(jù)遷移處理方法及裝置,增夠在進(jìn)行數(shù)據(jù)遷移的同時,保證數(shù)據(jù)源數(shù)據(jù)的整體統(tǒng)一性。第一方面,本專利技術(shù)實施例提供一種數(shù)據(jù)遷移方法,該方法包括:接收數(shù)據(jù)遷移請求,所述數(shù)據(jù)遷移請求中包括源數(shù)據(jù)對象和目標(biāo)數(shù)據(jù)對象;所述源數(shù)據(jù)對象存儲于第一數(shù)據(jù)庫中,所述目標(biāo)數(shù)據(jù)對象存儲于第二數(shù)據(jù)庫中;分別確定所述源數(shù)據(jù)對象的第一數(shù)據(jù)結(jié)構(gòu)和所述目標(biāo)數(shù)據(jù)對象的第二數(shù)據(jù)結(jié)構(gòu);根據(jù)所述第一數(shù)據(jù)結(jié)構(gòu)和所述第二數(shù)據(jù)結(jié)構(gòu),確定數(shù)據(jù)遷移規(guī)則;將從所述第一數(shù)據(jù)庫中獲取的所述源數(shù)據(jù)對象的各數(shù)據(jù),按照所述數(shù)據(jù)遷移規(guī)則存儲至所述第二數(shù)據(jù)庫的所述目標(biāo)數(shù)據(jù)對象中。上述方法中,根據(jù)第一數(shù)據(jù)結(jié)構(gòu)和第二數(shù)據(jù)結(jié)構(gòu),確定數(shù)據(jù)遷移規(guī)則,依照該數(shù)據(jù)遷移規(guī)則將第一數(shù)據(jù)庫中源數(shù)據(jù)對象的各數(shù)據(jù)存儲到第二數(shù)據(jù)庫中的目標(biāo)數(shù)據(jù)對象中。如此,可以使得源數(shù)據(jù)對象的各數(shù)據(jù)以符合目標(biāo)數(shù)據(jù)對象的數(shù)據(jù)結(jié)構(gòu)存儲。相比于現(xiàn)有技術(shù)中,直接將源數(shù)據(jù)對象的各數(shù)據(jù)存儲至第二數(shù)據(jù)庫,而導(dǎo)致的第二數(shù)據(jù)庫中的數(shù)據(jù)凌亂,缺少整體統(tǒng)一性。本申請可以使得第二數(shù)據(jù)庫中的目標(biāo)數(shù)據(jù)在存儲過程中既完成了數(shù)據(jù)結(jié)構(gòu)的整理,增加數(shù)據(jù)的整體統(tǒng)一性。且無需另外對第二數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行整理,降低數(shù)據(jù)整理成本。可選的,根據(jù)所述第一數(shù)據(jù)結(jié)構(gòu)和所述第二數(shù)據(jù)結(jié)構(gòu),確定數(shù)據(jù)遷移規(guī)則,包括:確定所述第一數(shù)據(jù)結(jié)構(gòu)中各第一數(shù)據(jù)項的名稱和類型,并確定所述第二數(shù)據(jù)結(jié)構(gòu)中各第二數(shù)據(jù)項的名稱和類型;若存在第一數(shù)據(jù)項的名稱與所述第二數(shù)據(jù)項的名稱相同,則確定將所述第一數(shù)據(jù)項下的數(shù)據(jù)遷移至名稱相同的第二數(shù)據(jù)項下;若存在第一數(shù)據(jù)項的名稱與各第二數(shù)據(jù)項的名稱均不同,且所述第一數(shù)據(jù)項的類型與所述第二數(shù)據(jù)項的類型相同,則確定將所述第一數(shù)據(jù)項下的數(shù)據(jù)遷移至類型相同的第二數(shù)據(jù)項下;若存在第一數(shù)據(jù)項的名稱與各第二數(shù)據(jù)項的名稱均不同,且所述第一數(shù)據(jù)項的類型與各第二數(shù)據(jù)項的類型均不同,則在所述第二數(shù)據(jù)結(jié)構(gòu)最后一個第二數(shù)據(jù)項后按序增加所述第一數(shù)據(jù)項。上述方法中,對源數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)和目標(biāo)數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)中的數(shù)據(jù)名稱、數(shù)據(jù)類型、數(shù)據(jù)順序進(jìn)行匹配。并以數(shù)據(jù)名稱為第一優(yōu)先級、數(shù)據(jù)類型為第二優(yōu)先級、數(shù)據(jù)順序為第三優(yōu)先級的匹配算法,確定數(shù)據(jù)遷移規(guī)則。可以簡單、快速并準(zhǔn)確的確定數(shù)據(jù)遷移規(guī)則。如此,使得源數(shù)據(jù)對象的各數(shù)據(jù)按照數(shù)據(jù)遷移規(guī)則遷移,提高第二數(shù)據(jù)庫中目標(biāo)數(shù)據(jù)對象的數(shù)據(jù)整體統(tǒng)一性。可選的,分別確定所述源數(shù)據(jù)對象的第一數(shù)據(jù)結(jié)構(gòu)和所述目標(biāo)數(shù)據(jù)對象的第二數(shù)據(jù)結(jié)構(gòu),包括:根據(jù)所述源數(shù)據(jù)對象和所述目標(biāo)數(shù)據(jù)對象查找配置記錄,分別獲取所述第一數(shù)據(jù)庫的第一連接信息和所述第二數(shù)據(jù)庫的第二連接信息;根據(jù)所述第一連接信息從所述第一數(shù)據(jù)庫獲取所述第一數(shù)據(jù)結(jié)構(gòu);根據(jù)所述第二連接信息從所述第二數(shù)據(jù)庫獲取所述第二數(shù)據(jù)結(jié)構(gòu)。上述方法中,根據(jù)源數(shù)據(jù)對象和目標(biāo)數(shù)據(jù)對象查找配置記錄,獲取第一連接信息和第二連接信息,第一連接信息、第二連接信息可以包括服務(wù)器地址、文件路徑或數(shù)據(jù)庫名稱等信息,以使得根據(jù)該第一連接信息從第一數(shù)據(jù)庫獲取到源數(shù)據(jù)對象的數(shù)據(jù)結(jié)構(gòu),根據(jù)該第二連接信息從第二數(shù)據(jù)庫獲取到目標(biāo)數(shù)據(jù)對象的數(shù)據(jù)結(jié)構(gòu)。可選的,接收數(shù)據(jù)遷移請求,包括:通過預(yù)設(shè)的API接口接收HTTP格式的數(shù)據(jù)遷移請求。上述方法中,通過預(yù)設(shè)的API接口接收HTTP格式的數(shù)據(jù)遷移請求,可以實現(xiàn)數(shù)據(jù)遷移的遠(yuǎn)程操作。可選的,分別確定所述源數(shù)據(jù)對象的第一數(shù)據(jù)結(jié)構(gòu)和所述目標(biāo)數(shù)據(jù)對象的第二數(shù)據(jù)結(jié)構(gòu)之前,還包括:對所述數(shù)據(jù)遷移請求進(jìn)行驗證,確定所述數(shù)據(jù)遷移請求符合驗證規(guī)則。上述方法中,通過對數(shù)據(jù)遷移請求進(jìn)行驗證,確定該數(shù)據(jù)遷移請求符合驗證規(guī)則。保證數(shù)據(jù)遷移請求的合法性,進(jìn)一步保證數(shù)據(jù)遷移操作的安全性。可選的,根據(jù)所述第一數(shù)據(jù)結(jié)構(gòu)和所述第二數(shù)據(jù)結(jié)構(gòu),確定數(shù)據(jù)遷移規(guī)則之后,還包括:顯示所述數(shù)據(jù)遷移規(guī)則;接收用戶對所述數(shù)據(jù)遷移規(guī)則調(diào)整執(zhí)行,得到更新的數(shù)據(jù)遷移規(guī)則。上述方法中,通過顯示數(shù)據(jù)遷移規(guī)則,用戶可以根據(jù)顯示的數(shù)據(jù)遷移規(guī)則,對該數(shù)據(jù)遷移規(guī)則進(jìn)行相應(yīng)的調(diào)整,使得調(diào)整后的數(shù)據(jù)遷移規(guī)則更符合需要。進(jìn)一步,根據(jù)調(diào)整后的數(shù)據(jù)遷移規(guī)則進(jìn)行數(shù)據(jù)遷移可以進(jìn)一步提高數(shù)據(jù)庫的數(shù)據(jù)整體統(tǒng)一性和可用性。可選的,從所述第一數(shù)據(jù)庫中獲取所述源數(shù)據(jù)對象的各數(shù)據(jù)之后,按照所述數(shù)據(jù)遷移規(guī)則存儲至所述第二數(shù)據(jù)庫的所述目標(biāo)數(shù)據(jù)對象中之前,所述方法還包括:將所述源數(shù)據(jù)對象中使用第一數(shù)據(jù)語言的各數(shù)據(jù),轉(zhuǎn)換為所述目標(biāo)數(shù)據(jù)對象中使用第二數(shù)據(jù)語言的各數(shù)據(jù)。上述方法中,將源數(shù)據(jù)對象中使用第一數(shù)據(jù)語言的各數(shù)據(jù),轉(zhuǎn)換為目標(biāo)數(shù)據(jù)對象中使用第二數(shù)據(jù)語言的各數(shù)據(jù)。如此,防止出現(xiàn)因為數(shù)據(jù)庫中數(shù)據(jù)的數(shù)據(jù)語言不一致,而導(dǎo)致的數(shù)據(jù)庫對其無法做相應(yīng)的處理的情況。保證數(shù)據(jù)庫中數(shù)據(jù)語言的統(tǒng)一性,以及數(shù)據(jù)庫中數(shù)據(jù)的可用性。第二方面,本專利技術(shù)實施例提供一種數(shù)據(jù)裝置方法,該裝置包括:收發(fā)模塊,用于接收數(shù)據(jù)遷移請求,所述數(shù)據(jù)遷移請求中包括源數(shù)據(jù)對象和目標(biāo)數(shù)據(jù)對象;所述源數(shù)據(jù)對象存儲于第一數(shù)據(jù)庫中,所述目標(biāo)數(shù)據(jù)對象存儲于第二數(shù)據(jù)庫中;確定模塊,用于分別確定所述源數(shù)據(jù)對象的第一數(shù)據(jù)結(jié)構(gòu)和所述目標(biāo)數(shù)據(jù)對象的第二數(shù)據(jù)結(jié)構(gòu);所述確定模塊還用于,根據(jù)所述第一數(shù)據(jù)結(jié)構(gòu)和所述第二數(shù)據(jù)結(jié)構(gòu),確定數(shù)據(jù)遷移規(guī)則;遷移模塊,用于將從所述第一數(shù)據(jù)庫中獲取的所述源數(shù)據(jù)對象的各數(shù)據(jù),按照所述數(shù)據(jù)遷移規(guī)則存儲至所述第二數(shù)據(jù)庫的所述目標(biāo)數(shù)據(jù)對象中。第三方面,本申請實施例還提供一種計算設(shè)備,包括:存儲器,用于存儲程序;處理器,用于調(diào)用所述存儲器中存儲的程序,按照獲得的程序執(zhí)行如第一方面的各種可能的設(shè)計中所述的方法。第四方面,本申請實施例還提供一種計算機可讀非易失性存儲介質(zhì),包括計算機可讀程序,當(dāng)計算機讀取并執(zhí)行所述計算機可讀程序時,使得計算機執(zhí)行如第一方面的各種可能的設(shè)計中所述的方法。本申請的這些實現(xiàn)方式或其他實現(xiàn)方式在以下實施例的描述中會更加簡明易懂。附圖說明為了更清楚地說明本專利技術(shù)實施例中的技術(shù)方案,下面將對實施例描述中所需要使用的附圖作簡要介紹,顯而易見地,下面描述中的本文檔來自技高網(wǎng)...
【技術(shù)保護(hù)點】
1.一種數(shù)據(jù)遷移方法,其特征在于,所述方法包括:/n接收數(shù)據(jù)遷移請求,所述數(shù)據(jù)遷移請求中包括源數(shù)據(jù)對象和目標(biāo)數(shù)據(jù)對象;所述源數(shù)據(jù)對象存儲于第一數(shù)據(jù)庫中,所述目標(biāo)數(shù)據(jù)對象存儲于第二數(shù)據(jù)庫中;/n分別確定所述源數(shù)據(jù)對象的第一數(shù)據(jù)結(jié)構(gòu)和所述目標(biāo)數(shù)據(jù)對象的第二數(shù)據(jù)結(jié)構(gòu);/n根據(jù)所述第一數(shù)據(jù)結(jié)構(gòu)和所述第二數(shù)據(jù)結(jié)構(gòu),確定數(shù)據(jù)遷移規(guī)則;/n將從所述第一數(shù)據(jù)庫中獲取的所述源數(shù)據(jù)對象的各數(shù)據(jù),按照所述數(shù)據(jù)遷移規(guī)則存儲至所述第二數(shù)據(jù)庫的所述目標(biāo)數(shù)據(jù)對象中。/n
【技術(shù)特征摘要】
1.一種數(shù)據(jù)遷移方法,其特征在于,所述方法包括:
接收數(shù)據(jù)遷移請求,所述數(shù)據(jù)遷移請求中包括源數(shù)據(jù)對象和目標(biāo)數(shù)據(jù)對象;所述源數(shù)據(jù)對象存儲于第一數(shù)據(jù)庫中,所述目標(biāo)數(shù)據(jù)對象存儲于第二數(shù)據(jù)庫中;
分別確定所述源數(shù)據(jù)對象的第一數(shù)據(jù)結(jié)構(gòu)和所述目標(biāo)數(shù)據(jù)對象的第二數(shù)據(jù)結(jié)構(gòu);
根據(jù)所述第一數(shù)據(jù)結(jié)構(gòu)和所述第二數(shù)據(jù)結(jié)構(gòu),確定數(shù)據(jù)遷移規(guī)則;
將從所述第一數(shù)據(jù)庫中獲取的所述源數(shù)據(jù)對象的各數(shù)據(jù),按照所述數(shù)據(jù)遷移規(guī)則存儲至所述第二數(shù)據(jù)庫的所述目標(biāo)數(shù)據(jù)對象中。
2.如權(quán)利要求1所述的方法,其特征在于,
根據(jù)所述第一數(shù)據(jù)結(jié)構(gòu)和所述第二數(shù)據(jù)結(jié)構(gòu),確定數(shù)據(jù)遷移規(guī)則,包括:
確定所述第一數(shù)據(jù)結(jié)構(gòu)中各第一數(shù)據(jù)項的名稱和類型,并確定所述第二數(shù)據(jù)結(jié)構(gòu)中各第二數(shù)據(jù)項的名稱和類型;
若存在第一數(shù)據(jù)項的名稱與所述第二數(shù)據(jù)項的名稱相同,則確定將所述第一數(shù)據(jù)項下的數(shù)據(jù)遷移至名稱相同的第二數(shù)據(jù)項下;
若存在第一數(shù)據(jù)項的名稱與各第二數(shù)據(jù)項的名稱均不同,且所述第一數(shù)據(jù)項的類型與所述第二數(shù)據(jù)項的類型相同,則確定將所述第一數(shù)據(jù)項下的數(shù)據(jù)遷移至類型相同的第二數(shù)據(jù)項下;
若存在第一數(shù)據(jù)項的名稱與各第二數(shù)據(jù)項的名稱均不同,且所述第一數(shù)據(jù)項的類型與各第二數(shù)據(jù)項的類型均不同,則在所述第二數(shù)據(jù)結(jié)構(gòu)最后一個第二數(shù)據(jù)項后按序增加所述第一數(shù)據(jù)項。
3.如權(quán)利要求1所述的方法,其特征在于,
分別確定所述源數(shù)據(jù)對象的第一數(shù)據(jù)結(jié)構(gòu)和所述目標(biāo)數(shù)據(jù)對象的第二數(shù)據(jù)結(jié)構(gòu),包括:
根據(jù)所述源數(shù)據(jù)對象和所述目標(biāo)數(shù)據(jù)對象查找配置記錄,分別獲取所述第一數(shù)據(jù)庫的第一連接信息和所述第二數(shù)據(jù)庫的第二連接信息;
根據(jù)所述第一連接信息從所述第一數(shù)據(jù)庫獲取所述第一數(shù)據(jù)結(jié)構(gòu);
根據(jù)所述第二連接信息從所述第二數(shù)據(jù)庫獲取所述第二數(shù)據(jù)結(jié)構(gòu)。
4.如權(quán)利要求1所述的方法,其特征在于,接收數(shù)據(jù)遷移請求,包括:
通過預(yù)設(shè)的API接口接收HTTP格式的數(shù)...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:沙永祥,湯紅平,丁高峰,李勝,裴華,趙萌,
申請(專利權(quán))人:銀聯(lián)智策顧問上海有限公司,
類型:發(fā)明
國別省市:上海;31
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。