較簡單,相關之處參見方法實施例的部分說明即可。
[0116]以上所述僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換、改進等,均包含在本發(fā)明的保護范圍內(nèi)。
【主權項】
1.一種數(shù)據(jù)查詢方法,其特征在于,包括: 在接收到針對于分布式數(shù)據(jù)庫的目標數(shù)據(jù)查詢請求后,基于所述目標數(shù)據(jù)查詢請求所對應的數(shù)據(jù)查詢范圍,確定所述目標數(shù)據(jù)查詢請求所針對的至少一個目標分片數(shù)據(jù)庫;其中,所述分布式數(shù)據(jù)庫的數(shù)據(jù)通過至少兩個分片數(shù)據(jù)庫進行存儲,每一分片數(shù)據(jù)庫包括至少兩個子數(shù)據(jù)庫; 生成針對于所述至少一個目標分片數(shù)據(jù)庫的一級數(shù)據(jù)查詢請求;其中,所述一級數(shù)據(jù)查詢請求與目標分片數(shù)據(jù)庫具有唯一對應性,各個一級數(shù)據(jù)查詢請求所針對的總的數(shù)據(jù)查詢范圍與所述目標數(shù)據(jù)查詢請求所針對的數(shù)據(jù)查詢范圍相同; 判斷所述目標數(shù)據(jù)查詢請求是否符合預設拆分條件,如果是,生成各個一級數(shù)據(jù)查詢請求所對應的二級數(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ù)據(jù)庫所在的節(jié)點,以使得所述節(jié)點基于所接收到的二級數(shù)據(jù)查詢請求對相應的子數(shù)據(jù)庫進行查詢處理,并將查詢結果進行反饋處理; 在接收到各個二級數(shù)據(jù)查詢請求所對應的查詢結果后,匯總所述查詢結果; 將匯總后的查詢結果作為所述目標數(shù)據(jù)查詢請求的目標查詢結果。
2.根據(jù)權利要求1所述的方法,其特征在于,所述判斷所述目標數(shù)據(jù)查詢請求是否符合預設拆分條件,包括: 判斷所述目標數(shù)據(jù)查詢請求是否攜帶預設查詢命令,如果是,表明所述目標數(shù)據(jù)查詢請求符合預設拆分條件。
3.根據(jù)權利要求2所述的方法,其特征在于,所述預設查詢命令,包括: 表明匹配或累加的查詢命令。
4.根據(jù)權利要求1所述的方法,其特征在于,所述生成各個一級數(shù)據(jù)查詢請求所對應的二級數(shù)據(jù)查詢請求,包括: 確定各個一級查詢請求所對應的目標分片數(shù)據(jù)庫的子數(shù)據(jù)庫的數(shù)量; 將各個一級數(shù)據(jù)查詢請求拆分為所對應子數(shù)據(jù)庫的數(shù)量的二級數(shù)據(jù)查詢請求。
5.根據(jù)權利要求1所述的方法,其特征在于,所述生成各個一級數(shù)據(jù)查詢請求所對應的二級數(shù)據(jù)查詢請求,包括: 獲得各個一級數(shù)據(jù)查詢請求所對應的目標分片數(shù)據(jù)庫的允許拆分數(shù)量; 將各個一級數(shù)據(jù)查詢請求拆分為所對應允許拆分數(shù)量的二級數(shù)據(jù)查詢請求。
6.根據(jù)權利要求1-5任意一項所述的方法,其特征在于,還包括: 當判斷出所述目標數(shù)據(jù)查詢請求不符合預設拆分條件時,將各個一級數(shù)據(jù)查詢請求發(fā)送給相對應目標分片數(shù)據(jù)庫所在的節(jié)點,以使得所述節(jié)點基于所接收到的一級數(shù)據(jù)查詢請求對相應的目標分片數(shù)據(jù)庫進行查詢處理,并將查詢結果進行反饋處理; 在接收到各個一級數(shù)據(jù)查詢請求所對應的查詢結果后,匯總所述查詢結果; 將匯總后的查詢結果作為所述目標數(shù)據(jù)查詢請求的目標查詢結果。
7.一種數(shù)據(jù)查詢裝置,其特征在于,包括: 目標分片數(shù)據(jù)庫確定模塊,用于在接收到針對于分布式數(shù)據(jù)庫的目標數(shù)據(jù)查詢請求后,基于所述目標數(shù)據(jù)查詢請求所對應的數(shù)據(jù)查詢范圍,確定所述目標數(shù)據(jù)查詢請求所針對的至少一個目標分片數(shù)據(jù)庫;其中,所述分布式數(shù)據(jù)庫的數(shù)據(jù)通過至少兩個分片數(shù)據(jù)庫進行存儲,每一分片數(shù)據(jù)庫包括至少兩個子數(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ù)據(jù)查詢請求生成模塊,用于生成各個一級數(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ù)據(jù)查詢請求發(fā)送給該一級數(shù)據(jù)查詢請求所對應目標分片數(shù)據(jù)庫所在的節(jié)點,以使得所述節(jié)點基于所接收到的二級數(shù)據(jù)查詢請求對相應的子數(shù)據(jù)庫進行查詢處理,并將查詢結果進行反饋處理; 第一查詢結果匯總模塊,用于在接收到各個二級數(shù)據(jù)查詢請求所對應的查詢結果后,匯總所述查詢結果; 第一目標查詢結果確定模塊,用于將匯總后的查詢結果作為所述目標數(shù)據(jù)查詢請求的目標查詢結果。
8.根據(jù)權利要求7所述的裝置,其特征在于,所述判斷處理模塊具體用于判斷所述目標數(shù)據(jù)查詢請求是否攜帶預設查詢命令,如果是,觸發(fā)二級數(shù)據(jù)查詢請求生成模塊。
9.根據(jù)權利要求8所述的裝置,其特征在于,所述預設查詢命令,包括: 表明匹配或累加的查詢命令。
10.根據(jù)權利要求7所述的裝置,其特征在于,所述二級數(shù)據(jù)查詢請求生成模塊,包括: 第一拆分數(shù)量確定單元,用于確定各個一級查詢請求所對應的目標分片數(shù)據(jù)庫的子數(shù)據(jù)庫的數(shù)量; 第一請求拆分單元,用于將各個一級數(shù)據(jù)查詢請求拆分為所對應子數(shù)據(jù)庫的數(shù)量的二級數(shù)據(jù)查詢請求。
11.根據(jù)權利要求7所述的裝置,其特征在于,所述二級數(shù)據(jù)查詢請求生成模塊,包括: 第二拆分數(shù)量確定單元,用于獲得各個一級數(shù)據(jù)查詢請求所對應的目標分片數(shù)據(jù)庫的允許拆分數(shù)量; 第二請求拆分單元,用于將各個一級數(shù)據(jù)查詢請求拆分為所對應允許拆分數(shù)量的二級數(shù)據(jù)查詢請求。
12.根據(jù)權利要求7-11任意一項所述的裝置,其特征在于,所述判斷處理模塊還用于當判斷出所述目標數(shù)據(jù)查詢請求不符合預設拆分條件時,觸發(fā)一級數(shù)據(jù)查詢請求發(fā)送模塊; 所述裝置還包括: 一級數(shù)據(jù)查詢請求發(fā)送模塊,用于將各個一級數(shù)據(jù)查詢請求發(fā)送給相對應目標分片數(shù)據(jù)庫所在的節(jié)點,以使得所述節(jié)點基于所接收到的一級數(shù)據(jù)查詢請求對相應的目標分片數(shù)據(jù)庫進行查詢處理,并將查詢結果進行反饋處理; 第二查詢結果匯總模塊,用于在接收到各個一級數(shù)據(jù)查詢請求所對應的查詢結果后,匯總所述查詢結果; 第二目標查詢結果確定模塊,用于將匯總后的查詢結果作為所述目標數(shù)據(jù)查詢請求的目標查詢結果。
【專利摘要】本發(fā)明實施例提供了一種數(shù)據(jù)查詢方法及裝置。該方法包括:在接收到針對于分布式數(shù)據(jù)庫的目標數(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ù)據(jù)庫所在的節(jié)點;在接收到各個二級數(shù)據(jù)查詢請求所對應的查詢結果后,匯總查詢結果;將匯總后的查詢結果作為目標數(shù)據(jù)查詢請求的目標查詢結果。通過本方案可以進一步提高查詢分布式數(shù)據(jù)庫的速率。
【IPC分類】G06F17-30
【公開號】CN104731951
【申請?zhí)枴緾N201510150114
【發(fā)明人】周逸勛, 曹思陽
【申請人】北京奇藝世紀科技有限公司
【公開日】2015年6月24日
【申請日】2015年3月31日