一種數(shù)據(jù)查詢方法及裝置制造方法
【專利摘要】本發(fā)明公開了一種數(shù)據(jù)查詢方法,應(yīng)用在分布式數(shù)據(jù)查詢系統(tǒng)中,增加至少一個輔助節(jié)點,包括:輔助節(jié)點接收任一子節(jié)點根據(jù)觸發(fā)指令發(fā)來的各子節(jié)點中存儲的第一數(shù)據(jù),針對接收到的任一子節(jié)點發(fā)來的第一數(shù)據(jù),執(zhí)行下述操作:按照管理節(jié)點發(fā)來的查詢關(guān)鍵詞對接收到的第一數(shù)據(jù)進行過濾,確定出該第一數(shù)據(jù)中包含第二分布鍵的第三數(shù)據(jù);輔助節(jié)點將第三數(shù)據(jù)重新分發(fā)給對應(yīng)的發(fā)送第一數(shù)據(jù)的子節(jié)點,各子節(jié)點對接收到的第三數(shù)據(jù)按照第二數(shù)據(jù)格式進行關(guān)聯(lián)操作,將關(guān)聯(lián)結(jié)果作為與查詢關(guān)鍵詞對應(yīng)的查詢結(jié)果反饋給管理節(jié)點。能夠較好地解決數(shù)據(jù)查詢過程中資源的耗用,提高系統(tǒng)運行效率,減少數(shù)據(jù)查詢的響應(yīng)時間。
【專利說明】一種數(shù)據(jù)查詢方法及裝置
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及數(shù)據(jù)信息管理【技術(shù)領(lǐng)域】,尤其是涉及一種數(shù)據(jù)查詢方法及裝置。
【背景技術(shù)】
[0002] 數(shù)據(jù)庫服務(wù)器是按照數(shù)據(jù)結(jié)構(gòu)來組織、存儲和管理數(shù)據(jù)的倉庫,在經(jīng)濟管理的日 常工作中,常常需要把某些相關(guān)的數(shù)據(jù)存儲到數(shù)據(jù)庫服務(wù)器中,并根據(jù)管理的需要進行相 應(yīng)的處理。
[0003] 將數(shù)據(jù)存儲在數(shù)據(jù)庫中是常用的數(shù)據(jù)管理方法?,F(xiàn)有技術(shù)中,通常將不同領(lǐng)域的 數(shù)據(jù)存儲到不同的數(shù)據(jù)庫服務(wù)器中,不同的數(shù)據(jù)庫服務(wù)器組成分布式數(shù)據(jù)管理系統(tǒng),如圖1 所示,分布式數(shù)據(jù)管理系統(tǒng)中包含至少一個管理節(jié)點,至少一個數(shù)據(jù)存儲子節(jié)點,任一一個 管理節(jié)點可以和任一一個子節(jié)點之間進行通信,任一兩個子節(jié)點之間也可以進行通信。管 理節(jié)點中包含全局優(yōu)化查詢器,全局優(yōu)化查詢器將各個數(shù)據(jù)表按照某種規(guī)則(例如按照各 數(shù)據(jù)表特定屬性域的哈希值或時間段等)進行分區(qū)或分片,將數(shù)據(jù)分布存儲在多個不同的 子節(jié)點中,使每一個子節(jié)點中存儲的數(shù)據(jù)量得到均衡分配,每個子節(jié)點可以根據(jù)全局優(yōu)化 查詢器的指令管理和操作自身的存儲的數(shù)據(jù)。這樣可以在執(zhí)行復(fù)雜的數(shù)據(jù)查詢時,縮短執(zhí) 行數(shù)據(jù)查詢時需要的時間,并且通過并行處理來提高數(shù)據(jù)查詢性能。由于數(shù)據(jù)庫中涵蓋的 事實表種類比較多,因此在各個子節(jié)點中存儲的數(shù)據(jù)中,各個表作為分布鍵的列定義也不 完全相同。不同的子節(jié)點支持不同的分布鍵的列定義,其中,分布鍵的列定義在創(chuàng)建數(shù)據(jù)庫 時指定,在創(chuàng)建完成后通常不能更改。而且不同子節(jié)點間不能支持分布鍵的轉(zhuǎn)碼,因此若想 查找某一客戶的所有相關(guān)數(shù)據(jù),則需要在多個子節(jié)點中分別進行查詢。例如在通信領(lǐng)域中, 可以將客戶信息作為分布鍵存儲到子節(jié)點1中,也可以將客戶的訂單號作為分布鍵存儲到 子節(jié)點2中,將客戶的歸屬地信息作為分布鍵存儲到子節(jié)點3中。
[0004] 在分布式數(shù)據(jù)管理系統(tǒng)中,進行數(shù)據(jù)查詢統(tǒng)計時,有關(guān)聯(lián)的相關(guān)數(shù)據(jù)如果定義的 存儲方式(與定義的分布鍵相關(guān))相同,相關(guān)聯(lián)數(shù)據(jù)就會在同節(jié)點內(nèi)部進行關(guān)聯(lián),從而能夠 較好提高數(shù)據(jù)查詢效率。這樣在進行簡單的數(shù)據(jù)查詢時,以本地方式在數(shù)據(jù)所在的子節(jié)點 中執(zhí)行,在該子節(jié)點內(nèi)完成關(guān)聯(lián)操作后只需把關(guān)聯(lián)操作后的結(jié)果發(fā)送至管理節(jié)點,可以較 好地提高數(shù)據(jù)庫分區(qū)間連接效率,進而提高數(shù)據(jù)查詢效率。但是在具體實施時,數(shù)據(jù)查詢一 般是比較復(fù)雜的數(shù)據(jù)查詢?nèi)蝿?wù),該種情況下,數(shù)據(jù)一般分布在不同的子節(jié)點中存儲,該種數(shù) 據(jù)查詢方式下,則無法選擇使用子節(jié)點內(nèi)的關(guān)聯(lián)連接方式,而是選擇交叉關(guān)聯(lián)的連接方式, 每個子節(jié)點存儲的數(shù)據(jù)都會被重新分布傳送到其他的子節(jié)點,然后重新進行關(guān)聯(lián),再將關(guān) 聯(lián)結(jié)果傳輸給管理節(jié)點。
[0005] 以當(dāng)前的分布式數(shù)據(jù)查詢系統(tǒng)為例,對涉及不同的事實表關(guān)聯(lián)的查詢語句的處理 流程如圖2所示,具體處理過程如下述:
[0006] 步驟11,用戶登錄客戶端,連接數(shù)據(jù)庫,發(fā)出數(shù)據(jù)查詢命令。
[0007] 步驟12,全局優(yōu)化查詢器接收到數(shù)據(jù)查詢命令,并對數(shù)據(jù)查詢命令進行解析,生成 數(shù)據(jù)查詢計劃。
[0008] 步驟13,全局優(yōu)化查詢器將生成的數(shù)據(jù)查詢計劃分發(fā)到每個子節(jié)點。
[0009] 步驟14,每個子節(jié)點在接收到數(shù)據(jù)查詢計劃后,進行數(shù)據(jù)查詢。
[0010] 針對任一子節(jié)點,該子節(jié)點對于接收到的數(shù)據(jù)查詢計劃,進行哈希運算,根據(jù)哈希 運算得到的結(jié)果,如果兩個數(shù)據(jù)的關(guān)聯(lián)字段在相同的子節(jié)點,則跳過本步驟14。如果兩個數(shù) 據(jù)未存儲在相同子節(jié)點,則每個子節(jié)點均根據(jù)對象統(tǒng)計信息把自身存儲的相關(guān)數(shù)據(jù)發(fā)散到 其他相應(yīng)子節(jié)點的臨時緩存或臨時表空間中。
[0011] 步驟15,在每個存儲數(shù)據(jù)的子節(jié)點內(nèi),以待查詢的數(shù)據(jù)為主,將接收的數(shù)據(jù)執(zhí)行關(guān) 聯(lián)操作。
[0012] 步驟16,每個子節(jié)點將得到的關(guān)聯(lián)結(jié)果發(fā)送給全局優(yōu)化查詢器。
[0013] 步驟17,全局優(yōu)化查詢器將關(guān)聯(lián)結(jié)果整理合并后,將查詢到的數(shù)據(jù)返回給客戶端, 呈現(xiàn)給用戶。
[0014] 需要說明的是,上述數(shù)據(jù)查詢過程中,存儲數(shù)據(jù)的節(jié)點間的交互僅以一個子節(jié)點 為例進行詳細(xì)闡述的,實際運行中,每個子節(jié)點都需要進行相同的交互操作過程。
[0015] 由上述數(shù)據(jù)查詢處理流程可知,在進行復(fù)雜的數(shù)據(jù)查詢工作時,由于各個子節(jié)點 中存儲數(shù)據(jù)的方式不同,該種情況下全局優(yōu)化查詢器選擇交叉關(guān)聯(lián)連接方式,該種方式下, 子節(jié)點間大量的交叉數(shù)據(jù)分發(fā)和通信,增加 CPU、網(wǎng)絡(luò)和內(nèi)存等資源的耗用,使系統(tǒng)運行效 率降低,數(shù)據(jù)查詢的響應(yīng)時間增加。
【發(fā)明內(nèi)容】
[0016] 本發(fā)明實施例提供了一種數(shù)據(jù)查詢方法及裝置,能夠較好地解決數(shù)據(jù)查詢過程中 資源的耗用,提高系統(tǒng)運行效率,減少數(shù)據(jù)查詢的響應(yīng)時間。
[0017] -種數(shù)據(jù)查詢方法,應(yīng)用在分布式數(shù)據(jù)查詢系統(tǒng)中,所述分布式數(shù)據(jù)查詢系統(tǒng)包 含至少一個管理節(jié)點和至少一個子節(jié)點,還包含至少一個輔助節(jié)點,所述方法包括:輔助節(jié) 點接收任一子節(jié)點根據(jù)觸發(fā)指令發(fā)來的各子節(jié)點中存儲的第一數(shù)據(jù),其中所述觸發(fā)指令是 管理節(jié)點在確定出和輸入的查詢關(guān)鍵詞對應(yīng)的第二數(shù)據(jù)未存儲在同一子節(jié)點中時向各子 節(jié)點發(fā)送的,指示各子節(jié)點向輔助節(jié)點發(fā)送包含查詢關(guān)鍵詞的第一數(shù)據(jù),所述第一數(shù)據(jù)至 少是包含第一分布鍵的一組數(shù)據(jù),所述第二數(shù)據(jù)是包含第二分布鍵的一組數(shù)據(jù),第一分布 鍵和第二分布鍵不相同;針對接收到的任一子節(jié)點發(fā)來的第一數(shù)據(jù),執(zhí)行下述操作:按照 管理節(jié)點發(fā)來的查詢關(guān)鍵詞對接收到的第一數(shù)據(jù)進行過濾,確定出該第一數(shù)據(jù)中包含第二 分布鍵的第三數(shù)據(jù);輔助節(jié)點將第三數(shù)據(jù)重新分發(fā)給對應(yīng)的發(fā)送第一數(shù)據(jù)的子節(jié)點,各子 節(jié)點對接收到的第三數(shù)據(jù)按照第二數(shù)據(jù)格式進行關(guān)聯(lián)操作,將關(guān)聯(lián)結(jié)果作為與查詢關(guān)鍵詞 對應(yīng)的查詢結(jié)果反饋給管理節(jié)點。
[0018] 一種數(shù)據(jù)查詢裝置,應(yīng)用在分布式數(shù)據(jù)查詢系統(tǒng)中,所述分布式數(shù)據(jù)查詢系統(tǒng)包 含至少一個管理節(jié)點和至少一個子節(jié)點,還包含至少一個輔助節(jié)點,所述數(shù)據(jù)查詢裝置包 括:接收單元,用于接收任一子節(jié)點根據(jù)觸發(fā)指令發(fā)來的各子節(jié)點中存儲的第一數(shù)據(jù),其中 所述觸發(fā)指令是管理節(jié)點在確定出和輸入的查詢關(guān)鍵詞對應(yīng)的第二數(shù)據(jù)未存儲在同一子 節(jié)點中時向各子節(jié)點發(fā)送的,指示各子節(jié)點向輔助節(jié)點發(fā)送包含查詢關(guān)鍵詞的第一數(shù)據(jù), 所述第一數(shù)據(jù)至少是包含第一分布鍵的一組數(shù)據(jù),所述第二數(shù)據(jù)是包含第二分布鍵的一組 數(shù)據(jù),第一分布鍵和第二分布鍵不相同;確定單元,用于針對接收到的任一子節(jié)點發(fā)來的第 一數(shù)據(jù),執(zhí)行下述操作:按照管理節(jié)點發(fā)來的查詢關(guān)鍵詞對接收到的第一數(shù)據(jù)進行過濾,確 定出該第一數(shù)據(jù)中包含第二分布鍵的第三數(shù)據(jù);發(fā)送單元,用于將第三數(shù)據(jù)重新分發(fā)給對 應(yīng)的發(fā)送第一數(shù)據(jù)的子節(jié)點,各子節(jié)點對接收到的第三數(shù)據(jù)按照第二數(shù)據(jù)格式進行關(guān)聯(lián)操 作,將關(guān)聯(lián)結(jié)果作為與查詢關(guān)鍵詞對應(yīng)的查詢結(jié)果反饋給管理節(jié)點。
[0019] 采用上述技術(shù)方案,在現(xiàn)有技術(shù)中提出的分布式數(shù)據(jù)系統(tǒng)架構(gòu)下,增加了至少一 個輔助節(jié)點,在進行數(shù)據(jù)查詢時,分布式數(shù)據(jù)查詢系統(tǒng)中的各子節(jié)點首先與輔助節(jié)點進行 交互。然后輔助節(jié)點再和每個子節(jié)點分別進行交互,以實現(xiàn)數(shù)據(jù)查詢的目的,這樣,各子節(jié) 點之間并不進行數(shù)據(jù)交互,能夠較好地解決數(shù)據(jù)查詢過程中資源的耗用,提高系統(tǒng)運行效 率,減少數(shù)據(jù)查詢的響應(yīng)時間。
【專利附圖】
【附圖說明】
[0020] 圖1為現(xiàn)有技術(shù)中,提出的分布式數(shù)據(jù)存儲系統(tǒng)結(jié)構(gòu)組成示意圖;
[0021] 圖2為現(xiàn)有技術(shù)中,提出的分布式數(shù)據(jù)存儲系統(tǒng)中數(shù)據(jù)獲取方法流程圖;
[0022] 圖3為本發(fā)明實施例中,提出的分布式數(shù)據(jù)存儲系統(tǒng)結(jié)構(gòu)組成示意圖;
[0023] 圖4為本發(fā)明實施例中,提出的分布式數(shù)據(jù)存儲系統(tǒng)中數(shù)據(jù)獲取方法流程圖;
[0024] 圖5為本發(fā)明實施例中,提出的數(shù)據(jù)查詢裝置結(jié)構(gòu)組成示意圖。
【具體實施方式】
[0025] 針對現(xiàn)有技術(shù)中存在的在分布式數(shù)據(jù)查詢系統(tǒng)中,在進行復(fù)雜的數(shù)據(jù)查詢工作 時,由于各個子節(jié)點中存儲數(shù)據(jù)的方式不同,該種情況下全局優(yōu)化查詢器選擇交叉關(guān)聯(lián)連 接方式,該種方式下,子節(jié)點間大量的交叉數(shù)據(jù)分發(fā)和通信,增加CPU、網(wǎng)絡(luò)和內(nèi)存等資源的 耗用,使系統(tǒng)運行效率降低,數(shù)據(jù)查詢的響應(yīng)時間增加的問題,本發(fā)明實施例這里提出的技 術(shù)方案中,在現(xiàn)有技術(shù)中提出的分布式數(shù)據(jù)系統(tǒng)架構(gòu)下,增加了輔助節(jié)點,在進行數(shù)據(jù)查詢 時,分布式數(shù)據(jù)查詢系統(tǒng)中的各子節(jié)點首先與輔助節(jié)點進行交互。然后輔助節(jié)點再分別和 每個子節(jié)點進行交互,以實現(xiàn)數(shù)據(jù)查詢的目的,這樣,各子節(jié)點之間并不進行數(shù)據(jù)交互,能 夠較好地解決數(shù)據(jù)查詢過程中資源的耗用,提高系統(tǒng)運行效率,減少數(shù)據(jù)查詢的響應(yīng)時間。
[0026] 下面將結(jié)合各個附圖對本發(fā)明實施例技術(shù)方案的主要實現(xiàn)原理、【具體實施方式】及 其對應(yīng)能夠達到的有益效果進行詳細(xì)地闡述。
[0027] 本發(fā)明實施例這里提出一種分布式數(shù)據(jù)查詢系統(tǒng),如圖3所示,本發(fā)明實施例這 里提出的分布式數(shù)據(jù)查詢系統(tǒng)包含至少一個管理節(jié)點,至少一個子節(jié)點和至少一個輔助節(jié) 點。
[0028] 其中,管理節(jié)點和任一子節(jié)點之間可以進行數(shù)據(jù)通信,在分布式數(shù)據(jù)查詢系統(tǒng)中, 任一兩個子節(jié)點之間也可以進行數(shù)據(jù)通信,管理節(jié)點和輔助節(jié)點之間可以進行數(shù)據(jù)通信, 任一輔助節(jié)點可以和任一子節(jié)點之間進行數(shù)據(jù)通信。在進行數(shù)據(jù)查詢時,分布式數(shù)據(jù)查詢 系統(tǒng)中還可以包括全局優(yōu)化查詢器。全局優(yōu)化查詢器可以單獨設(shè)置,也可以設(shè)置在管理節(jié) 點中。一種較佳地實現(xiàn)方式,本發(fā)明實施例這里提出的技術(shù)方案中,是基于現(xiàn)有技術(shù)中數(shù)據(jù) 查詢系統(tǒng)的升級,僅在原系統(tǒng)架構(gòu)加增加輔助節(jié)點,全局優(yōu)化查詢器則和現(xiàn)有技術(shù)相同,設(shè) 置在管理節(jié)點中。這樣可以較好地保證對原系統(tǒng)架構(gòu)做出較小的改動,節(jié)省數(shù)據(jù)查詢系統(tǒng) 的改造成本。
[0029] 輔助節(jié)點可以通過高速網(wǎng)絡(luò)技術(shù)實現(xiàn)和其他子節(jié)點之間的高速互聯(lián)互通。高速網(wǎng) 絡(luò)如萬兆網(wǎng)卡、無限帶寬(infinband)等。輔助節(jié)點的主要功能包括數(shù)據(jù)中轉(zhuǎn)和在分發(fā)等, 因此可以為輔助節(jié)點配置較高性能的存儲區(qū)和緩沖池,高速網(wǎng)絡(luò)通訊鏈路,這樣可以使得 輔助節(jié)點執(zhí)行的存、取操作具有較高的性能。
[0030] 在進行數(shù)據(jù)查詢時,管理節(jié)點接收用戶通過管理節(jié)點發(fā)出的查詢關(guān)鍵詞,在確定 出和查詢關(guān)鍵詞對應(yīng)的數(shù)據(jù)未存儲在同一子節(jié)點中時,輔助節(jié)點接收任一子節(jié)點根據(jù)觸發(fā) 指令發(fā)來的各子節(jié)點中存儲的第一數(shù)據(jù),其中觸發(fā)指令是管理節(jié)點在確定出和輸入的查詢 關(guān)鍵詞對應(yīng)的第二數(shù)據(jù)未存儲在同一子節(jié)點中時向各子節(jié)點發(fā)送的,指示各子節(jié)點向輔助 節(jié)點發(fā)送包含查詢關(guān)鍵詞的第一數(shù)據(jù),所述第一數(shù)據(jù)至少是包含第一分布鍵的一組數(shù)據(jù), 所述第二數(shù)據(jù)是包含第二分布鍵的一組數(shù)據(jù),第一分布鍵和第二分布鍵不相同;針對接收 到的任一子節(jié)點發(fā)來的第一數(shù)據(jù),執(zhí)行下述操作:按照管理節(jié)點發(fā)來的查詢關(guān)鍵詞對接收 到的第一數(shù)據(jù)進行過濾,確定出該第一數(shù)據(jù)中包含第二分布鍵的第三數(shù)據(jù);輔助節(jié)點將第 三數(shù)據(jù)重新分發(fā)給對應(yīng)的發(fā)送第一數(shù)據(jù)的子節(jié)點,各子節(jié)點對接收到的第三數(shù)據(jù)按照第二 數(shù)據(jù)格式進行關(guān)聯(lián)操作,將關(guān)聯(lián)結(jié)果作為與查詢關(guān)鍵詞對應(yīng)的查詢結(jié)果反饋給管理節(jié)點。
[0031] 在分布式數(shù)據(jù)查詢系統(tǒng)中,數(shù)據(jù)在存儲時,可以按照表格的形式來存儲。數(shù)據(jù)庫中 存儲的表格可以根據(jù)定義的分布鍵散列后均勻分布在不同的子節(jié)點中。由于數(shù)據(jù)的種類比 較多,因此在各個子節(jié)點中,存儲的表格的分布鍵的列定義也不完全相同。例如,在通信系 統(tǒng)中,以話單數(shù)據(jù)為例,在子節(jié)點1中存儲的數(shù)據(jù)表,如表1所示,其分布鍵定義可以是用戶 的終端號碼。在子節(jié)點2中存儲的數(shù)據(jù)表,如表2所示,其分布鍵定義可以是用戶的身份標(biāo) 識。分布鍵可以作為唯一標(biāo)識各子節(jié)點存儲的數(shù)據(jù)表。
[0032] 表 1
【權(quán)利要求】
1. 一種數(shù)據(jù)查詢方法,應(yīng)用在分布式數(shù)據(jù)查詢系統(tǒng)中,其特征在于,所述分布式數(shù)據(jù)查 詢系統(tǒng)包含至少一個管理節(jié)點和至少一個子節(jié)點,還包含至少一個輔助節(jié)點,所述方法包 括: 輔助節(jié)點接收任一子節(jié)點根據(jù)觸發(fā)指令發(fā)來的各子節(jié)點中存儲的第一數(shù)據(jù),其中所 述觸發(fā)指令是管理節(jié)點在確定出和輸入的查詢關(guān)鍵詞對應(yīng)的第二數(shù)據(jù)未存儲在同一子節(jié) 點中時向各子節(jié)點發(fā)送的,指示各子節(jié)點向輔助節(jié)點發(fā)送包含查詢關(guān)鍵詞的第一數(shù)據(jù),所 述第一數(shù)據(jù)至少是包含第一分布鍵的一組數(shù)據(jù),所述第二數(shù)據(jù)是包含第二分布鍵的一組數(shù) 據(jù),第一分布鍵和第二分布鍵不相同; 針對接收到的任一子節(jié)點發(fā)來的第一數(shù)據(jù),執(zhí)行下述操作:按照管理節(jié)點發(fā)來的查詢 關(guān)鍵詞對接收到的第一數(shù)據(jù)進行過濾,確定出該第一數(shù)據(jù)中包含第二分布鍵的第三數(shù)據(jù); 輔助節(jié)點將第三數(shù)據(jù)重新分發(fā)給對應(yīng)的發(fā)送第一數(shù)據(jù)的子節(jié)點,各子節(jié)點對接收到的 第三數(shù)據(jù)按照第二數(shù)據(jù)格式進行關(guān)聯(lián)操作,將關(guān)聯(lián)結(jié)果作為與查詢關(guān)鍵詞對應(yīng)的查詢結(jié)果 反饋給管理節(jié)點。
2. 如權(quán)利要求1所述的方法,其特征在于,按照管理節(jié)點發(fā)來的查詢關(guān)鍵詞對接收到 的第一數(shù)據(jù)進行過濾,確定出第一數(shù)據(jù)中包含第二分布鍵的第三數(shù)據(jù),包括: 輔助節(jié)點在接收到的第一數(shù)據(jù)中,按照管理節(jié)點發(fā)來的查詢關(guān)鍵詞,確定符合第二分 布鍵的分布列數(shù)據(jù);以及 根據(jù)查詢關(guān)鍵詞,確定所述分布列數(shù)據(jù)在接收到的第一數(shù)據(jù)中對應(yīng)的分布行數(shù)據(jù); 將確定出分布列數(shù)據(jù)和分布行數(shù)據(jù)進行哈希運算后生成第三數(shù)據(jù)。
3. 如權(quán)利要求1所述的方法,其特征在于,輔助節(jié)點將第三數(shù)據(jù)重新分發(fā)給對應(yīng)的發(fā) 送第一數(shù)據(jù)的子節(jié)點,包括: 輔助節(jié)點將確定出的第三數(shù)據(jù)對應(yīng)各子節(jié)點存儲在自身的緩存池中; 基于分級緩存處理的方式,將緩存池中存儲的第三數(shù)據(jù)重新分發(fā)給對應(yīng)的發(fā)送第一數(shù) 據(jù)的子節(jié)點。
4. 如權(quán)利要求3所述的方法,其特征在于,在將緩存池中存儲的第三數(shù)據(jù)重新分發(fā)給 對應(yīng)的發(fā)送第一數(shù)據(jù)的子節(jié)點之后,還包括: 在確定出緩存池中存儲的分發(fā)完成的第三數(shù)據(jù)的數(shù)量大于預(yù)設(shè)閾值時,將分發(fā)完成的 第三數(shù)據(jù)清除;或 在確定出緩存池存儲空間小于待存儲的第三數(shù)據(jù)的容量時,將緩存池中存儲的分發(fā)完 成的第三數(shù)據(jù)清除。
5. 如權(quán)利要求1所述的方法,其特征在于,在輔助節(jié)點將第三數(shù)據(jù)重新分發(fā)給對應(yīng)的 發(fā)送第一數(shù)據(jù)的子節(jié)點之后,還包括: 輔助節(jié)點在各子節(jié)點中保存的日志信息中,確定已分發(fā)完成的第三數(shù)據(jù)的日志信息; 輔助節(jié)點將獲得的已分發(fā)完成的第三數(shù)據(jù)的日志信息存儲在緩存池中的日志更新隊 列中。
6. -種數(shù)據(jù)查詢裝置,應(yīng)用在分布式數(shù)據(jù)查詢系統(tǒng)中,其特征在于,所述分布式數(shù)據(jù)查 詢系統(tǒng)包含至少一個管理節(jié)點和至少一個子節(jié)點,還包含至少一個輔助節(jié)點,所述裝置包 括: 接收單元,用于接收任一子節(jié)點根據(jù)觸發(fā)指令發(fā)來的各子節(jié)點中存儲的第一數(shù)據(jù),其 中所述觸發(fā)指令是管理節(jié)點在確定出和輸入的查詢關(guān)鍵詞對應(yīng)的第二數(shù)據(jù)未存儲在同一 子節(jié)點中時向各子節(jié)點發(fā)送的,指示各子節(jié)點向輔助節(jié)點發(fā)送包含查詢關(guān)鍵詞的第一數(shù) 據(jù),所述第一數(shù)據(jù)至少是包含第一分布鍵的一組數(shù)據(jù),所述第二數(shù)據(jù)是包含第二分布鍵的 一組數(shù)據(jù),第一分布鍵和第二分布鍵不相同; 確定單元,用于針對接收到的任一子節(jié)點發(fā)來的第一數(shù)據(jù),執(zhí)行下述操作:按照管理節(jié) 點發(fā)來的查詢關(guān)鍵詞對接收到的第一數(shù)據(jù)進行過濾,確定出該第一數(shù)據(jù)中包含第二分布鍵 的第三數(shù)據(jù); 發(fā)送單元,用于將第三數(shù)據(jù)重新分發(fā)給對應(yīng)的發(fā)送第一數(shù)據(jù)的子節(jié)點,各子節(jié)點對接 收到的第三數(shù)據(jù)按照第二數(shù)據(jù)格式進行關(guān)聯(lián)操作,將關(guān)聯(lián)結(jié)果作為與查詢關(guān)鍵詞對應(yīng)的查 詢結(jié)果反饋給管理節(jié)點。
7. 如權(quán)利要求6所述的裝置,其特征在于,所述確定單元,具體用于在接收到的第一數(shù) 據(jù)中,按照管理節(jié)點發(fā)來的查詢關(guān)鍵詞,確定符合第二分布鍵的分布列數(shù)據(jù);以及根據(jù)查詢 關(guān)鍵詞,確定所述分布列數(shù)據(jù)在接收到的第一數(shù)據(jù)中對應(yīng)的分布行數(shù)據(jù);將確定出分布列 數(shù)據(jù)和分布行數(shù)據(jù)進行哈希運算后生成第三數(shù)據(jù)。
8. 如權(quán)利要求6所述的裝置,其特征在于,所述發(fā)送單元,具體用于將確定出的第三數(shù) 據(jù)對應(yīng)各子節(jié)點存儲在自身的緩存池中;基于分級緩存處理的方式,將緩存池中存儲的第 三數(shù)據(jù)重新分發(fā)給對應(yīng)的發(fā)送第一數(shù)據(jù)的子節(jié)點。
9. 如權(quán)利要求8所述的裝置,其特征在于,還包括: 清除單元,用于在確定出緩存池中存儲的分發(fā)完成的第三數(shù)據(jù)的數(shù)量大于預(yù)設(shè)閾值 時,將分發(fā)完成的第三數(shù)據(jù)清除;或在確定出緩存池存儲空間小于待存儲的第三數(shù)據(jù)的容 量時,將緩存池中存儲的分發(fā)完成的第三數(shù)據(jù)清除。
10. 如權(quán)利要求6所述的裝置,其特征在于,所述確定單元,還用于在各子節(jié)點中保存 的日志信息中,確定已分發(fā)完成的第三數(shù)據(jù)的日志信息;將獲得的已分發(fā)完成的第三數(shù)據(jù) 的日志信息存儲在緩存池中的日志更新隊列中。
【文檔編號】G06F17/30GK104111958SQ201310141150
【公開日】2014年10月22日 申請日期:2013年4月22日 優(yōu)先權(quán)日:2013年4月22日
【發(fā)明者】朱祥磊 申請人:中國移動通信集團山東有限公司