亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種Hive數(shù)據(jù)處理的方法及裝置的制造方法

文檔序號(hào):9667494閱讀:513來(lái)源:國(guó)知局
一種Hive數(shù)據(jù)處理的方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,尤其涉及一種Hive數(shù)據(jù)處理的方法及裝置。
【背景技術(shù)】
[0002]隨著數(shù)據(jù)海量劇增,單一的計(jì)算機(jī)已經(jīng)不能存儲(chǔ)海量數(shù)據(jù),因此,分布式集群受到了廣泛的關(guān)注。在分布式集群中,可以將數(shù)據(jù)分布到多臺(tái)計(jì)算機(jī)中存儲(chǔ)并且可以實(shí)現(xiàn)分布式計(jì)算。Hadoop是分布式系統(tǒng)的基礎(chǔ)架構(gòu),用戶可以在不了解分布式底層細(xì)節(jié)的情況下,開(kāi)發(fā)分布式程序,充分利用廉價(jià)計(jì)算機(jī)集群的能力對(duì)數(shù)據(jù)進(jìn)行高速運(yùn)算和存儲(chǔ)。
[0003]Hive是Hadoop的一個(gè)數(shù)據(jù)倉(cāng)庫(kù)工具,可以將結(jié)構(gòu)化的數(shù)據(jù)文件映射為一張數(shù)據(jù)表,提供完整的結(jié)構(gòu)化查詢語(yǔ)言(SQL,Structured Query Language)查詢功能,可以將SQL語(yǔ)句轉(zhuǎn)換為MapReduce任務(wù)進(jìn)行運(yùn)行,也可以通過(guò)類SQL語(yǔ)句快速實(shí)現(xiàn)簡(jiǎn)單的MapReduce統(tǒng)計(jì),不必開(kāi)發(fā)專門的MapReduce應(yīng)用,Hive是非常適合數(shù)據(jù)倉(cāng)庫(kù)的統(tǒng)計(jì)分析。
[0004]Hive的類SQL語(yǔ)言給數(shù)據(jù)挖掘工作者帶來(lái)了很多便利,海量數(shù)據(jù)通過(guò)簡(jiǎn)單的SQL語(yǔ)句就可以完成分析,但現(xiàn)有的Hive提供的函數(shù)功能僅是海量數(shù)據(jù)的提取轉(zhuǎn)換加載功能,若用戶為了查詢的便利性,需要對(duì)查詢的數(shù)據(jù)進(jìn)行排序,現(xiàn)有的Hive提供的函數(shù)功能滿足不了用戶的需求。

【發(fā)明內(nèi)容】

[0005]本發(fā)明的實(shí)施例提供一種Hive數(shù)據(jù)處理的方法及裝置,用以通過(guò)實(shí)現(xiàn)用戶對(duì)查詢數(shù)據(jù)的排序功能,滿足用戶需要,提高用戶體驗(yàn)。
[0006]為達(dá)到上述目的,本發(fā)明的實(shí)施例采用如下技術(shù)方案:
[0007]本發(fā)明實(shí)施例提供了一種Hive數(shù)據(jù)處理的方法,包括:獲取數(shù)據(jù)請(qǐng)求消息;所述數(shù)據(jù)請(qǐng)求消息中攜帶有目標(biāo)數(shù)據(jù)的排序相關(guān)信息;根據(jù)所述數(shù)據(jù)請(qǐng)求消息通過(guò)Hive獲取目標(biāo)數(shù)據(jù);根據(jù)所述數(shù)據(jù)請(qǐng)求消息從Hive中確定出目標(biāo)排序函數(shù),并根據(jù)所述目標(biāo)排序函數(shù)對(duì)所述目標(biāo)數(shù)據(jù)進(jìn)行排序;所述排序函數(shù)中記錄有對(duì)數(shù)據(jù)進(jìn)行排序的排序規(guī)則;通過(guò)Hive輸出排序后的目標(biāo)數(shù)據(jù)。
[0008]可選地,在所述根據(jù)所述數(shù)據(jù)請(qǐng)求消息在Hive中確定出目標(biāo)排序函數(shù)之前,還包括:接收至少一個(gè)排序函數(shù);利用add file命令加載所述至少一個(gè)排序函數(shù)至Hive中。
[0009]可選地,所述根據(jù)所述數(shù)據(jù)請(qǐng)求消息通過(guò)Hive獲取目標(biāo)數(shù)據(jù)包括:根據(jù)所述數(shù)據(jù)請(qǐng)求消息通過(guò)Hive利用load data命令獲取所述目標(biāo)數(shù)據(jù)。
[0010]可選地,所述排序規(guī)則為對(duì)目標(biāo)數(shù)據(jù)中的每個(gè)關(guān)鍵字key值對(duì)應(yīng)的不同數(shù)值value進(jìn)行預(yù)設(shè)順序的排序。
[0011]進(jìn)一步的,本發(fā)明實(shí)施例提供了一種Hive數(shù)據(jù)處理的裝置,包括:獲取單元,用于獲取數(shù)據(jù)請(qǐng)求消息;所述數(shù)據(jù)請(qǐng)求消息中攜帶有目標(biāo)數(shù)據(jù)的排序相關(guān)信息;所述獲取單元,還用于根據(jù)所述數(shù)據(jù)請(qǐng)求消息通過(guò)Hive獲取目標(biāo)數(shù)據(jù);處理單元,用于根據(jù)所述獲取單元獲取的所述數(shù)據(jù)請(qǐng)求消息從Hive中確定出目標(biāo)排序函數(shù),并根據(jù)所述目標(biāo)排序函數(shù)對(duì)所述目標(biāo)數(shù)據(jù)進(jìn)行排序;所述排序函數(shù)中記錄有對(duì)數(shù)據(jù)進(jìn)行排序的排序規(guī)則;輸出單元,用于通過(guò)Hi ve輸出排序后的目標(biāo)數(shù)據(jù)。
[0012]可選地,還包括:接收單元,用于接收至少一個(gè)排序函數(shù);所述處理單元,還用于利用add file命令加載所述至少一個(gè)排序函數(shù)至Hive中。
[0013]可選地,獲取單元,具體用于根據(jù)所述數(shù)據(jù)請(qǐng)求消息通過(guò)Hive利用load data命令獲取所述目標(biāo)數(shù)據(jù)。
[0014]可選地,所述排序規(guī)則為對(duì)目標(biāo)數(shù)據(jù)中的每個(gè)key值對(duì)應(yīng)的不同value值進(jìn)行預(yù)設(shè)順序的排序。
[0015]本發(fā)明實(shí)施例提供了一種Hive數(shù)據(jù)處理的方法及裝置,包括:獲取數(shù)據(jù)請(qǐng)求消息;根據(jù)數(shù)據(jù)請(qǐng)求通過(guò)Hive獲取目標(biāo)數(shù)據(jù);根據(jù)數(shù)據(jù)請(qǐng)求消息從Hive中確定出目標(biāo)排序函數(shù),并根據(jù)目標(biāo)排序函數(shù)對(duì)目標(biāo)數(shù)據(jù)進(jìn)行排序,通過(guò)Hive輸出排序后的目標(biāo)數(shù)據(jù)。這樣,Hive數(shù)據(jù)處理的裝置可以獲取數(shù)據(jù)請(qǐng)求消息,并根據(jù)數(shù)據(jù)請(qǐng)求消息通過(guò)Hive獲取目標(biāo)數(shù)據(jù);根據(jù)數(shù)據(jù)請(qǐng)求消息在Hive中確定出目標(biāo)排序函數(shù),進(jìn)而可以根據(jù)此目標(biāo)排序函數(shù)對(duì)目標(biāo)數(shù)據(jù)進(jìn)行排序,得到用戶所需的排序后的目標(biāo)數(shù)據(jù),進(jìn)而可以將排序后的目標(biāo)數(shù)據(jù)輸出。這樣一來(lái),通過(guò)Hive數(shù)據(jù)處理的裝置輸出的數(shù)據(jù)是排序后的數(shù)據(jù),進(jìn)而實(shí)現(xiàn)了對(duì)查詢數(shù)據(jù)的排序功能,滿足了用戶需要,提高了用戶體驗(yàn)。
【附圖說(shuō)明】
[0016]為了更清楚地說(shuō)明本發(fā)明實(shí)施例的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0017]圖1為本發(fā)明實(shí)施例提供的一種Hive數(shù)據(jù)處理的方法流程示意圖;
[0018]圖2為本發(fā)明實(shí)施例提供的另一種Hive數(shù)據(jù)處理的方法流程示意圖;
[0019]圖3為本發(fā)明實(shí)施例提供的一種Hive數(shù)據(jù)處理的裝置的結(jié)構(gòu)示意圖;
[0020]圖4為本發(fā)明實(shí)施例提供的另一種Hive數(shù)據(jù)處理的裝置的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0021]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0022]本發(fā)明實(shí)施例提供了一種Hive數(shù)據(jù)處理的方法,如圖1所示,包括:
[0023]步驟101、獲取數(shù)據(jù)請(qǐng)求消息。
[0024]其中,數(shù)據(jù)請(qǐng)求消息中攜帶有目標(biāo)數(shù)據(jù)的排序相關(guān)信息。
[0025]需要說(shuō)明的是,數(shù)據(jù)請(qǐng)求消息中攜帶的數(shù)據(jù)的排序相關(guān)信息可以是指明對(duì)哪些數(shù)據(jù)進(jìn)行怎樣排序的信息。例如,可以對(duì)A類數(shù)據(jù)進(jìn)行降序排序的信息。
[0026]具體的,用戶在需要對(duì)查詢的數(shù)據(jù)進(jìn)行一定的排序時(shí),可以向Hive數(shù)據(jù)處理的裝置發(fā)送能夠指示出對(duì)哪些數(shù)據(jù)進(jìn)行怎樣排序的數(shù)據(jù)請(qǐng)求消息。即為,在數(shù)據(jù)請(qǐng)求消息中攜帶有數(shù)據(jù)的排序相關(guān)信息。
[0027]步驟102、根據(jù)數(shù)據(jù)請(qǐng)求消息通過(guò)Hive獲取目標(biāo)數(shù)據(jù)。
[0028]具體的,Hive數(shù)據(jù)處理的裝置接收到數(shù)據(jù)請(qǐng)求消息后,可以對(duì)數(shù)據(jù)請(qǐng)求消息進(jìn)行解析,獲取到數(shù)據(jù)請(qǐng)求消息中攜帶的目標(biāo)數(shù)據(jù)的排序相關(guān)信息。這樣,Hive數(shù)據(jù)處理的裝置可以根據(jù)目標(biāo)數(shù)據(jù)的排序相關(guān)信息確定出需要獲取的目標(biāo)數(shù)據(jù),進(jìn)而可以通過(guò)Hive獲取目標(biāo)數(shù)據(jù)。
[0029]需要說(shuō)明的是,在本發(fā)明實(shí)施例中,如何通過(guò)Hive獲取目標(biāo)數(shù)據(jù)與現(xiàn)有技術(shù)相同,本發(fā)明在此不再贅述。
[0030]步驟103、根據(jù)數(shù)據(jù)請(qǐng)求消息從Hive中確定出目標(biāo)排序函數(shù),并根據(jù)目標(biāo)排序函數(shù)對(duì)目標(biāo)數(shù)據(jù)進(jìn)行排序。
[0031 ] 其中,排序函數(shù)中記錄有對(duì)數(shù)據(jù)進(jìn)行排序的排序規(guī)則。
[0032]需要說(shuō)明的是,在本發(fā)明實(shí)施例中,用戶需要對(duì)數(shù)據(jù)進(jìn)行排序查詢時(shí),需要預(yù)先將排序函數(shù)加載至Hive中,這樣,在Hive中存儲(chǔ)了至少一個(gè)排序函數(shù)。其中,Hive中存儲(chǔ)的至少一個(gè)排序函數(shù)的排序規(guī)則各不同相同。
[0033]具體的,Hive數(shù)據(jù)處理的裝置在獲取了數(shù)據(jù)請(qǐng)求消息,并解析出數(shù)據(jù)請(qǐng)求消息中攜帶的目標(biāo)數(shù)據(jù)的排序相關(guān)信息,此時(shí)Hive數(shù)據(jù)處理的裝置可以根據(jù)目標(biāo)數(shù)據(jù)的排序相關(guān)信息,在已加載的排序函數(shù)中找到對(duì)應(yīng)的排序函數(shù),即為目標(biāo)排序函數(shù)。這樣一來(lái),Hive數(shù)據(jù)處理的裝置在找到目標(biāo)排序函數(shù)后,可以將獲取的目標(biāo)數(shù)據(jù),根據(jù)目標(biāo)排序函數(shù)中記錄的排序規(guī)則,進(jìn)行相應(yīng)的排序,進(jìn)而可以得到排序后的目標(biāo)數(shù)據(jù)。
[0034]例如,用戶需要對(duì)數(shù)據(jù)A進(jìn)行降序排序。此時(shí),Hive數(shù)據(jù)處理的裝置獲取的數(shù)據(jù)請(qǐng)求消息中攜帶的目標(biāo)數(shù)據(jù)的排序相關(guān)信息是將數(shù)據(jù)A進(jìn)行降序排序。這樣,Hive數(shù)據(jù)處理的裝置在接收到數(shù)據(jù)請(qǐng)求消息后,可以解析數(shù)據(jù)請(qǐng)求消息獲取到目標(biāo)數(shù)據(jù)的排序相關(guān)信息,進(jìn)而可以根據(jù)目標(biāo)數(shù)據(jù)的排序相關(guān)信息,通過(guò)Hive獲取到目標(biāo)數(shù)據(jù),即為數(shù)據(jù)A,并根據(jù)目標(biāo)數(shù)據(jù)的排序相關(guān)信息在Hive中存儲(chǔ)的各個(gè)排序函數(shù)中,找出目標(biāo)數(shù)據(jù)的排序相關(guān)信息中對(duì)應(yīng)的排序函數(shù),即為找出排序規(guī)則為降序排序的排序函數(shù),將此排序函數(shù)確定為目標(biāo)排序函數(shù)。Hive數(shù)據(jù)處理的裝置在確定出目標(biāo)排序函數(shù)后,可以利用目標(biāo)排序函數(shù)對(duì)目標(biāo)數(shù)據(jù)進(jìn)行相應(yīng)的降序排序,進(jìn)而可以得到降序排序后的目標(biāo)數(shù)據(jù)。
[0035]進(jìn)一步的,根據(jù)數(shù)據(jù)請(qǐng)求消息通過(guò)Hive獲取目標(biāo)數(shù)據(jù)包括:根據(jù)數(shù)據(jù)請(qǐng)求消息通過(guò)Hive利用load data (加載數(shù)據(jù))命令獲取所述目標(biāo)數(shù)據(jù)。
[0036]進(jìn)一步的,排序規(guī)則為對(duì)目標(biāo)數(shù)據(jù)中的每個(gè)key (關(guān)鍵字)值對(duì)應(yīng)的不同value (數(shù)值)進(jìn)行預(yù)設(shè)順序的排序。
[0037]具體的,排序函數(shù)可以是對(duì)某一對(duì)象的不同的value進(jìn)行排序,此時(shí),可以將排序規(guī)則設(shè)置為對(duì)數(shù)據(jù)中的每個(gè)key值對(duì)應(yīng)的不同value進(jìn)行預(yù)設(shè)順序的排序。即為,設(shè)置為將key值相同的不同value進(jìn)行預(yù)設(shè)順序的排序。
[0038]需要說(shuō)明的是,key值可以是在進(jìn)行數(shù)據(jù)存儲(chǔ)時(shí),設(shè)置的主鍵值。也可是一個(gè)對(duì)象的其他數(shù)
當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1