本技術(shù)涉及云存儲,特別是一種資源解耦合的跨云數(shù)據(jù)傳輸方法和裝置。
背景技術(shù):
1、隨著互聯(lián)網(wǎng)用戶的發(fā)展,被創(chuàng)造和分享的數(shù)字信息量逐年增長,包括照片、音頻、視頻等數(shù)據(jù)信息充斥著網(wǎng)絡(luò)和硬盤,尤其是移動互聯(lián)網(wǎng)的快速發(fā)展,更是引發(fā)了一場數(shù)據(jù)革命,在這場數(shù)據(jù)革命中,單個存儲硬盤的存儲空間無法存儲海量的數(shù)據(jù),因此,可以將各種硬盤聯(lián)合在一起形成集群的云存儲技術(shù)就成了可靠的選擇。然而,隨著數(shù)據(jù)中心的不斷膨脹,單一的云存儲方式已經(jīng)很難滿足客戶的需求,如何將不同地區(qū)的數(shù)據(jù)進(jìn)行穩(wěn)定傳輸,成為了一個亟待解決的問題。
2、相關(guān)技術(shù)中,各類公有云廠商有提供自身的跨云數(shù)據(jù)傳輸方案,例如數(shù)據(jù)傳輸服務(wù)(data?transmissionservice,dts),通過配置源和目的數(shù)據(jù)實(shí)例,實(shí)現(xiàn)在相同賬號下的跨云數(shù)據(jù)傳輸功能?;蛘咄ㄟ^一些開源的基于虛擬機(jī)的跨云數(shù)據(jù)傳輸方法,如skyplane。
3、但是上述方法中,跨云數(shù)據(jù)傳輸任務(wù)往往需要消耗大量的時間,跨云數(shù)據(jù)傳輸?shù)男瘦^低,且由于任務(wù)時間較長,還會使傳輸任務(wù)存在較大的傳輸安全風(fēng)險。
技術(shù)實(shí)現(xiàn)思路
1、鑒于上述問題,本技術(shù)實(shí)施例提供了一種資源解耦合的跨云數(shù)據(jù)傳輸方法、裝置、電子設(shè)備和可讀存儲介質(zhì),以便克服上述問題或者至少部分地解決上述問題。
2、第一方面,本技術(shù)實(shí)施例提供一種資源解耦合的跨云數(shù)據(jù)傳輸方法,所述方法包括:
3、響應(yīng)于目標(biāo)用戶發(fā)送的第一數(shù)據(jù)傳輸指令,基于所述第一數(shù)據(jù)傳輸指令,確定目標(biāo)待傳輸數(shù)據(jù)所在的第一數(shù)據(jù)存儲地址、所述目標(biāo)待傳輸數(shù)據(jù)的數(shù)據(jù)量和目標(biāo)傳輸?shù)刂罚黄渲?,所述第一?shù)據(jù)存儲地址與所述目標(biāo)傳輸?shù)刂穼?yīng)不同的云存儲空間;
4、基于所述第一數(shù)據(jù)存儲地址和所述目標(biāo)傳輸?shù)刂分g的數(shù)據(jù)傳輸速率、所述數(shù)據(jù)量和預(yù)設(shè)傳輸時長,確定所述第一數(shù)據(jù)傳輸指令對應(yīng)的第一數(shù)據(jù)傳輸函數(shù)的第一調(diào)用數(shù)量;
5、對各個所述第一數(shù)據(jù)傳輸函數(shù)進(jìn)行逐級調(diào)用,并統(tǒng)計(jì)所述第一數(shù)據(jù)傳輸函數(shù)的調(diào)用次數(shù);
6、在所述調(diào)用次數(shù)大于或等于所述第一調(diào)用數(shù)量的情況下,基于各個所述第一數(shù)據(jù)傳輸函數(shù),將所述目標(biāo)待傳輸數(shù)據(jù)由所述第一數(shù)據(jù)存儲地址發(fā)送到所述目標(biāo)傳輸?shù)刂?,以?shí)現(xiàn)所述第一數(shù)據(jù)存儲地址和所述目標(biāo)傳輸?shù)刂分g的跨云數(shù)據(jù)傳輸。
7、可選地,所述基于所述第一數(shù)據(jù)存儲地址和所述目標(biāo)傳輸?shù)刂分g的數(shù)據(jù)傳輸速率、所述數(shù)據(jù)量和預(yù)設(shè)傳輸時長,確定所述第一數(shù)據(jù)傳輸指令對應(yīng)的第一數(shù)據(jù)傳輸函數(shù)的第一調(diào)用數(shù)量,包括:
8、基于所述第一數(shù)據(jù)存儲地址和所述目標(biāo)傳輸?shù)刂分g的數(shù)據(jù)傳輸速率和所述數(shù)據(jù)量,確定所述第一數(shù)據(jù)傳輸指令對應(yīng)的第一數(shù)據(jù)傳輸函數(shù)的第一數(shù)據(jù)傳輸時長;
9、基于所述第一數(shù)據(jù)傳輸時長和所述預(yù)設(shè)傳輸時長,確定所述第一數(shù)據(jù)傳輸函數(shù)的第一調(diào)用數(shù)量。
10、可選地,所述基于所述第一數(shù)據(jù)傳輸時長和所述預(yù)設(shè)傳輸時長,確定所述第一數(shù)據(jù)傳輸函數(shù)的第一調(diào)用數(shù)量,包括:
11、基于數(shù)據(jù)傳輸函數(shù)的啟動時長上限值,確定所述第一數(shù)據(jù)傳輸函數(shù)的最大調(diào)用數(shù)量;
12、基于所述最大調(diào)用數(shù)量、所述第一數(shù)據(jù)傳輸時長和所述預(yù)設(shè)傳輸時長,確定所述第一數(shù)據(jù)傳輸函數(shù)的第一調(diào)用數(shù)量。
13、可選地,所述第一數(shù)據(jù)傳輸函數(shù)的數(shù)據(jù)結(jié)構(gòu)為時間限制完全樹;所述時間限制完全樹包括主函數(shù)節(jié)點(diǎn)、數(shù)據(jù)傳輸函數(shù)節(jié)點(diǎn)和用于連接各個所述數(shù)據(jù)傳輸函數(shù)節(jié)點(diǎn)和所述主函數(shù)節(jié)點(diǎn)的數(shù)據(jù)傳輸函數(shù)調(diào)用邊;所述數(shù)據(jù)傳輸函數(shù)節(jié)點(diǎn)對應(yīng)于各個所述第一數(shù)據(jù)傳輸函數(shù)的函數(shù)啟動延遲時長;所述數(shù)據(jù)傳輸函數(shù)調(diào)用邊對應(yīng)于各個所述第一數(shù)據(jù)傳輸函數(shù)的函數(shù)調(diào)用時長;所述第一數(shù)據(jù)傳輸函數(shù)的啟動時長等于所述第一數(shù)據(jù)傳輸函數(shù)對應(yīng)的數(shù)據(jù)傳輸函數(shù)節(jié)點(diǎn)與所述主函數(shù)節(jié)點(diǎn)之間的連通路徑所對應(yīng)的所有函數(shù)啟動延遲時長與所有函數(shù)調(diào)用時長的和,且所述啟動時長均小于或等于所述啟動時長上限值。
14、可選地,所述基于各個所述第一數(shù)據(jù)傳輸函數(shù),將所述目標(biāo)待傳輸數(shù)據(jù)由所述第一數(shù)據(jù)存儲地址發(fā)送到所述目標(biāo)傳輸?shù)刂罚ǎ?/p>
15、向各個所述第一數(shù)據(jù)傳輸函數(shù)添加分布式鎖,得到第二數(shù)據(jù)傳輸函數(shù);
16、基于各個所述第二數(shù)據(jù)傳輸函數(shù),將所述目標(biāo)待傳輸數(shù)據(jù)由所述第一數(shù)據(jù)存儲地址發(fā)送到所述目標(biāo)傳輸?shù)刂贰?/p>
17、可選地,所述方法還包括:
18、在所述第二數(shù)據(jù)傳輸函數(shù)對應(yīng)的第一待傳輸數(shù)據(jù)完成傳輸?shù)那闆r下,解除所述第二數(shù)據(jù)傳輸函數(shù)的分布式鎖,得到所述第一數(shù)據(jù)傳輸函數(shù)。
19、可選地,所述基于所述第一數(shù)據(jù)傳輸指令,確定目標(biāo)待傳輸數(shù)據(jù)所在的第一數(shù)據(jù)存儲地址、所述目標(biāo)待傳輸數(shù)據(jù)的數(shù)據(jù)量和目標(biāo)傳輸?shù)刂罚ǎ?/p>
20、對所述第一數(shù)據(jù)傳輸指令進(jìn)行解析,得到第一哈希值和目標(biāo)傳輸?shù)刂罚?/p>
21、基于所述第一哈希值,在第一云存儲空間中進(jìn)行匹配查詢,得到目標(biāo)待傳輸數(shù)據(jù)和所述目標(biāo)待傳輸數(shù)據(jù)所在的第一數(shù)據(jù)存儲地址;
22、基于所述第一數(shù)據(jù)存儲地址,確定所述目標(biāo)待傳輸數(shù)據(jù)的數(shù)據(jù)量。
23、可選地,所述基于所述第一數(shù)據(jù)傳輸指令,確定目標(biāo)待傳輸數(shù)據(jù)所在的第一數(shù)據(jù)存儲地址、所述目標(biāo)待傳輸數(shù)據(jù)的數(shù)據(jù)量和目標(biāo)傳輸?shù)刂?,包括?/p>
24、基于預(yù)設(shè)指令數(shù)據(jù)格式,對所述第一數(shù)據(jù)傳輸指令進(jìn)行數(shù)據(jù)格式檢測,得到第一檢測結(jié)果;
25、在所述第一檢測結(jié)果為檢測通過的情況下,基于所述第一數(shù)據(jù)傳輸指令,確定目標(biāo)待傳輸數(shù)據(jù)所在的第一數(shù)據(jù)存儲地址、所述目標(biāo)待傳輸數(shù)據(jù)的數(shù)據(jù)量和目標(biāo)傳輸?shù)刂贰?/p>
26、可選地,所述方法還包括:
27、在所述第一檢測結(jié)果為檢測不通過的情況下,向所述目標(biāo)用戶發(fā)送指令格式錯誤提示信息。
28、第二方面,本技術(shù)實(shí)施例提供一種資源解耦合的跨云數(shù)據(jù)傳輸裝置,所述裝置包括:
29、第一確定模塊,用于響應(yīng)于目標(biāo)用戶發(fā)送的第一數(shù)據(jù)傳輸指令,基于所述第一數(shù)據(jù)傳輸指令,確定目標(biāo)待傳輸數(shù)據(jù)所在的第一數(shù)據(jù)存儲地址、所述目標(biāo)待傳輸數(shù)據(jù)的數(shù)據(jù)量和目標(biāo)傳輸?shù)刂?;其中,所述第一?shù)據(jù)存儲地址與所述目標(biāo)傳輸?shù)刂穼?yīng)不同的云存儲空間;
30、第二確定模塊,用于基于所述第一數(shù)據(jù)存儲地址和所述目標(biāo)傳輸?shù)刂分g的數(shù)據(jù)傳輸速率、所述數(shù)據(jù)量和預(yù)設(shè)傳輸時長,確定所述第一數(shù)據(jù)傳輸指令對應(yīng)的第一數(shù)據(jù)傳輸函數(shù)的第一調(diào)用數(shù)量;
31、調(diào)用統(tǒng)計(jì)模塊,用于對各個所述第一數(shù)據(jù)傳輸函數(shù)進(jìn)行逐級調(diào)用,并統(tǒng)計(jì)所述第一數(shù)據(jù)傳輸函數(shù)的調(diào)用次數(shù);
32、傳輸模塊,用于在所述調(diào)用次數(shù)大于或等于所述第一調(diào)用數(shù)量的情況下,基于各個所述第一數(shù)據(jù)傳輸函數(shù),將所述目標(biāo)待傳輸數(shù)據(jù)由所述第一數(shù)據(jù)存儲地址發(fā)送到所述目標(biāo)傳輸?shù)刂?,以?shí)現(xiàn)所述第一數(shù)據(jù)存儲地址和所述目標(biāo)傳輸?shù)刂分g的跨云數(shù)據(jù)傳輸。
33、可選地,所述第二確定模塊,包括:
34、第一確定子模塊,用于基于所述第一數(shù)據(jù)存儲地址和所述目標(biāo)傳輸?shù)刂分g的數(shù)據(jù)傳輸速率和所述數(shù)據(jù)量,確定所述第一數(shù)據(jù)傳輸指令對應(yīng)的第一數(shù)據(jù)傳輸函數(shù)的第一數(shù)據(jù)傳輸時長;
35、第二確定子模塊,用于基于所述第一數(shù)據(jù)傳輸時長和所述預(yù)設(shè)傳輸時長,確定所述第一數(shù)據(jù)傳輸函數(shù)的第一調(diào)用數(shù)量。
36、可選地,所述第二確定子模塊,包括:
37、第一確定單元,用于基于數(shù)據(jù)傳輸函數(shù)的啟動時長上限值,確定所述第一數(shù)據(jù)傳輸函數(shù)的最大調(diào)用數(shù)量;
38、第二確定單元,用于基于所述最大調(diào)用數(shù)量、所述第一數(shù)據(jù)傳輸時長和所述預(yù)設(shè)傳輸時長,確定所述第一數(shù)據(jù)傳輸函數(shù)的第一調(diào)用數(shù)量。
39、可選地,所述第一數(shù)據(jù)傳輸函數(shù)的數(shù)據(jù)結(jié)構(gòu)為時間限制完全樹;所述時間限制完全樹包括主函數(shù)節(jié)點(diǎn)、數(shù)據(jù)傳輸函數(shù)節(jié)點(diǎn)和用于連接各個所述數(shù)據(jù)傳輸函數(shù)節(jié)點(diǎn)和所述主函數(shù)節(jié)點(diǎn)的數(shù)據(jù)傳輸函數(shù)調(diào)用邊;所述數(shù)據(jù)傳輸函數(shù)節(jié)點(diǎn)對應(yīng)于各個所述第一數(shù)據(jù)傳輸函數(shù)的函數(shù)啟動延遲時長;所述數(shù)據(jù)傳輸函數(shù)調(diào)用邊對應(yīng)于各個所述第一數(shù)據(jù)傳輸函數(shù)的函數(shù)調(diào)用時長;所述第一數(shù)據(jù)傳輸函數(shù)的啟動時長等于所述第一數(shù)據(jù)傳輸函數(shù)對應(yīng)的數(shù)據(jù)傳輸函數(shù)節(jié)點(diǎn)與所述主函數(shù)節(jié)點(diǎn)之間的連通路徑所對應(yīng)的所有函數(shù)啟動延遲時長與所有函數(shù)調(diào)用時長的和,且所述啟動時長均小于或等于所述啟動時長上限值。
40、可選地,所述傳輸模塊,包括:
41、添加子模塊,用于向各個所述第一數(shù)據(jù)傳輸函數(shù)添加分布式鎖,得到第二數(shù)據(jù)傳輸函數(shù);
42、傳輸子模塊,用于基于各個所述第二數(shù)據(jù)傳輸函數(shù),將所述目標(biāo)待傳輸數(shù)據(jù)由所述第一數(shù)據(jù)存儲地址發(fā)送到所述目標(biāo)傳輸?shù)刂贰?/p>
43、可選地,所述裝置還包括:
44、解除模塊,用于在所述第二數(shù)據(jù)傳輸函數(shù)對應(yīng)的第一待傳輸數(shù)據(jù)完成傳輸?shù)那闆r下,解除所述第二數(shù)據(jù)傳輸函數(shù)的分布式鎖,得到所述第一數(shù)據(jù)傳輸函數(shù)。
45、可選地,所述第一確定模塊,包括:
46、解析子模塊,用于對所述第一數(shù)據(jù)傳輸指令進(jìn)行解析,得到第一哈希值和目標(biāo)傳輸?shù)刂罚?/p>
47、匹配子模塊,用于基于所述第一哈希值,在第一云存儲空間中進(jìn)行匹配查詢,得到目標(biāo)待傳輸數(shù)據(jù)和所述目標(biāo)待傳輸數(shù)據(jù)所在的第一數(shù)據(jù)存儲地址;
48、第三確定子模塊,用于基于所述第一數(shù)據(jù)存儲地址,確定所述目標(biāo)待傳輸數(shù)據(jù)的數(shù)據(jù)量。
49、可選地,所述第一確定模塊,包括:
50、檢測子模塊,用于基于預(yù)設(shè)指令數(shù)據(jù)格式,對所述第一數(shù)據(jù)傳輸指令進(jìn)行數(shù)據(jù)格式檢測,得到第一檢測結(jié)果;
51、第四確定子模塊,用于在所述第一檢測結(jié)果為檢測通過的情況下,基于所述第一數(shù)據(jù)傳輸指令,確定目標(biāo)待傳輸數(shù)據(jù)所在的第一數(shù)據(jù)存儲地址、所述目標(biāo)待傳輸數(shù)據(jù)的數(shù)據(jù)量和目標(biāo)傳輸?shù)刂贰?/p>
52、可選地,所述裝置還包括:
53、提示模塊,用于在所述第一檢測結(jié)果為檢測不通過的情況下,向所述目標(biāo)用戶發(fā)送指令格式錯誤提示信息。
54、第三方面,本技術(shù)實(shí)施例提供一種電子設(shè)備,包括存儲器、處理器及存儲在所述存儲器上的計(jì)算機(jī)程序,所述處理器執(zhí)行所述計(jì)算機(jī)程序以實(shí)現(xiàn)如上任意一項(xiàng)所述的資源解耦合的跨云數(shù)據(jù)傳輸方法。
55、第四方面,本技術(shù)實(shí)施例提供一種可讀存儲介質(zhì),所述可讀存儲介質(zhì)上存儲程序或指令,所述程序或指令被處理器執(zhí)行時實(shí)現(xiàn)如上任意一項(xiàng)所述的資源解耦合的跨云數(shù)據(jù)傳輸方法。
56、具體的有益效果在于:
57、本技術(shù)實(shí)施例通過響應(yīng)于目標(biāo)用戶發(fā)送的第一數(shù)據(jù)傳輸指令,基于第一數(shù)據(jù)傳輸指令,確定目標(biāo)待傳輸數(shù)據(jù)所在的第一數(shù)據(jù)存儲地址、目標(biāo)待傳輸數(shù)據(jù)的數(shù)據(jù)量和目標(biāo)傳輸?shù)刂罚黄渲?,第一?shù)據(jù)存儲地址與目標(biāo)傳輸?shù)刂穼?yīng)不同的云存儲空間,基于第一數(shù)據(jù)存儲地址和目標(biāo)傳輸?shù)刂分g的數(shù)據(jù)傳輸速率、數(shù)據(jù)量和預(yù)設(shè)傳輸時長,確定第一數(shù)據(jù)傳輸指令對應(yīng)的第一數(shù)據(jù)傳輸函數(shù)的第一調(diào)用數(shù)量,對各個第一數(shù)據(jù)傳輸函數(shù)進(jìn)行逐級調(diào)用,并統(tǒng)計(jì)第一數(shù)據(jù)傳輸函數(shù)的調(diào)用次數(shù),在調(diào)用次數(shù)大于或等于第一調(diào)用數(shù)量的情況下,基于各個第一數(shù)據(jù)傳輸函數(shù),將目標(biāo)待傳輸數(shù)據(jù)由第一數(shù)據(jù)存儲地址發(fā)送到目標(biāo)傳輸?shù)刂?,以?shí)現(xiàn)第一數(shù)據(jù)存儲地址和目標(biāo)傳輸?shù)刂分g的跨云數(shù)據(jù)傳輸,可以通過預(yù)設(shè)傳輸時長、數(shù)據(jù)傳輸速率和目標(biāo)待傳輸數(shù)據(jù)的數(shù)據(jù)量得到數(shù)據(jù)傳輸函數(shù)的第一調(diào)用數(shù)量,并通過上述第一調(diào)用數(shù)量的數(shù)據(jù)傳輸函數(shù)將目標(biāo)待傳輸數(shù)據(jù)發(fā)送到目標(biāo)傳輸?shù)刂?,能夠使第一?shù)據(jù)傳輸指令對應(yīng)的傳輸任務(wù)耗時控制在預(yù)設(shè)傳輸時長以內(nèi),一定程度上提升了跨云數(shù)據(jù)傳輸?shù)膫鬏斝省?/p>