[發(fā)明專利]一種分布式鍵-值查詢方法和查詢引擎系統(tǒng)有效
| 申請?zhí)枺?/td> | 201110460494.8 | 申請日: | 2011-12-31 |
| 公開(公告)號(hào): | CN102591970A | 公開(公告)日: | 2012-07-18 |
| 發(fā)明(設(shè)計(jì))人: | 楊康;謝冉 | 申請(專利權(quán))人: | 北京奇虎科技有限公司 |
| 主分類號(hào): | G06F17/30 | 分類號(hào): | G06F17/30;H04L29/08 |
| 代理公司: | 北京潤澤恒知識(shí)產(chǎn)權(quán)代理有限公司 11319 | 代理人: | 蘇培華 |
| 地址: | 100088 北京市西城區(qū)*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 分布式 查詢 方法 引擎 系統(tǒng) | ||
1.一種分布式鍵-值查詢引擎系統(tǒng),其特征在于,包括:
元數(shù)據(jù)服務(wù)器,用于維護(hù)指向存儲(chǔ)節(jié)點(diǎn)的全局路由表信息;
至少一個(gè)代理節(jié)點(diǎn),包括:
查詢轉(zhuǎn)發(fā)模塊,用于響應(yīng)客戶端發(fā)出的包括目標(biāo)KEY的請求,基于所述全局路由表信息,將客戶端請求轉(zhuǎn)發(fā)給相應(yīng)的存儲(chǔ)節(jié)點(diǎn);
數(shù)據(jù)轉(zhuǎn)發(fā)模塊,用于將相應(yīng)存儲(chǔ)節(jié)點(diǎn)返回的包括目標(biāo)Value的回應(yīng)包傳送給客戶端;
至少一個(gè)存儲(chǔ)節(jié)點(diǎn),用于基于接收到的客戶端請求,從本地存儲(chǔ)中獲取所需數(shù)據(jù),并發(fā)送包括目標(biāo)Value的回應(yīng)包給代理節(jié)點(diǎn)。
2.根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,所述代理節(jié)點(diǎn)還包括:
路由表同步模塊,用于將元數(shù)據(jù)服務(wù)器的全局路由表信息同步至本地;
其中,所述查詢轉(zhuǎn)發(fā)模塊基于本地的全局路由表信息進(jìn)行查詢。
3.根據(jù)權(quán)利要求2所述的系統(tǒng),其特征在于,所述代理節(jié)點(diǎn)還包括:
路由表更新模塊,用于當(dāng)收到元數(shù)據(jù)服務(wù)器的路由表更新通知時(shí),從元數(shù)據(jù)服務(wù)器獲取新的全局路由表信息。
4.根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,所述查詢轉(zhuǎn)發(fā)模塊具體包括:
哈希子模塊,用于基于所接收的包括目標(biāo)KEY的客戶端請求,通過哈希算法計(jì)算目標(biāo)KEY所在的數(shù)據(jù)區(qū)塊;
定位子模塊,用于依據(jù)計(jì)算得到的目標(biāo)KEY所在的數(shù)據(jù)區(qū)塊的標(biāo)識(shí),查詢所述全局路由表信息,定位相應(yīng)的存儲(chǔ)節(jié)點(diǎn);
轉(zhuǎn)發(fā)子模塊,用于將客戶端請求轉(zhuǎn)發(fā)至相應(yīng)存儲(chǔ)節(jié)點(diǎn)。
5.根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,所述元數(shù)據(jù)服務(wù)器還包括:
數(shù)據(jù)同步模塊,用于通知所述新增的存儲(chǔ)節(jié)點(diǎn)從所選定的存儲(chǔ)節(jié)點(diǎn)中同步N個(gè)數(shù)據(jù)區(qū)塊;所述N由所述新增存儲(chǔ)節(jié)點(diǎn)的屬性參數(shù)計(jì)算得到;
路由表變更模塊,用于當(dāng)所述新增的存儲(chǔ)節(jié)點(diǎn)完成數(shù)據(jù)同步后,生成新的全局路由表信息;
第一更新通知模塊,用于向代理節(jié)點(diǎn)發(fā)送路由表更新通知。
6.根據(jù)權(quán)利要求2或5所述的系統(tǒng),其特征在于,所述元數(shù)據(jù)服務(wù)器還包括:
監(jiān)控模塊,用于監(jiān)控各存儲(chǔ)節(jié)點(diǎn)的存活狀態(tài),當(dāng)監(jiān)測到一個(gè)存儲(chǔ)節(jié)點(diǎn)失效時(shí),修改全局路由表信息;所述修改包括:針對(duì)以該失效的存儲(chǔ)節(jié)點(diǎn)作為主節(jié)點(diǎn)的數(shù)據(jù)區(qū)塊,將其主節(jié)點(diǎn)重新映射到另一個(gè)冗余節(jié)點(diǎn)上;
第二更新通知模塊,用于向代理節(jié)點(diǎn)發(fā)送路由表更新通知。
7.根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,所述至少一個(gè)存儲(chǔ)節(jié)點(diǎn)包括:
用于存儲(chǔ)熱點(diǎn)數(shù)據(jù)的高速存儲(chǔ)節(jié)點(diǎn),和用于存儲(chǔ)非熱點(diǎn)數(shù)據(jù)的其他類型存儲(chǔ)節(jié)點(diǎn);
其中,所述高速存儲(chǔ)節(jié)點(diǎn)包括內(nèi)存節(jié)點(diǎn)或者固態(tài)硬盤節(jié)點(diǎn),所述其他類型存儲(chǔ)節(jié)點(diǎn)包括SAS/SATA硬盤節(jié)點(diǎn)。
8.一種分布式鍵-值查詢方法,其特征在于,包括:
接收客戶端指向當(dāng)前代理節(jié)點(diǎn)的包括目標(biāo)KEY的請求;
當(dāng)前代理節(jié)點(diǎn)通過查詢?nèi)致酚杀硇畔ⅲ瑢⒖蛻舳苏埱筠D(zhuǎn)發(fā)給相應(yīng)的存儲(chǔ)節(jié)點(diǎn);
當(dāng)前代理節(jié)點(diǎn)將相應(yīng)存儲(chǔ)節(jié)點(diǎn)返回的包括目標(biāo)Value的回應(yīng)包傳送給客戶端。
9.如權(quán)利要求8所述的方法,其特征在于,還包括:
當(dāng)前代理節(jié)點(diǎn)通過異步線程將維護(hù)在服務(wù)器上的全局路由表信息同步至本地,在本地進(jìn)行對(duì)全局路由表信息的查詢。
10.如權(quán)利要求8所述的方法,其特征在于,還包括:
當(dāng)收到路由表更新通知時(shí),獲取新的全局路由表信息。
11.如權(quán)利要求8所述的方法,其特征在于,所述當(dāng)前代理節(jié)點(diǎn)通過查詢?nèi)致酚杀硇畔ⅲ瑢⒖蛻舳苏埱筠D(zhuǎn)發(fā)給相應(yīng)的存儲(chǔ)節(jié)點(diǎn)的過程具體包括:
基于所接收的包括目標(biāo)KEY的客戶端請求,通過哈希算法計(jì)算目標(biāo)KEY所在的數(shù)據(jù)區(qū)塊;
依據(jù)計(jì)算得到的目標(biāo)KEY所在的數(shù)據(jù)區(qū)塊標(biāo)識(shí),查詢所述全局路由表信息,定位相應(yīng)的存儲(chǔ)節(jié)點(diǎn);
將客戶端請求轉(zhuǎn)發(fā)給相應(yīng)的存儲(chǔ)節(jié)點(diǎn)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京奇虎科技有限公司,未經(jīng)北京奇虎科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110460494.8/1.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ù)庫復(fù)合查詢系統(tǒng)及方法
- 數(shù)據(jù)庫查詢的方法和系統(tǒng)
- 查詢系統(tǒng)、查詢終端以及查詢方法
- 交易信息查詢方法、查詢裝置及查詢系統(tǒng)
- 數(shù)據(jù)查詢與結(jié)果生成方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)
- 在RDF數(shù)據(jù)集上進(jìn)行OPTIONAL查詢的方法及存儲(chǔ)介質(zhì)
- 一種多表關(guān)聯(lián)查詢方法、裝置及設(shè)備
- 一種基于Impala的查詢方法和裝置
- 從查詢生成子查詢
- 一種基于通用查詢語言的查詢方法及查詢系統(tǒng)
- 一種數(shù)據(jù)庫讀寫分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測試終端的測試方法
- 一種服裝用人體測量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





