欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于MapReduce框架的數據篩選方法

文檔序號:6401009閱讀:297來源:國知局
專利名稱:一種基于MapReduce框架的數據篩選方法
技術領域
本發(fā)明涉及數據篩選技術領域,主要適用于基于MapReduce框架的數據篩選方法。
背景技術
Hadoop是一個開源的分布式系統框架,用戶可以在不了解分布式底層細節(jié)的情況下,開發(fā)分布式程序。它實現了一個分布式的文件系統(HDFS),具有高容錯性的特點,而且還可以部署在低廉的硬件上。它還提供了高傳輸率來訪問應用程序的數據,適合那些有著超大數據集的應用程序。HDFS放寬了 POSIX的要求,這樣就可以以流的形式訪問文件系統中的數據?;贖adoop的業(yè)務平臺一般都只有少量的用戶,并且這些用戶都是十分熟悉Hadoop的相關操作的,這里稱為Hadoop管理員。如果有不了解Hadoop操作的用戶想要訪問或者使用業(yè)務平臺里的數據,則需要將需求詳細地告訴Hadoop管理員,讓他們去實現自己的要求。但隨著數據量的增大以及數據處理需求的增多,少數的幾個管理員已經不能很高效的完成其他用戶的需求了。并且對于業(yè)務平臺中數據的操作,除去Hadoop自帶的一些功能如存儲、刪除、下載數據等,其他的操作都可以通過管理員將寫好的程序打包放在平臺上,供普通用戶去使用這些程序接口來實現,這樣能夠大大地提高平臺的使用效率。用戶會經常使用的操作有很多,比如基于多關鍵字的查找篩選。但是目前在Hadoop平臺上,并沒有實現對數據的篩選功能,這樣不能保證用戶處理數據的效率和Hadoop平臺的使用效率。由于是多個用戶共享一個文件系統,因此平臺的管理員無法對用戶的權限信息進行有效地管理。

發(fā)明內容
為了解決Hadoop操作平臺上不具備數據篩選功能及使用效率低等問題,本發(fā)明提供了一種基于MapReduce框架的數據篩選方法,包括:輸入篩選需求;所述篩選需求包括:數據的輸入路徑、數據的輸出路徑、字段序號、篩選上限、篩選下限及篩選關鍵字;進行數據篩選;統計篩選需求中待篩選數據的字段總數N,令一個整型變量X的初始值為I ;根據篩選需求提取篩選范圍或關鍵字對待篩選的數據進行范圍篩選或關鍵字篩選;判斷所述整型變量X是否等于所述字段總數N ;若X不等于N,則將整型變量X加1,繼續(xù)對數據進行篩選直至待篩選的數據符合所有的篩選條件;將篩選后的數據按所述輸出路徑輸出到目的地址;若X等于N,則將篩選后的數據按所述輸出路徑輸出到目的地址。所述進行數據篩選的步驟還包括:判斷輸入的篩選需求是否合法;若所述篩選需求合法,則進行數據篩選。所述判斷輸入的篩選需求是否合法的步驟具體包括:判斷MapReduce是否支持所述篩選需求的格式;若所述MapReduce支持篩選需求的格式,判斷篩選需求中數據的輸入路徑在文件系統中是否存在;若所述數據的輸入路徑在所述文件系統中存在,判斷所述篩選需求中數據的輸出路徑在所述文件系統中是否存在;若所述數據的輸出路徑在所述文件系統中不存在,判斷所述篩選需求中待篩選數據的字段序號在所述文件系統中是否都存在;若所述字段序號在所述文件系統中都存在,則說明篩選需求是合法的。所述根據篩選需求提取篩選范圍或關鍵字對待篩選的數據進行范圍篩選或關鍵字篩選的步驟具體包括:提取出篩選需求中字段序號所代表的數據;根據篩選需求判斷是否需要對數據進行范圍篩選;若需要對數據進行范圍篩選,則從篩選需求中提取出篩選上限和篩選下限;判斷輸入的字段序號是否在篩選范圍內,若字段序號在篩選范圍內,則對字段序號代表的數據進行保存;若不需要對數據進行范圍篩選,則從篩選需求中提取關鍵字,判斷輸入的字段序號所代表的內容是否等于關鍵字,若所述內容等于關鍵字,則對字段序號代表的數據進行保存。所述待篩選的數據符合所有的篩選條件的步驟還包括:判斷文件系統中的數據是否都經過了篩選;若文件系統中不是所有數據都經過了篩選,則對文件系統中未篩選的數據進行篩選直至文件系統中的所有數據都經過了篩選;將篩選后的數據按所述數據的輸出路徑輸出到目的地址;若文件系統中的所有數據都經過了篩選,則將篩選后的數據按所述數據的輸出路徑輸出到目的地址。所述將篩選后的數據按所述數據的輸出路徑輸出到目的地址的步驟具體包括:對篩選得到的數據進行整合得到包含鍵和值的數據對,作為化簡運算的輸入;再將所述化簡運算的輸出設為空,最后將得到的數據按數據的輸出路徑輸出到目的地址。本發(fā)明的有益效果在于:本發(fā)明提供的基于MapReduce框架的數據篩選方法,在Hadoop平臺上,通過提供統一的輸入格式,即提供的篩選輸入項相同,只是用戶輸入的篩選條件不同,不同篩選需求的用戶都可以通過本發(fā)明提供的方法對數據進行篩選,從而避免了頻繁的編寫不同的篩選程序,進而實現了對數據的高效篩選,提高了用戶處理數據的效率和Hadoop平臺的使用效率。


圖1為本發(fā)明實施例提供的基于MapReduce框架的數據篩選方法的流程圖;圖2為本發(fā)明實施例提供的基于MapReduce框架的數據篩選方法中對數據進行篩選的詳細流程圖;圖3為基于本發(fā)明實施例提供的基于MapReduce框架的數據篩選方法的MapReduce用戶登錄流程圖;圖4為基于本發(fā)明實施例提供的基于MapReduce框架的數據篩選方法的MapReduce的數據篩選操作界面。
具體實施例方式為進一步闡述本發(fā)明為達成預定發(fā)明目的所采取的技術手段及功效,以下結合附圖及較佳實施例,對依據本發(fā)明提出的基于MapReduce框架的數據篩選方法的具體實施方式
及工作原理進行詳細說明。本發(fā)明實施例提供的基于MapReduce框架的數據篩選方法包括:輸入篩選需求;篩選需求包括:數據的輸入路徑、數據的輸出路徑、字段序號、篩選上限、篩選下限及篩選關鍵字;判斷輸入的篩選需求是否合法;具體的,參見圖1,首先判斷MapReduce是否支持篩選需求的格式;若MapReduce不支持篩選需求的格式,則說明輸入的篩選需求不合法,提示用戶重新輸入,并等待用戶的下一個篩選請求;若MapReduce支持篩選需求的格式,再判斷篩選需求中數據的輸入路徑在文件系統中是否存在;若輸入路徑在文件系統中不存在,則說明輸入的篩選需求不合法,提示用戶重新輸入,并等待用戶的下一個篩選請求;若輸入路徑在文件系統中存在,再判斷篩選需求中數據的輸出路徑在文件系統中是否存在;若輸出路徑在文件系統中存在,則說明輸入的篩選需求不合法,提示用戶重新輸入,并等待用戶的下一個篩選請求;若輸出路徑在文件系統中不存在,再判斷篩選需求中待篩選數據的字段序號在文件系統中是否都存在;若字段序號在文件系統中都存在,則說明篩選需求是合法的,再統計篩選需求中待篩選數據的字段總數N,否則說明輸入的篩選需求不合法,提示用戶重新輸入,并等待用戶的下一個篩選請求。若篩選需求是合法的,則進行數據篩選;因為本發(fā)明是基于MapReduce框架的,所以是以行為單位進行處理的。參見圖2,進行數據篩選的步驟還包括:首先按照篩選需求中的數據的輸入路徑,將存放數據的數據表中的一行記錄作為映射Map的輸入值value,進行映射Map過程。再令一個整型變量X的初始值為I ;接著根據篩選需求提取篩選范圍或關鍵字對待篩選的數據進行范圍篩選或關鍵字篩選;再判斷整型變量X是否等于字段總數N ;其中,X和N均為正整數;若X不等于N,則說明待篩選的數據并不符合篩選需求中的所有篩選條件,需要將整型變量X加1,再繼續(xù)對數據進行篩選直至待篩選的數據符合所有的篩選條件;接著以用戶鍵入的第一個要求篩選的字段序號所對應的字段作為映射Map的輸出值key,將該行記錄作為映射Map的輸出值value ;再判斷文件系統中的數據是否都經過了篩選;若文件系統中不是所有數據都經過了篩選,則對文件系統中未篩選的數據進行篩選直至文件系統中的所有數據都經過了篩選,再將篩選后的數據按數據的輸出路徑輸出到目的地址;在本實施例中,先對篩選得到的數據進行整合得到包含鍵和值的數據對,即〈key, values〉對,作為化簡運算Reduce的輸入;再將化簡運算Reduce的輸出key設為空,最后將得到的數據按數據的輸出路徑輸出到目的地址。若文件系統中的所有數據都經過了篩選,則說明篩選過程完畢,再將篩選后的數據按數據的輸出路徑輸出到目的地址。在本實施例中,先對篩選得到的數據進行整合得到包含鍵和值的數據對,即〈key, values〉對,作為化簡運算Reduce的輸入;再將化簡運算Reduce的輸出key設為空,最后將得到的數據按數據的輸出路徑輸出到目的地址。若X等于N,則說明待篩選的數據符合篩選要求中的所有篩選條件,接著以用戶鍵入的第一個要求篩選的字段序號所對應的字段作為映射Map的輸出key,將該行記錄作為映射Map的輸出值value ;再判斷文件系統中的數據是否都經過了篩選;若文件系統中不是所有數據都經過了篩選,則對文件系統中未篩選的數據進行篩選直至文件系統中的所有數據都經過了篩選,再將篩選后的數據按數據的輸出路徑輸出到目的地址;在本實施例中,先對篩選得到的數據進行整合得到包含鍵和值的數據對,即〈key, values〉對,作為化簡運算Reduce的輸入;再將化簡運算Reduce的輸出key設為空,最后將得到的數據按數據的輸出路徑輸出到目的地址。若文件系統中的所有數據都經過了篩選,則說明篩選過程完畢,再將篩選后的數據按數據的輸出路徑輸出到目的地址。在本實施例中,先對篩選得到的數據進行整合得到包含鍵和值的數據對,即〈key, values〉對,作為化簡運算Reduce的輸入;再將化簡運算Reduce的輸出key設為空,最后將得到的數據按數據的輸出路徑輸出到目的地址。其中,篩選的具體過程為:先令一個整型變量X的初始值為I ;接著提取出篩選需求中字段序號所代表的數據;再根據篩選需求判斷是否需要對數據進行范圍篩選;若需要對數據進行范圍篩選,則從篩選需求中提取篩選上限和篩選下限;再判斷輸入的字段序號是否在篩選范圍內,若字段序號不在篩選范圍內,則說明字段序號不滿足篩選要求,將字段序號代表的數據舍棄掉;若字段序號在篩選范圍內,則說明字段序號滿足篩選要求,對字段序號代表的數據進行保存;接著判斷整型變量X是否等于字段總數N ;若不需要對數據進行范圍篩選,則從篩選需求中提取關鍵字,再判斷輸入的字段序號所代表的內容是否等于關鍵字,若內容不等于關鍵字,則說明字段序號不滿足篩選要求,將字段序號代表的數據舍棄掉;若內容等于關鍵字,則說明字段序號滿足篩選要求,對字段序號代表的數據進行保存;接著判斷整型變量X是否等于字段總數N。通過本發(fā)明實施例提供的基于MapReduce框架的數據篩選方法在Hadoop數據存儲平臺上實現MapReduce框架的數據篩選功能,由圖3可知,用戶在進入操作界面的時候首先需要進行登錄步驟101,步驟102通過判斷用戶名與密碼是否正確,從而確定該用戶是否登錄成功。登錄成功之后,根據用戶名來判斷該用戶是普通用戶103還是管理員104 ;普通用戶103只能執(zhí)行權限允許范圍之內的操作,而管理員104則可以對所有文件都進行讀寫操作,并且還能夠進行管理用戶信息107的操作。用戶登錄成功之后的界面中包含兩個模塊:文件系統模塊105和復雜操作模塊106。文件系統模塊105所展示的文件系統是一個仿照Hadoop自帶的、在網頁上顯示文件系統的一個系統,用戶可以通過點擊相應文件夾或者按鈕來實現存儲數據108、訪問數據109、刪除數據110、下載數據111等功能。其中數據是存儲在HDFS中的。而復雜操作模塊106則可以實現數據篩選功能112,點擊復雜操作模塊106可進入篩選操作界面。參見圖4,在篩選操作界面中,最開始篩選模塊201中有兩個窗口和一個按鈕,分別是輸入路徑窗口 202、輸出路徑窗口 203、添加按鈕204。輸入路徑窗口 202中鍵入的輸入路徑必須存在于文件系統中,輸出路徑窗口 203中鍵入的輸出路徑在文件系統中必須不存在,這樣才能避免輸出文件將其他文件覆蓋。點擊添加按鈕204,界面會彈出一個下拉列表,讓用戶選擇進行范圍篩選還是關鍵字篩選,選擇之后界面就會顯示出包含篩選細節(jié)的子模塊,點擊多次就能獲得多個子模塊,這樣就能實現多關鍵字的數據篩選功能。步驟205是判斷用戶是否要進行范圍篩選,如果步驟205的結果為是,則準備進行范圍篩選。所謂范圍篩選就是對于某一個字段篩選出在篩選上下限之間的數據。此時界面上就會加載一個子模塊207,這個子模塊包含3個窗口和一個按鈕。字段序號窗口 211需要用戶鍵入字段序號,篩選下限窗口 212和篩選上限窗口 213則需要用戶鍵入篩選下限和篩選上限,而點擊刪除214就會刪掉這個子模塊207。如果步驟205的結果為否,則準備進行關鍵字篩選;此時界面上會出現子模塊206,它包括兩個窗口和一個按鈕。其中字段序號窗口 208中需要用戶鍵入需要篩選的字段序號,篩選值窗口 209中需要用戶鍵入篩選值,點擊刪除210就會在界面上刪掉這一個子模塊206。在用戶鍵入了所有的篩選需求之后,點擊確定按鈕215就能將篩選需求提交給系統進行篩選操作。進入篩選頁面后,首先判斷用戶輸入的篩選需求的合法性;若用戶輸入的篩選需求是合法的,首先按照篩選需求中的數據的輸入路徑,將存放數據的數據表中的一行記錄作為映射Map的輸入值value,進行映射Map過程。再令一個整型變量X的初始值為I ;接著提取出篩選需要中字段序號所代表的數據;再根據篩選需求判斷是否需要對數據進行范圍篩選;若需要對數據進行范圍篩選,則根據用戶鍵入的篩選上下限來提取出篩選范圍;再判斷輸入的字段序號是否在篩選范圍內,若字段序號不在篩選范圍內,則說明字段序號不滿足篩選要求,將字段序號代表的數據舍棄掉;若字段序號在篩選范圍內,則說明字段序號滿足篩選要求,對字段序號代表的數據進行保存;如果不需要對數據進行范圍篩選,則說明用戶要求進行關鍵字篩選,從用戶鍵入的篩選需求中提取出篩選關鍵字,再判斷輸入的字段序號所代表的內容是否等于關鍵字,若內容不等于關鍵字,則說明字段序號不滿足篩選要求,將字段序號代表的數據舍棄掉;若內容等于關鍵字,則說明字段序號滿足篩選要求,對字段序號代表的數據進行保存;接著判斷整型變量X是否等于字段總數N。若X不等于N,則說明待篩選的數據并不符合篩選需求中的所有篩選條件,需要將整型變量X加1,再繼續(xù)對數據進行篩選直至待篩選的數據符合所有的篩選條件;接著以用戶鍵入的第一個要求篩選的字段序號所對應的字段作為映射Map的輸出值key,將該行記錄作為映射Map的輸出值value ;再判斷文件系統中的數據是否都經過了篩選;若文件系統中不是所有數據都經過了篩選,則對文件系統中未篩選數據進行篩選直至文件系統中的所有數據都經過了篩選,再將映射Map過程的輸出數據進行整合得到〈key, values)對,作為化簡運算Reduce的輸入。接著將化簡運算Reduce的輸出key設為空,輸出值value則是values序列的每一項,最后將篩選結果保存在用戶指定的輸出路徑中。若X等于N,則說明待篩選的數據符合篩選要求中的所有篩選條件,接著以用戶鍵入的第一個要求篩選的字段序號所對應的字段作為映射Map的輸出key,將該行記錄作為映射Map的輸出值value ;再判斷文件系統中的數據是否都經過了篩選;若文件系統中不是所有數據都經過了篩選,則對文件系統中未篩選的數據進行篩選直至文件系統中的所有數據都經過了篩選,再將映射Map過程的輸出數據進行整合得到〈key, values〉對,作為化簡運算Reduce的輸入。接著將化簡運算Reduce的輸出key設為空,輸出值value則是values序列的每一項,最后將篩選結果保存在用戶指定的輸出路徑中。本發(fā)明實施例提供的基于MapReduce框架的數據篩選方法,在Hadoop平臺上,通過提供統一的輸入格式,即提供的篩選輸入項相同,只是用戶輸入的篩選條件不同,不同篩選需求的用戶都可以通過本發(fā)明提供的方法對數據進行篩選,從而避免了頻繁的編寫不同的篩選程序,進而實現了對數據的高效篩選,提高了用戶處理數據的效率和Hadoop平臺的使用效率。本發(fā)明還賦予不同用戶不同的操作權限,實現了數據篩選操作的界面化,使Hadoop平臺在實現數據篩選功能的同時,便于管理。最后所應說明的是,以上具體實施方式
僅用以說明本發(fā)明的技術方案而非限制,盡管參照實例對本發(fā)明進行了詳細說明,本領域的普通技術人員應當理解,可以對本發(fā)明的技術方案進行修改或者等同替換,而不脫離本發(fā)明技術方案的精神和范圍,其均應涵蓋在本發(fā)明的權利要求范圍當中。
權利要求
1.一種基于MapReduce框架的數據篩選方法,其特征在于,包括: 輸入篩選需求;所述篩選需求包括:數據的輸入路徑、數據的輸出路徑、字段序號、篩選上限、篩選下限及篩選關鍵字; 進行數據篩選;統計篩選需求中待篩選數據的字段總數N,令一個整型變量X的初始值為I ;根據篩選需求提取篩選范圍或關鍵字對待篩選的數據進行范圍篩選或關鍵字篩選;判斷所述整型變量X是否等于所述字段總數N ; 若X不等于N,則將整型變量X加1,繼續(xù)對數據進行篩選直至待篩選的數據符合所有的篩選條件;將篩選后的數據按所述輸出路徑輸出到目的地址; 若X等于N,則將篩選后的數據按所述輸出路徑輸出到目的地址。
2.如權利要求1所述的基于MapReduce框架的數據篩選方法,其特征在于,所述進行數據篩選的步驟還包括:判斷輸入的篩選需求是否合法;若所述篩選需求合法,則進行數據篩選。
3.如權利要求2所述的基于MapReduce框架的數據篩選方法,其特征在于,所述判斷輸入的篩選需求是否合法的步驟具體包括:判斷MapReduce是否支持所述篩選需求的格式;若所述MapReduce支持篩選需求的格式,判斷篩選需求中數據的輸入路徑在文件系統中是否存在;若所述數據的輸入路徑在所述文件系統中存在,判斷所述篩選需求中數據的輸出路徑在所述文件系統中是否存在;若所述數據的輸出路徑在所述文件系統中不存在,判斷所述篩選需求中待篩選數據的字段序號在所述文件系統中是否都存在;若所述字段序號在所述文件系統中都存在,則說明篩選需求是合法的。
4.如權利要求3所述的基于MapReduce框架的數據篩選方法,其特征在于,所述根據篩選需求提取篩選范圍或關鍵字對待篩選的數據進行范圍篩選或關鍵字篩選的步驟具體包括:提取出篩選需求中字段序號所代表的數據;根據篩選需求判斷是否需要對數據進行范圍篩選; 若需要對數據進行范圍篩選,則從篩選需求中提取出篩選上限和篩選下限;判斷輸入的字段序號是否在篩選范圍內,若字段序號在篩選范圍內,則對字段序號代表的數據進行保存; 若不需要對數據進行范圍篩選,則從篩選需求中提取關鍵字,判斷輸入的字段序號所代表的內容是否等于關鍵字,若所述內容等于關鍵字,則對字段序號代表的數據進行保存。
5.如權利要求4所述的基于MapReduce框架的數據篩選方法,其特征在于,所述待篩選的數據符合所有的篩選條件的步驟還包括:判斷文件系統中的數據是否都經過了篩選; 若文件系統中不是所有數據都經過了篩選,則對文件系統中未篩選的數據進行篩選直至文件系統中的所有數據都經過了篩選;將篩選后的數據按所述數據的輸出路徑輸出到目的地址; 若文件系統中的所有數據都經過了篩選,則將篩選后的數據按所述數據的輸出路徑輸出到目的地址。
6.如權利要求5所述的基于MapReduce框架的數據篩選方法,其特征在于,所述將篩選后的數據按所述數據的輸出路徑輸出到目的地址的步驟具體包括:對篩選得到的數據進行整合得到包含鍵和值的數據對,作為化簡運算的輸入;再將所述化簡運算的輸出設為空,最后將得到的數據按數據的輸出路徑輸出到目的地址。
全文摘要
本發(fā)明涉及數據篩選技術領域,公開了一種基于MapReduce框架的數據篩選方法,包括輸入篩選需求;統計篩選需求中待篩選數據的字段總數N,令一個整型變量X的初始值為1;根據篩選需求提取篩選范圍或關鍵字對待篩選的數據進行范圍篩選或關鍵字篩選;判斷整型變量X是否等于字段總數N;若X不等于N,則將整型變量X加1,繼續(xù)對數據進行篩選直至待篩選的數據符合所有的篩選條件;將篩選后的數據按輸出路徑輸出到目的地址;若X等于N,則將篩選后的數據按輸出路徑輸出到目的地址。本發(fā)明在Hadoop平臺的基礎上,實現了對數據的篩選,從而提高了用戶處理數據的效率和Hadoop平臺的使用效率。
文檔編號G06F17/30GK103150400SQ201310101529
公開日2013年6月12日 申請日期2013年3月27日 優(yōu)先權日2013年3月27日
發(fā)明者楊超, 方宸, 涂來 申請人:領航動力信息系統有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
闵行区| 德阳市| 治多县| 乡城县| 河东区| 乐山市| 教育| 石台县| 西畴县| 潮州市| 绥芬河市| 邵阳县| 江源县| 鄯善县| 新田县| 金秀| 休宁县| 息烽县| 延川县| 平谷区| 衡山县| 齐河县| 稻城县| 尉氏县| 达拉特旗| 瑞金市| 襄垣县| 荃湾区| 乡城县| 蚌埠市| 军事| 洛扎县| 桐庐县| 云龙县| 马关县| 岳阳县| 观塘区| 嘉峪关市| 青岛市| 汾阳市| 安顺市|