[發(fā)明專利]數(shù)據(jù)查詢方法和裝置在審
| 申請?zhí)枺?/td> | 201610809785.6 | 申請日: | 2016-09-05 |
| 公開(公告)號: | CN107798026A | 公開(公告)日: | 2018-03-13 |
| 發(fā)明(設(shè)計(jì))人: | 李強(qiáng);廖耀華 | 申請(專利權(quán))人: | 北京京東尚科信息技術(shù)有限公司;北京京東世紀(jì)貿(mào)易有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 北京英賽嘉華知識產(chǎn)權(quán)代理有限責(zé)任公司11204 | 代理人: | 王達(dá)佐,馬曉亞 |
| 地址: | 100080 北京市海淀區(qū)杏石口路6*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 數(shù)據(jù) 查詢 方法 裝置 | ||
技術(shù)領(lǐng)域
本申請涉及計(jì)算機(jī)技術(shù)領(lǐng)域,具體涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,尤其涉及數(shù)據(jù)查詢方法和裝置。
背景技術(shù)
隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,互聯(lián)網(wǎng)應(yīng)用迅速擴(kuò)大,數(shù)據(jù)量也正在爆發(fā)式增長。面對這些海量數(shù)據(jù),人們很期待能夠快速獲取有效信息,因此,對大數(shù)據(jù)量的查詢并快速返回查詢結(jié)果顯得極其重要。
針對互聯(lián)網(wǎng)公司面臨的大數(shù)據(jù)量查詢問題,現(xiàn)有的方法通常是借助于數(shù)據(jù)倉庫工具Hive來完成海量數(shù)據(jù)查詢。這里,Hive可以將結(jié)構(gòu)化的數(shù)據(jù)文件映射為一張數(shù)據(jù)庫表,并提供簡單的SQL(Structured Query Language,結(jié)構(gòu)化查詢語言)查詢功能,可以將SQL語句轉(zhuǎn)換為MapReduce任務(wù)進(jìn)行運(yùn)行。需要說明的是,MapReduce任務(wù)可以是通過編程模型MapReduce來執(zhí)行的任務(wù),MapReduce可以用于大規(guī)模數(shù)據(jù)集的并行運(yùn)算。
現(xiàn)有的方法雖然可行,但存在以下缺點(diǎn):查詢速度不夠快:采用現(xiàn)有的方法進(jìn)行數(shù)據(jù)查詢時,通常是將提交的查詢?nèi)蝿?wù)翻譯成多階段的MapReduce任務(wù),一個接著一個地運(yùn)行,每一個任務(wù)從磁盤上讀取、輸入數(shù)據(jù)并且將中間結(jié)果輸出到磁盤上。學(xué)習(xí)使用成本高:當(dāng)業(yè)務(wù)人員有數(shù)據(jù)提取需求時,通常是自己編寫對應(yīng)的結(jié)構(gòu)化數(shù)據(jù)查詢語言語句,或給研發(fā)人員提需求,請研發(fā)人員幫忙提取所需的數(shù)據(jù)。這兩種方式會存在學(xué)習(xí)溝通成本高,數(shù)據(jù)提取周期較長的問題,而且每次的數(shù)據(jù)提取需求僅適用于當(dāng)前需求。
因此,現(xiàn)有的數(shù)據(jù)查詢方法不能滿足數(shù)據(jù)查詢的實(shí)時性,存在查詢效率低的問題。
發(fā)明內(nèi)容
本申請的目的在于提出一種改進(jìn)的數(shù)據(jù)查詢方法和裝置,來解決以上背景技術(shù)部分提到的技術(shù)問題。
第一方面,本申請?zhí)峁┝艘环N數(shù)據(jù)查詢方法,所述方法包括:接收用戶終端發(fā)送的數(shù)據(jù)查詢請求,其中,所述數(shù)據(jù)查詢請求包括字段編號;根據(jù)所述字段編號,從預(yù)存信息列表中查詢所述字段編號對應(yīng)的字段名、字段類型和預(yù)置關(guān)聯(lián)語句,其中,所述預(yù)置關(guān)聯(lián)語句用于將與所述字段編號所指示的字段相關(guān)的各個數(shù)據(jù)表進(jìn)行關(guān)聯(lián),所述字段編號與所述字段名、所述字段類型和所述預(yù)置關(guān)聯(lián)語句相關(guān)聯(lián)地存儲于所述預(yù)存信息列表;根據(jù)所述字段名、所述字段類型和所述預(yù)置關(guān)聯(lián)語句,拼裝結(jié)構(gòu)化查詢語言SQL查詢語句;執(zhí)行所述SQL查詢語句以從所述SQL查詢語句所指示的數(shù)據(jù)庫中查詢所述用戶終端所請求的數(shù)據(jù),并將查詢所得的數(shù)據(jù)返回給所述用戶終端。
在一些實(shí)施例中,所述字段類型為分組字段或數(shù)據(jù)字段;以及所述根據(jù)所述字段名、所述字段類型和所述預(yù)置關(guān)聯(lián)語句,拼裝結(jié)構(gòu)化查詢語言SQL查詢語句,包括:根據(jù)所述字段名,拼裝所述SQL查詢語句的SELECT子句;根據(jù)所述預(yù)置關(guān)聯(lián)語句,拼裝所述SQL查詢語句的FROM子句;根據(jù)所述字段類型,拼裝所述SQL查詢語句的GROUP BY子句,其中,如果所述字段類型為分組字段,則將所述字段名拼裝至所述GROUP BY子句。
在一些實(shí)施例中,所述根據(jù)所述字段名,拼裝所述SQL查詢語句的SELECT子句,包括:響應(yīng)于所述字段類型為分組字段,則在所述SELECT子句中直接采用所述字段名。
在一些實(shí)施例中,所述根據(jù)所述字段名,拼裝所述SQL查詢語句的SELECT子句,包括:響應(yīng)于所述字段類型為數(shù)據(jù)字段,則在所述SELECT子句中采用求和SUM函數(shù),并將所述字段名作為所述SUM函數(shù)的參數(shù)。
在一些實(shí)施例中,所述查詢請求還包括篩選條件;以及所述根據(jù)所述字段名、所述字段類型和所述預(yù)置關(guān)聯(lián)語句,拼裝結(jié)構(gòu)化查詢語言SQL查詢語句,還包括:根據(jù)所述篩選條件,拼裝所述SQL查詢語句的WHERE子句。
第二方面,本申請?zhí)峁┝艘环N數(shù)據(jù)查詢裝置,所述裝置包括:接收單元,配置用于接收用戶終端發(fā)送的數(shù)據(jù)查詢請求,其中,所述數(shù)據(jù)查詢請求包括字段編號;查詢單元,配置用于根據(jù)所述字段編號,從預(yù)存信息列表中查詢所述字段編號對應(yīng)的字段名、字段類型和預(yù)置關(guān)聯(lián)語句,其中,所述預(yù)置關(guān)聯(lián)語句用于將與所述字段編號所指示的字段相關(guān)的各個數(shù)據(jù)表進(jìn)行關(guān)聯(lián),所述字段編號與所述字段名、所述字段類型和所述預(yù)置關(guān)聯(lián)語句相關(guān)聯(lián)地存儲于所述預(yù)存信息列表;拼裝單元,配置用于根據(jù)所述字段名、所述字段類型和所述預(yù)置關(guān)聯(lián)語句,拼裝結(jié)構(gòu)化查詢語言SQL查詢語句;執(zhí)行單元,配置用于執(zhí)行所述SQL查詢語句以從所述SQL查詢語句所指示的數(shù)據(jù)庫中查詢所述用戶終端所請求的數(shù)據(jù),并將查詢所得的數(shù)據(jù)返回給所述用戶終端。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京京東尚科信息技術(shù)有限公司;北京京東世紀(jì)貿(mào)易有限公司,未經(jīng)北京京東尚科信息技術(shù)有限公司;北京京東世紀(jì)貿(mào)易有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610809785.6/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F17-00 特別適用于特定功能的數(shù)字計(jì)算設(shè)備或數(shù)據(jù)處理設(shè)備或數(shù)據(jù)處理方法
G06F17-10 .復(fù)雜數(shù)學(xué)運(yùn)算的
G06F17-20 .處理自然語言數(shù)據(jù)的
G06F17-30 .信息檢索;及其數(shù)據(jù)庫結(jié)構(gòu)
G06F17-40 .數(shù)據(jù)的獲取和記錄
G06F17-50 .計(jì)算機(jī)輔助設(shè)計(jì)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設(shè)備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設(shè)備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置





