亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

數(shù)據(jù)交換方法、裝置及電子設(shè)備、計(jì)算機(jī)程序產(chǎn)品與流程

文檔序號(hào):40462806發(fā)布日期:2024-12-27 09:28閱讀:3來源:國知局
數(shù)據(jù)交換方法、裝置及電子設(shè)備、計(jì)算機(jī)程序產(chǎn)品與流程

本技術(shù)涉及數(shù)據(jù)交換,尤其涉及一種數(shù)據(jù)交換方法、裝置及電子設(shè)備、計(jì)算機(jī)程序產(chǎn)品。


背景技術(shù):

1、關(guān)系型數(shù)據(jù)庫系統(tǒng),支持事務(wù)性的處理,具備很好的數(shù)據(jù)完整性和安全性,適用于需要高度結(jié)構(gòu)化數(shù)據(jù)和復(fù)雜查詢的應(yīng)用場景。非關(guān)系型的數(shù)據(jù)庫(nosql)以其靈活的數(shù)據(jù)模型和高可伸縮性而著名,支持復(fù)制和分片,能夠提供高可用性和橫向擴(kuò)展能力,適用于需要頻繁變更數(shù)據(jù)結(jié)構(gòu)或處理大量半結(jié)構(gòu)化數(shù)據(jù)的應(yīng)用場景。

2、在開發(fā)應(yīng)用系統(tǒng)時(shí),由于應(yīng)用場景的新增,可能需要將數(shù)據(jù)從一個(gè)數(shù)據(jù)庫存儲(chǔ)組件轉(zhuǎn)移到另一個(gè)數(shù)據(jù)庫組件,或者進(jìn)行數(shù)據(jù)交換和備份等操作。

3、現(xiàn)有技術(shù)在數(shù)據(jù)同步領(lǐng)域存在限制,無法滿足可靈活配置的數(shù)據(jù)同步需求,尤其是對于不支持sql協(xié)議的數(shù)據(jù)庫類型,無法靈活配置源頭數(shù)據(jù)庫與目標(biāo)數(shù)據(jù)庫之間的字段映射關(guān)系,導(dǎo)致字段邏輯的變更或者新增字段都需要手動(dòng)修改代碼。

4、現(xiàn)有技術(shù)多是數(shù)據(jù)庫之間的單向數(shù)據(jù)同步,增加一種數(shù)據(jù)類型需要單獨(dú)開發(fā)一套代碼。代碼的可移植性和可重用性較差,增加了代碼的復(fù)雜度和維護(hù)難度。多種異構(gòu)數(shù)據(jù)源之間由于通訊協(xié)議和數(shù)據(jù)規(guī)約的不同,在數(shù)據(jù)交換上存在著壁壘,開發(fā)人員需要編寫大量的代碼進(jìn)行協(xié)議匹配和數(shù)據(jù)同步驗(yàn)證,從而在開發(fā)周期上增加了不必要的成本。編寫代碼容易引入人為因素,代碼的質(zhì)量、性能很難保證。

5、現(xiàn)有技術(shù)對于異構(gòu)數(shù)據(jù)源的數(shù)據(jù)交換方法都是通過編寫數(shù)據(jù)庫源生應(yīng)用程序編程接口(api)的代碼來實(shí)現(xiàn)數(shù)據(jù)交換的過程,但數(shù)據(jù)源原生api的代碼配置復(fù)雜,數(shù)據(jù)交換效率較低。尤其在海量數(shù)據(jù)同步時(shí),會(huì)存在明顯的性能瓶頸。


技術(shù)實(shí)現(xiàn)思路

1、本技術(shù)實(shí)施例提供了一種數(shù)據(jù)交換方法、裝置及電子設(shè)備、計(jì)算機(jī)程序產(chǎn)品,以提高數(shù)據(jù)交換的時(shí)效性和準(zhǔn)確性。

2、本技術(shù)實(shí)施例采用下述技術(shù)方案:

3、第一方面,本技術(shù)實(shí)施例提供一種數(shù)據(jù)交換方法,所述數(shù)據(jù)交換方法由數(shù)據(jù)交換系統(tǒng)執(zhí)行,所述數(shù)據(jù)交換方法包括:

4、獲取用戶的數(shù)據(jù)交換配置信息,所述數(shù)據(jù)交換配置信息包括源數(shù)據(jù)庫和目標(biāo)數(shù)據(jù)庫的配置信息;

5、根據(jù)所述源數(shù)據(jù)庫對應(yīng)的數(shù)據(jù)讀取方式讀取所述源數(shù)據(jù)庫中的數(shù)據(jù),并將讀取到的源數(shù)據(jù)緩存至分布式文件系統(tǒng)中;

6、根據(jù)所述目標(biāo)數(shù)據(jù)庫的數(shù)據(jù)轉(zhuǎn)換規(guī)則對讀取到的源數(shù)據(jù)進(jìn)行轉(zhuǎn)換處理,得到轉(zhuǎn)換后的源數(shù)據(jù);

7、根據(jù)所述目標(biāo)數(shù)據(jù)庫對應(yīng)的數(shù)據(jù)寫入方式將所述轉(zhuǎn)換后的源數(shù)據(jù)寫入所述目標(biāo)數(shù)據(jù)庫。

8、可選地,所述獲取用戶的數(shù)據(jù)交換配置信息包括:

9、提供web交互界面;

10、通過所述web交互界面獲取用戶輸入的數(shù)據(jù)交換配置信息,所述數(shù)據(jù)交換配置信息還包括字段映射、抽取語句、寫入方式、系統(tǒng)資源、數(shù)據(jù)篩選條件以及任務(wù)調(diào)度信息中的至少一種。

11、可選地,所述數(shù)據(jù)交換系統(tǒng)基于spark集群實(shí)現(xiàn),所述根據(jù)所述源數(shù)據(jù)庫對應(yīng)的數(shù)據(jù)讀取方式讀取所述源數(shù)據(jù)庫中的數(shù)據(jù)包括:

12、確定所述源數(shù)據(jù)庫是否支持sql協(xié)議;

13、若支持,則采取sparksql方式批量讀取所述源數(shù)據(jù)庫中的數(shù)據(jù);

14、若不支持,則使用spark.read方式批量讀取所述源數(shù)據(jù)庫中的數(shù)據(jù)。

15、可選地,所述數(shù)據(jù)交換配置信息還包括數(shù)據(jù)篩選條件,所述根據(jù)所述源數(shù)據(jù)庫對應(yīng)的數(shù)據(jù)讀取方式讀取所述源數(shù)據(jù)庫中的數(shù)據(jù)還包括:

16、在所述源數(shù)據(jù)庫不支持sql協(xié)議的情況下,創(chuàng)建臨時(shí)表;

17、基于所述數(shù)據(jù)篩選條件,在所述臨時(shí)表中采取sparksql方式對讀取到的源數(shù)據(jù)進(jìn)行篩選,得到篩選后的源數(shù)據(jù)。

18、可選地,所述根據(jù)所述目標(biāo)數(shù)據(jù)庫的數(shù)據(jù)轉(zhuǎn)換規(guī)則對讀取到的源數(shù)據(jù)進(jìn)行轉(zhuǎn)換處理,得到轉(zhuǎn)換后的源數(shù)據(jù)包括:

19、若所述目標(biāo)數(shù)據(jù)庫為postgresql,則根據(jù)postgresql數(shù)據(jù)庫的表結(jié)構(gòu)對讀取到的源數(shù)據(jù)進(jìn)行轉(zhuǎn)換處理,得到第一轉(zhuǎn)換后的源數(shù)據(jù);

20、若所述目標(biāo)數(shù)據(jù)庫為elasticsearch,則根據(jù)elasticsearch的索引映射類型對讀取到的源數(shù)據(jù)進(jìn)行轉(zhuǎn)換處理,得到第二轉(zhuǎn)換后的源數(shù)據(jù);

21、若所述目標(biāo)數(shù)據(jù)庫為hbase,則根據(jù)hbase的主鍵和列結(jié)構(gòu)對讀取到的源數(shù)據(jù)進(jìn)行轉(zhuǎn)換處理,得到第三轉(zhuǎn)換后的源數(shù)據(jù);

22、若所述目標(biāo)數(shù)據(jù)庫為hive,則根據(jù)hive的表結(jié)構(gòu)對讀取到的源數(shù)據(jù)進(jìn)行轉(zhuǎn)換處理,得到第四轉(zhuǎn)換后的源數(shù)據(jù)。

23、可選地,所述根據(jù)所述目標(biāo)數(shù)據(jù)庫對應(yīng)的數(shù)據(jù)寫入方式將所述轉(zhuǎn)換后的源數(shù)據(jù)寫入所述目標(biāo)數(shù)據(jù)庫包括:

24、若所述目標(biāo)數(shù)據(jù)庫為postgresql,則根據(jù)所述轉(zhuǎn)換后的源數(shù)據(jù)生成對應(yīng)的同步文件,再將所述同步文件同步至postgresql中;

25、若所述目標(biāo)數(shù)據(jù)庫為elasticsearch,則采用通過tcp協(xié)議與所述elasticsearch進(jìn)行通信,將所述轉(zhuǎn)換后的源數(shù)據(jù)寫入elasticsearch中;

26、若所述目標(biāo)數(shù)據(jù)庫為hbase,則根據(jù)所述轉(zhuǎn)換后的源數(shù)據(jù)在分布式文件系統(tǒng)中生成持久化的hfile數(shù)據(jù)格式文件,再通過bulkload方式將持久化的hfile數(shù)據(jù)格式文件導(dǎo)入至hbase中;

27、若所述目標(biāo)數(shù)據(jù)庫為hive,則通過sparksql使用overwrite方式將所述轉(zhuǎn)換后的源數(shù)據(jù)寫入hive中。

28、可選地,在獲取用戶的數(shù)據(jù)交換配置信息之后,所述數(shù)據(jù)交換方法還包括:

29、根據(jù)用戶的數(shù)據(jù)交換配置信息生成數(shù)據(jù)交換任務(wù)并監(jiān)控所述數(shù)據(jù)交換任務(wù)的執(zhí)行狀態(tài);

30、在根據(jù)所述目標(biāo)數(shù)據(jù)庫對應(yīng)的數(shù)據(jù)寫入方式將所述轉(zhuǎn)換后的源數(shù)據(jù)寫入所述目標(biāo)數(shù)據(jù)庫之后,所述數(shù)據(jù)交換方法還包括:

31、向用戶反饋所述數(shù)據(jù)交換任務(wù)的執(zhí)行狀態(tài)。

32、第二方面,本技術(shù)實(shí)施例還提供一種數(shù)據(jù)交換裝置,所述數(shù)據(jù)交換裝置應(yīng)用于數(shù)據(jù)交換系統(tǒng),所述數(shù)據(jù)交換裝置包括:

33、獲取單元,用于獲取用戶的數(shù)據(jù)交換配置信息,所述數(shù)據(jù)交換配置信息包括源數(shù)據(jù)庫和目標(biāo)數(shù)據(jù)庫的配置信息;

34、讀取單元,用于根據(jù)所述源數(shù)據(jù)庫對應(yīng)的數(shù)據(jù)讀取方式讀取所述源數(shù)據(jù)庫中的數(shù)據(jù),并將讀取到的源數(shù)據(jù)緩存至分布式文件系統(tǒng)中;

35、轉(zhuǎn)換單元,用于根據(jù)所述目標(biāo)數(shù)據(jù)庫的數(shù)據(jù)轉(zhuǎn)換規(guī)則對讀取到的源數(shù)據(jù)進(jìn)行轉(zhuǎn)換處理,得到轉(zhuǎn)換后的源數(shù)據(jù);

36、寫入單元,用于根據(jù)所述目標(biāo)數(shù)據(jù)庫對應(yīng)的數(shù)據(jù)寫入方式將所述轉(zhuǎn)換后的源數(shù)據(jù)寫入所述目標(biāo)數(shù)據(jù)庫。

37、第三方面,本技術(shù)實(shí)施例還提供一種電子設(shè)備,包括:

38、處理器;以及

39、被安排成存儲(chǔ)計(jì)算機(jī)可執(zhí)行指令的存儲(chǔ)器,所述可執(zhí)行指令在被執(zhí)行時(shí)使所述處理器執(zhí)行前述之任一所述數(shù)據(jù)交換方法。

40、第四方面,本技術(shù)實(shí)施例還提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)存儲(chǔ)一個(gè)或多個(gè)程序,所述一個(gè)或多個(gè)程序當(dāng)被包括多個(gè)應(yīng)用程序的電子設(shè)備執(zhí)行時(shí),使得所述電子設(shè)備執(zhí)行前述之任一所述數(shù)據(jù)交換方法。

41、本技術(shù)實(shí)施例采用的上述至少一個(gè)技術(shù)方案能夠達(dá)到以下有益效果:本技術(shù)實(shí)施例的數(shù)據(jù)交換方法由數(shù)據(jù)交換系統(tǒng)執(zhí)行,先獲取用戶的數(shù)據(jù)交換配置信息,所述數(shù)據(jù)交換配置信息包括源數(shù)據(jù)庫和目標(biāo)數(shù)據(jù)庫的配置信息;然后根據(jù)所述源數(shù)據(jù)庫對應(yīng)的數(shù)據(jù)讀取方式讀取所述源數(shù)據(jù)庫中的數(shù)據(jù),并將讀取到的源數(shù)據(jù)緩存至分布式文件系統(tǒng)中;最后根據(jù)所述目標(biāo)數(shù)據(jù)庫的數(shù)據(jù)轉(zhuǎn)換規(guī)則對讀取到的源數(shù)據(jù)進(jìn)行轉(zhuǎn)換處理,得到轉(zhuǎn)換后的源數(shù)據(jù);最后根據(jù)所述目標(biāo)數(shù)據(jù)庫對應(yīng)的數(shù)據(jù)寫入方式將所述轉(zhuǎn)換后的源數(shù)據(jù)寫入所述目標(biāo)數(shù)據(jù)庫。本技術(shù)實(shí)施例的數(shù)據(jù)交換方法解決了海量數(shù)據(jù)交換過程中遇到的無法靈活配置、代碼繁瑣及同步效率低的痛點(diǎn),相比于傳統(tǒng)的異構(gòu)數(shù)據(jù)同步方案,本技術(shù)將復(fù)雜的網(wǎng)狀同步鏈路變成了以數(shù)據(jù)交換系統(tǒng)為中心的星型數(shù)據(jù)交換鏈路,大大提高了異構(gòu)數(shù)據(jù)源之間數(shù)據(jù)交換的時(shí)效性和準(zhǔn)確性。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1