本發(fā)明涉及彩票數(shù)據(jù)查詢領(lǐng)域,尤指一種大數(shù)據(jù)檢索方法及裝置。
背景技術(shù):
隨著體彩系統(tǒng)交易量的不斷上升,系統(tǒng)記錄的文件數(shù)據(jù)呈現(xiàn)爆炸式的增長,如何從海量數(shù)據(jù)中發(fā)現(xiàn)潛在的規(guī)律和知識已經(jīng)是一個(gè)不可回避的問題,而文本數(shù)據(jù)存儲系統(tǒng)可以很好地解決這一問題。文本數(shù)據(jù)存儲系統(tǒng)為客戶端提供了一種簡單的數(shù)據(jù)模型,客戶端可以動態(tài)地控制數(shù)據(jù)的布局和格式,并且利用底層數(shù)據(jù)存儲的局部性特征。但是對數(shù)據(jù)的檢索速度,由于文本數(shù)據(jù)存儲系統(tǒng)采用的是Key-Value存儲方式,因此對基于Value的條件查詢都是全表掃描,對于小數(shù)據(jù)量沒問題,但是一旦數(shù)據(jù)量大到百萬,千萬級(我們這里是一天就千萬級)那就會無法接受,會非常非常非常慢。
技術(shù)實(shí)現(xiàn)要素:
由于文本數(shù)據(jù)存儲系統(tǒng)是key-value存儲系統(tǒng),因此對基于value的條件查詢都是全表掃描,對于小數(shù)據(jù)量沒問題,但是一旦數(shù)據(jù)量大到百萬,千萬級那就會無法接受,會非常非常非常慢;為此,本發(fā)明目的在于提供一種高效的檢索方法及裝置幫助用戶快速定位檢索內(nèi)容。
為達(dá)上述目的,本發(fā)明具體提供一種大數(shù)據(jù)檢索方法,所述檢索方法包含:獲取待存儲的體彩文本數(shù)據(jù),所述體彩文本數(shù)據(jù)包含復(fù)數(shù)個(gè)文本數(shù)據(jù);根據(jù)所述文本數(shù)據(jù)建立唯一的索引號,所述索引號與所述文本數(shù)據(jù)一對一設(shè)置;根據(jù)復(fù)數(shù)個(gè)所述索引號建立索引表,并通過所述索引表將所述文本數(shù)據(jù)按序存儲至數(shù)據(jù)庫中;通過待檢索信息的特征信息確定待檢索信息所對應(yīng)的索引號;根據(jù)所述索引表與所述待檢索信息所對應(yīng)的索引號確定所述數(shù)據(jù)庫中待檢索信息的存儲位置。
在上述大數(shù)據(jù)檢索方法中,優(yōu)選地,所述索引號為KEY值。
在上述大數(shù)據(jù)檢索方法中,優(yōu)選地,所述根據(jù)所述文本數(shù)據(jù)建立唯一的索引號包含:分析所述文本數(shù)據(jù),獲得所述文本數(shù)據(jù)的特征信息,根據(jù)所述特征信息生成唯一索引號。
在上述大數(shù)據(jù)檢索方法中,優(yōu)選地,所述文本數(shù)據(jù)的特征信息包含:所述文本數(shù)據(jù)的存入時(shí)間、存入所述文本數(shù)據(jù)的操作地址信息以及所述操作地址信息存入所述文本數(shù)據(jù)的順序編號。
在上述大數(shù)據(jù)檢索方法中,優(yōu)選地,所述根據(jù)復(fù)數(shù)個(gè)所述索引號建立索引表包含將所述文本數(shù)據(jù)的存入時(shí)間、存入所述文本數(shù)據(jù)的操作地址信息以及所述操作地址信息存入所述文本數(shù)據(jù)的順序編號相加,獲得所述KEY值的數(shù)值大小,根據(jù)所述KEY值的數(shù)值大小對所述KEY值進(jìn)行排序并根據(jù)所述KEY值排序后的順序生成索引表。
在上述大數(shù)據(jù)檢索方法中,優(yōu)選地,所述檢索方法還包含:按預(yù)定周期篩選所述文本數(shù)據(jù),將超出預(yù)定閾值的所述文本數(shù)據(jù)及其在所述索引表中對應(yīng)的所述索引號刪除。
在上述大數(shù)據(jù)檢索方法中,優(yōu)選地,所述檢索方法還包含:當(dāng)接收到復(fù)數(shù)個(gè)文本數(shù)據(jù)時(shí),分別對所述文本數(shù)據(jù)建立索引號,將所述索引號與所述索引表中索引號比對,根據(jù)比對結(jié)果將所述索引號插入所述索引表中并將所述索引號所對應(yīng)的所述文本數(shù)據(jù)對應(yīng)插入數(shù)據(jù)庫中存儲的文本數(shù)據(jù)中。
本發(fā)明還提供一種大數(shù)據(jù)檢索裝置,所述檢索裝置包含數(shù)據(jù)獲取模塊、檢索模塊和存儲模塊;所述數(shù)據(jù)獲取模塊用于獲取待存儲的體彩文本數(shù)據(jù),所述體彩文本數(shù)據(jù)包含復(fù)數(shù)個(gè)文本數(shù)據(jù);所述檢索模塊用于根據(jù)所述文本數(shù)據(jù)建立唯一的索引號,所述索引號與所述文本數(shù)據(jù)一對一設(shè)置;根據(jù)復(fù)數(shù)個(gè)所述索引號建立索引表,并通過所述索引表將所述文本數(shù)據(jù)按序存儲至所述存儲模塊中;以及,通過待檢索信息的特征信息確定待檢索信息所對應(yīng)的索引號;根據(jù)所述索引表與所述待檢索信息所對應(yīng)的索引號確定所述存儲模塊中待檢索信息的存儲位置;所述存儲模塊用于存儲所述索引表和所述文本數(shù)據(jù)。
在上述大數(shù)據(jù)檢索裝置中,優(yōu)選地,所述檢索模塊還用于當(dāng)接收到復(fù)數(shù)個(gè)文本數(shù)據(jù)時(shí),分別對所述文本數(shù)據(jù)建立索引號,將所述索引號與所述索引表中索引號比對,根據(jù)比對結(jié)果將所述索引號插入所述索引表中并將所述索引號所對應(yīng)的所述文本數(shù)據(jù)對應(yīng)插入所述存儲模塊中存儲的文本數(shù)據(jù)中。
在上述大數(shù)據(jù)檢索裝置中,優(yōu)選地,所述檢索裝置還包含清理模塊,所述清理模塊用于按預(yù)定周期篩選所述存儲模塊中的所述文本數(shù)據(jù),將超出預(yù)定閾值的所述文本數(shù)據(jù)及其在所述索引表中對應(yīng)的所述索引號刪除。
本發(fā)明的有益技術(shù)效果在于:通過本發(fā)明所提供的大數(shù)據(jù)檢索方法及裝置,可根據(jù)特定的需求場景在成百上千萬條記錄中查詢到需要的數(shù)據(jù),查詢時(shí)間控制在毫秒級,大大加快了體彩銷售終端的數(shù)據(jù)查詢速度。
附圖說明
此處所說明的附圖用來提供對本發(fā)明的進(jìn)一步理解,構(gòu)成本申請的一部分,并不構(gòu)成對本發(fā)明的限定。在附圖中:
圖1為本發(fā)明所提供的大數(shù)據(jù)檢索方法的流程示意圖;
圖2為本發(fā)明所提供的大數(shù)據(jù)檢索裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,下面結(jié)合實(shí)施例和附圖,對本發(fā)明做進(jìn)一步詳細(xì)說明。在此,本發(fā)明的示意性實(shí)施例及其說明用于解釋本發(fā)明,但并不作為對本發(fā)明的限定。
請參考圖1所示,本發(fā)明提供了一種大數(shù)據(jù)檢索方法,具體包含:S101獲取待存儲的體彩文本數(shù)據(jù),所述體彩文本數(shù)據(jù)包含復(fù)數(shù)個(gè)文本數(shù)據(jù);S102根據(jù)所述文本數(shù)據(jù)建立唯一的索引號,所述索引號與所述文本數(shù)據(jù)一對一設(shè)置;S103根據(jù)復(fù)數(shù)個(gè)所述索引號建立索引表,并通過所述索引表將所述文本數(shù)據(jù)按序存儲至數(shù)據(jù)庫中;S104通過待檢索信息的特征信息確定待檢索信息所對應(yīng)的索引號;S105根據(jù)所述索引表與所述待檢索信息所對應(yīng)的索引號確定所述數(shù)據(jù)庫中待檢索信息的存儲位置。其中,所述索引號為KEY值。
在上述實(shí)施例中,所述根據(jù)所述文本數(shù)據(jù)建立唯一的索引號包含:分析所述文本數(shù)據(jù),獲得所述文本數(shù)據(jù)的特征信息,根據(jù)所述特征信息生成唯一索引號。其中,所述文本數(shù)據(jù)的特征信息包含:所述文本數(shù)據(jù)的存入時(shí)間DATETIME、存入所述文本數(shù)據(jù)的操作地址信息SID以及所述操作地址信息存入所述文本數(shù)據(jù)的順序編號SEQ。其中所述文本數(shù)據(jù)的順序編號SEQ為同一所述文本數(shù)據(jù)的操作地址信息SID的不同操作的順序標(biāo)號。
在本發(fā)明一優(yōu)選的實(shí)施例中,所述根據(jù)復(fù)數(shù)個(gè)所述索引號建立索引表包含將所述文本數(shù)據(jù)的存入時(shí)間、存入所述文本數(shù)據(jù)的操作地址信息以及所述操作地址信息存入所述文本數(shù)據(jù)的順序編號相加,獲得所述KEY值的數(shù)值大小,根據(jù)所述KEY值的數(shù)值大小對所述KEY值進(jìn)行排序并根據(jù)所述KEY值排序后的順序生成索引表。
在實(shí)際工作中,上述實(shí)施例可采用文本數(shù)據(jù)存儲系統(tǒng)存儲體彩文本數(shù)據(jù),每條數(shù)據(jù)擁有唯一KEY,并以慣常使用的檢索特性為字段;通過數(shù)據(jù)清洗解析模塊獲取體彩文本數(shù)據(jù)并入庫;在入庫過程中,對每條數(shù)據(jù)的KEY進(jìn)行計(jì)算,并按KEY的順序進(jìn)行排列。在設(shè)計(jì)KEY的時(shí)候采用KEY=DATETIME+SID+SEQ(DATETIME是入庫時(shí)間,SID是會話ID,SEQ為同一SID的不同操作的順序編號),對新入庫的文本數(shù)據(jù)KEY建立全文索引;以檢索特性為關(guān)鍵字使用全文索引進(jìn)行檢索,直接獲取符合檢索特性的所有文本數(shù)據(jù)的完整信息。不論非關(guān)系型數(shù)據(jù)記錄多大,上述查詢時(shí)間都在毫秒級了。極大提升體彩文本數(shù)據(jù)的存儲能力和檢索分析性能。
為提高檢索效率,節(jié)約存儲空間,在本發(fā)明一優(yōu)選實(shí)施例中進(jìn)一步對一些過期數(shù)據(jù)進(jìn)行清理,具體的在所述檢索方法還包含:按預(yù)定周期篩選所述文本數(shù)據(jù),將超出預(yù)定閾值的所述文本數(shù)據(jù)及其在所述索引表中對應(yīng)的所述索引號刪除。其中預(yù)定閾值可為半年、一年等,具體設(shè)置時(shí)間可根據(jù)實(shí)際情況選擇設(shè)置,本發(fā)明在此并不做過多限制;預(yù)定周期則可與預(yù)定閾值設(shè)定時(shí)間相同,也可設(shè)置為一周、三個(gè)月等。
鑒于實(shí)際工作中,文本數(shù)據(jù)存入的時(shí)間不同,部分文本數(shù)據(jù)因網(wǎng)絡(luò)延遲或其他情況于后期陸續(xù)接到時(shí),所述檢索方法還包含:當(dāng)接收到復(fù)數(shù)個(gè)文本數(shù)據(jù)時(shí),分別對所述文本數(shù)據(jù)建立索引號,將所述索引號與所述索引表中索引號比對,根據(jù)比對結(jié)果將所述索引號插入所述索引表中并將所述索引號所對應(yīng)的所述文本數(shù)據(jù)對應(yīng)插入數(shù)據(jù)庫中存儲的文本數(shù)據(jù)中。以此,將該些文本數(shù)據(jù)插入正確的位置,便于后期及時(shí)檢索定位該些文本數(shù)據(jù),提高檢索效率。
在實(shí)際工作中,體育彩票在全面的實(shí)體銷售終端有15萬臺左右,銷售員在每臺終端的操作行為都會被記錄下來,操作行為數(shù)據(jù)以文本的形式進(jìn)行存儲,每臺終端每天都會產(chǎn)生一個(gè)銷售員操作行為文本數(shù)據(jù),文本平均大小1M,記錄數(shù)據(jù)50萬條左右;這些產(chǎn)生的數(shù)據(jù)每天會定時(shí)傳送至后端,滿足后期的分析查詢。通過本發(fā)明所提供的大數(shù)據(jù)檢索,對于每臺終端上傳的文本數(shù)據(jù)進(jìn)行處理,將文本數(shù)據(jù)名稱按終端編號+數(shù)據(jù)產(chǎn)生日期進(jìn)行命名,例如終端編號為1101111111111的終端(終端編號是唯一的的13位數(shù)字)在2016年11月29日產(chǎn)生的操作行為數(shù)據(jù)文件名稱為110111111111120161129,同時(shí)在每個(gè)文本數(shù)據(jù)中記錄的每條數(shù)據(jù)會有相應(yīng)的時(shí)間記錄(示例如下,時(shí)間精確到時(shí)分秒毫秒),在入數(shù)據(jù)庫前,建立索引為文件名稱+時(shí)間記錄,如110111111111120161129114444181,這就是該條數(shù)據(jù)的唯一索引號,在存儲數(shù)據(jù)到列式數(shù)據(jù)庫中去,跟存儲位置順序進(jìn)行一一對應(yīng),在查詢分析的時(shí)候能在秒級以內(nèi)將該條數(shù)據(jù)進(jìn)行查出,極大提高了體彩銷售終端的數(shù)據(jù)查詢速度。
請參考圖2所示,本發(fā)明還提供一種大數(shù)據(jù)檢索裝置,所述檢索裝置包含數(shù)據(jù)獲取模塊、檢索模塊和存儲模塊;所述數(shù)據(jù)獲取模塊用于獲取待存儲的體彩文本數(shù)據(jù),所述體彩文本數(shù)據(jù)包含復(fù)數(shù)個(gè)文本數(shù)據(jù);所述檢索模塊用于根據(jù)所述文本數(shù)據(jù)建立唯一的索引號,所述索引號與所述文本數(shù)據(jù)一對一設(shè)置;根據(jù)復(fù)數(shù)個(gè)所述索引號建立索引表,并通過所述索引表將所述文本數(shù)據(jù)按序存儲至所述存儲模塊中;以及,通過待檢索信息的特征信息確定待檢索信息所對應(yīng)的索引號;根據(jù)所述索引表與所述待檢索信息所對應(yīng)的索引號確定所述存儲模塊中待檢索信息的存儲位置;所述存儲模塊用于存儲所述索引表和所述文本數(shù)據(jù)。
在上述大數(shù)據(jù)檢索裝置中,所述檢索模塊還用于當(dāng)接收到復(fù)數(shù)個(gè)文本數(shù)據(jù)時(shí),分別對所述文本數(shù)據(jù)建立索引號,將所述索引號與所述索引表中索引號比對,根據(jù)比對結(jié)果將所述索引號插入所述索引表中并將所述索引號所對應(yīng)的所述文本數(shù)據(jù)對應(yīng)插入所述存儲模塊中存儲的文本數(shù)據(jù)中。其中,所述檢索裝置還可包含清理模塊,所述清理模塊用于按預(yù)定周期篩選所述存儲模塊中的所述文本數(shù)據(jù),將超出預(yù)定閾值的所述文本數(shù)據(jù)及其在所述索引表中對應(yīng)的所述索引號刪除。
通過本發(fā)明所提供的大數(shù)據(jù)檢索方法及裝置,可根據(jù)特定的需求場景在成百上千萬條記錄中查詢到需要的數(shù)據(jù),查詢時(shí)間控制在毫秒級,大大加快了體彩銷售終端的數(shù)據(jù)查詢速度。
以上所述的具體實(shí)施例,對本發(fā)明的目的、技術(shù)方案和有益效果進(jìn)行了進(jìn)一步詳細(xì)說明,所應(yīng)理解的是,以上所述僅為本發(fā)明的具體實(shí)施例而已,并不用于限定本發(fā)明的保護(hù)范圍,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。