本申請涉及大數(shù)據(jù),具體涉及一種基于在線分布式搜索系統(tǒng)的數(shù)據(jù)導(dǎo)入方法、裝置及設(shè)備。
背景技術(shù):
1、在各大型互聯(lián)網(wǎng)應(yīng)用中會產(chǎn)生海量用戶數(shù)據(jù),通常用戶數(shù)據(jù)保存在分布式存儲系統(tǒng)中,以數(shù)據(jù)倉庫等形式提供離線服務(wù)。但是,用戶有在線查詢用戶數(shù)據(jù)的需求,則需要將用戶數(shù)據(jù)從數(shù)據(jù)倉庫批量導(dǎo)入到在線分布式搜索系統(tǒng)。由于用戶數(shù)據(jù)的數(shù)據(jù)量龐大,傳統(tǒng)的將用戶數(shù)據(jù)離線批量導(dǎo)入在線分布式搜索系統(tǒng),可能需要十幾小時甚至數(shù)十小時才能完成,數(shù)據(jù)導(dǎo)入耗時較長。
技術(shù)實現(xiàn)思路
1、有鑒于此,本申請實施例提供一種數(shù)據(jù)導(dǎo)入方法、裝置及設(shè)備,以大幅縮短將用戶數(shù)據(jù)離線批量導(dǎo)入在線分布式搜索系統(tǒng)的耗時。
2、為解決上述問題,本申請實施例提供的技術(shù)方案如下:
3、第一方面,本申請實施例提供一種基于在線分布式搜索系統(tǒng)的數(shù)據(jù)導(dǎo)入方法,所述方法包括:
4、響應(yīng)于數(shù)據(jù)導(dǎo)入指令,從數(shù)據(jù)倉庫讀取源數(shù)據(jù);
5、將所述源數(shù)據(jù)拆分為多組分片數(shù)據(jù),并行創(chuàng)建各組所述分片數(shù)據(jù)的索引數(shù)據(jù);
6、在創(chuàng)建各組所述分片數(shù)據(jù)的索引數(shù)據(jù)完成后,向在線分布式搜索系統(tǒng)發(fā)送索引下載指令,所述索引下載指令攜帶索引數(shù)據(jù)的存儲地址,以使所述在線分布式搜索系統(tǒng)中的存儲節(jié)點基于所述索引數(shù)據(jù)的存儲地址以及針對存儲節(jié)點的分片數(shù)據(jù)分配信息,下載當(dāng)前存儲節(jié)點對應(yīng)的分片數(shù)據(jù)的索引數(shù)據(jù)。
7、第二方面,本申請實施例提供一種基于在線分布式搜索系統(tǒng)的數(shù)據(jù)導(dǎo)入裝置,所述裝置包括:
8、讀取單元,用于響應(yīng)于數(shù)據(jù)導(dǎo)入指令,從數(shù)據(jù)倉庫讀取源數(shù)據(jù);
9、拆分單元,用于將所述源數(shù)據(jù)拆分為多組分片數(shù)據(jù),并行創(chuàng)建各組所述分片數(shù)據(jù)的索引數(shù)據(jù);
10、下載單元,用于在創(chuàng)建各組所述分片數(shù)據(jù)的索引數(shù)據(jù)完成后,向在線分布式搜索系統(tǒng)發(fā)送索引下載指令,所述索引下載指令攜帶索引數(shù)據(jù)的存儲地址,以使所述在線分布式搜索系統(tǒng)中的存儲節(jié)點基于所述索引數(shù)據(jù)的存儲地址以及針對存儲節(jié)點的分片數(shù)據(jù)分配信息,下載當(dāng)前存儲節(jié)點對應(yīng)的分片數(shù)據(jù)的索引數(shù)據(jù)。
11、第三方面,本申請實施例提供一種基于在線分布式搜索系統(tǒng)的數(shù)據(jù)導(dǎo)入設(shè)備,包括:存儲器,處理器,及存儲在所述存儲器上并可在所述處理器上運行的計算機程序,所述處理器執(zhí)行所述計算機程序時,實現(xiàn)如上述的基于在線分布式搜索系統(tǒng)的數(shù)據(jù)導(dǎo)入方法。
12、第四方面,本申請實施例提供一種計算機可讀存儲介質(zhì),其特征在于,所述計算機可讀存儲介質(zhì)中存儲有指令,當(dāng)所述指令在終端設(shè)備上運行時,使得所述終端設(shè)備執(zhí)行如上述的基于在線分布式搜索系統(tǒng)的數(shù)據(jù)導(dǎo)入方法。
13、由此可見,本申請實施例具有如下有益效果:
14、本申請實施例響應(yīng)于數(shù)據(jù)導(dǎo)入指令,將源數(shù)據(jù)拆分為多組分片數(shù)據(jù),并行地創(chuàng)建各組分片數(shù)據(jù)的索引數(shù)據(jù),使得索引數(shù)據(jù)構(gòu)建速度提高。在線分布式搜索系統(tǒng)的各個存儲節(jié)點,也可以并行地下載該存儲節(jié)點對應(yīng)的分片數(shù)據(jù)的索引數(shù)據(jù),使得索引數(shù)據(jù)恢復(fù)速度提高。從而將源數(shù)據(jù)導(dǎo)入到在線分布式搜索系統(tǒng)中,耗時大幅縮短。另外,將構(gòu)建索引數(shù)據(jù)的過程外置到大數(shù)據(jù)組件,大幅降低了在儲存節(jié)點中數(shù)據(jù)寫入對于系統(tǒng)資源的占用。
1.一種基于在線分布式搜索系統(tǒng)的數(shù)據(jù)導(dǎo)入方法,其特征在于,所述方法包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述將所述源數(shù)據(jù)拆分為多組分片數(shù)據(jù),并行創(chuàng)建各組所述分片數(shù)據(jù)的索引數(shù)據(jù),包括:
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述將所述源數(shù)據(jù)拆分為多組分片數(shù)據(jù),將每組所述分片數(shù)據(jù)拆分為多組子分片數(shù)據(jù),包括:
4.根據(jù)權(quán)利要求1-3任一項所述的方法,其特征在于,所述方法還包括:
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述在創(chuàng)建各組所述分片數(shù)據(jù)的索引數(shù)據(jù)完成后,向在線分布式搜索系統(tǒng)發(fā)送索引下載指令,所述索引下載指令攜帶索引數(shù)據(jù)的存儲地址,以使所述在線分布式搜索系統(tǒng)中的存儲節(jié)點基于所述索引數(shù)據(jù)的存儲地址以及針對存儲節(jié)點的分片數(shù)據(jù)分配信息,下載當(dāng)前存儲節(jié)點對應(yīng)的分片數(shù)據(jù)的索引數(shù)據(jù),包括:
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括:
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述如果第一目標(biāo)存儲節(jié)點下載對應(yīng)的目標(biāo)分片數(shù)據(jù)的索引數(shù)據(jù)失敗,通過所述第一目標(biāo)存儲節(jié)點觸發(fā)所述在線分布式搜索系統(tǒng)的控制節(jié)點將所述目標(biāo)分片數(shù)據(jù)的索引數(shù)據(jù)調(diào)度到由第二目標(biāo)存儲節(jié)點進(jìn)行下載,包括:
8.一種基于在線分布式搜索系統(tǒng)的數(shù)據(jù)導(dǎo)入裝置,其特征在于,所述裝置包括:
9.一種基于在線分布式搜索系統(tǒng)的數(shù)據(jù)導(dǎo)入設(shè)備,其特征在于,包括:存儲器,處理器,及存儲在所述存儲器上并可在所述處理器上運行的計算機程序,所述處理器執(zhí)行所述計算機程序時,實現(xiàn)如權(quán)利要求1-7任一項所述的基于在線分布式搜索系統(tǒng)的數(shù)據(jù)導(dǎo)入方法。
10.一種計算機可讀存儲介質(zhì),其特征在于,所述計算機可讀存儲介質(zhì)中存儲有指令,當(dāng)所述指令在終端設(shè)備上運行時,使得所述終端設(shè)備執(zhí)行如權(quán)利要求1-7任一項所述的基于在線分布式搜索系統(tǒng)的數(shù)據(jù)導(dǎo)入方法。