[發(fā)明專利]一種數(shù)據(jù)查詢操作的實(shí)現(xiàn)方法、裝置及系統(tǒng)有效
| 申請?zhí)枺?/td> | 201110347659.0 | 申請日: | 2011-11-07 |
| 公開(公告)號: | CN103092886A | 公開(公告)日: | 2013-05-08 |
| 發(fā)明(設(shè)計)人: | 高丹;鄧超;徐萌;江志雄;錢嶺;羅治國;孫少陵 | 申請(專利權(quán))人: | 中國移動通信集團(tuán)公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 北京同達(dá)信恒知識產(chǎn)權(quán)代理有限公司 11291 | 代理人: | 郭潤湘 |
| 地址: | 100032 *** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 數(shù)據(jù) 查詢 操作 實(shí)現(xiàn) 方法 裝置 系統(tǒng) | ||
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)查詢技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)查詢操作的實(shí)現(xiàn)方法、裝置及系統(tǒng)。
背景技術(shù)
目前,在數(shù)據(jù)存儲系統(tǒng)中導(dǎo)入諸如關(guān)系型數(shù)據(jù)庫、分布式數(shù)據(jù)庫、以及其他提供數(shù)據(jù)查詢接口的外部數(shù)據(jù)系統(tǒng)中的數(shù)據(jù)表或?qū)?shù)據(jù)表的查詢結(jié)果的方法為:
將外部數(shù)據(jù)系統(tǒng)中待查詢的數(shù)據(jù)按照某種分配規(guī)則,分配給數(shù)據(jù)存儲系統(tǒng)中的多個數(shù)據(jù)交換節(jié)點(diǎn);每個數(shù)據(jù)交換節(jié)點(diǎn)并行地對外部數(shù)據(jù)系統(tǒng)的數(shù)據(jù)表中的數(shù)據(jù)執(zhí)行查詢請求,得到各自的查詢結(jié)果;將每個數(shù)據(jù)交換節(jié)點(diǎn)的查詢結(jié)果合并后,得到完整的查詢結(jié)果。
其中,按照分配規(guī)則具體可以分為兩種:一種為基于偏移量和最大記錄行數(shù)的分配規(guī)則:首先獲得外部數(shù)據(jù)系統(tǒng)中待查詢的數(shù)據(jù)的總記錄行數(shù),然后根據(jù)總記錄行數(shù)和數(shù)據(jù)交換節(jié)點(diǎn)的個數(shù),對各數(shù)據(jù)交換節(jié)點(diǎn)分配對應(yīng)的查詢范圍,最后各個數(shù)據(jù)交換節(jié)點(diǎn)并行地在外部數(shù)據(jù)系統(tǒng)中對分配到的范圍進(jìn)行查詢,并返回查詢結(jié)果。
另一種為基于記錄標(biāo)識范圍的分配規(guī)則:首先計算外部數(shù)據(jù)系統(tǒng)中待查詢數(shù)據(jù)的記錄標(biāo)識的取值范圍,然后根據(jù)記錄標(biāo)識的取值范圍和數(shù)據(jù)交換節(jié)點(diǎn)的個數(shù),對各數(shù)據(jù)交換節(jié)點(diǎn)分配對應(yīng)的記錄標(biāo)識的查詢范圍,最后各個數(shù)據(jù)交換節(jié)點(diǎn)并行地在外部數(shù)據(jù)系統(tǒng)中對分配到的記錄標(biāo)識的查詢范圍進(jìn)行查詢,并返回查詢結(jié)果。
對于第一種分配規(guī)則,由于每個數(shù)據(jù)交換節(jié)點(diǎn)都需要在外部數(shù)據(jù)系統(tǒng)中并行地進(jìn)行復(fù)雜的查詢操作,并需要對查詢結(jié)果進(jìn)行排序才能保證總的查詢結(jié)果的正確性,因此在處理大數(shù)據(jù)量時性能較差,處理效率較低;并且,由于每個數(shù)據(jù)交換節(jié)點(diǎn)都會并行地向外部數(shù)據(jù)系統(tǒng)的數(shù)據(jù)表提交查詢請求,因此當(dāng)存在大量數(shù)據(jù)交換節(jié)點(diǎn)時會對系統(tǒng)造成巨大負(fù)擔(dān)。
對于第二種分配規(guī)則,由于采用記錄標(biāo)識來分割外部數(shù)據(jù)系統(tǒng)中的數(shù)據(jù),不能保證分配到每個數(shù)據(jù)交換節(jié)點(diǎn)的查詢數(shù)據(jù)量均勻,因此會導(dǎo)致在并行查詢時,一些數(shù)據(jù)交換節(jié)點(diǎn)的運(yùn)行時間相對較長使得整體查詢效率低;并且,此種方式只能處理有記錄標(biāo)識且記錄標(biāo)識為數(shù)字型(int或long類型)的數(shù)據(jù),會帶來使用的局限性。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供了一種數(shù)據(jù)查詢操作的實(shí)現(xiàn)方法、裝置及系統(tǒng),用以解決現(xiàn)有的數(shù)據(jù)查詢操作在實(shí)現(xiàn)時服務(wù)器負(fù)擔(dān)較重、查詢效率較低的問題。
本發(fā)明實(shí)施例提供的一種數(shù)據(jù)查詢操作的實(shí)現(xiàn)方法,包括:
對外部數(shù)據(jù)系統(tǒng)的數(shù)據(jù)表執(zhí)行查詢操作,將查詢到的數(shù)據(jù)緩存到預(yù)先建立的臨時表中;
對所述臨時表中緩存的每設(shè)定行數(shù)的數(shù)據(jù)增加一個索引,直至最后一行數(shù)據(jù);
根據(jù)所述臨時表中所有數(shù)據(jù)的總記錄行數(shù)和數(shù)據(jù)存儲系統(tǒng)中的數(shù)據(jù)交換節(jié)點(diǎn)的個數(shù),將所述臨時表中的所有數(shù)據(jù)均勻分配給各數(shù)據(jù)交換節(jié)點(diǎn),確定各數(shù)據(jù)交換節(jié)點(diǎn)對應(yīng)的索引范圍;
向各數(shù)據(jù)交換節(jié)點(diǎn)下發(fā)為其分配的索引范圍,以便各數(shù)據(jù)交換節(jié)點(diǎn)按照所分配的索引范圍并行地從所述臨時表中讀取數(shù)據(jù)至所述數(shù)據(jù)存儲系統(tǒng)。
本發(fā)明實(shí)施例提供的一種數(shù)據(jù)查詢操作的實(shí)現(xiàn)裝置,包括:
查詢模塊,用于對外部數(shù)據(jù)系統(tǒng)的數(shù)據(jù)表執(zhí)行查詢操作,將查詢到的數(shù)據(jù)緩存到預(yù)先建立的臨時表中;
索引建立模塊,用于對所述臨時表中緩存的每設(shè)定行數(shù)的數(shù)據(jù)增加一個索引,直至最后一行數(shù)據(jù);
索引分配模塊,用于根據(jù)所述臨時表中所有數(shù)據(jù)的總記錄行數(shù)和數(shù)據(jù)存儲系統(tǒng)中的數(shù)據(jù)交換節(jié)點(diǎn)的個數(shù),將所述臨時表中的所有數(shù)據(jù)均勻分配給各數(shù)據(jù)交換節(jié)點(diǎn),確定各數(shù)據(jù)交換節(jié)點(diǎn)對應(yīng)的索引范圍;
發(fā)送模塊,用于向各數(shù)據(jù)交換節(jié)點(diǎn)下發(fā)為其分配的索引范圍,以便各數(shù)據(jù)交換節(jié)點(diǎn)按照所分配的索引范圍并行地從所述臨時表中讀取數(shù)據(jù)至所述數(shù)據(jù)存儲系統(tǒng)。
本發(fā)明實(shí)施例提供的一種數(shù)據(jù)查詢操作的實(shí)現(xiàn)系統(tǒng),包括:外部數(shù)據(jù)系統(tǒng)和數(shù)據(jù)存儲系統(tǒng),還包括:數(shù)據(jù)查詢操作的實(shí)現(xiàn)裝置;其中,
所述數(shù)據(jù)查詢操作的實(shí)現(xiàn)裝置,用于對外部數(shù)據(jù)系統(tǒng)的數(shù)據(jù)表執(zhí)行查詢操作,將查詢到的數(shù)據(jù)緩存到預(yù)先建立的臨時表中;對所述臨時表中緩存的每設(shè)定行數(shù)的數(shù)據(jù)增加一個索引,直至最后一行數(shù)據(jù);根據(jù)所述臨時表中所有數(shù)據(jù)的總記錄行數(shù)和數(shù)據(jù)存儲系統(tǒng)中的數(shù)據(jù)交換節(jié)點(diǎn)的個數(shù),將臨時表中的所有數(shù)據(jù)均勻分配給各數(shù)據(jù)交換節(jié)點(diǎn),確定各數(shù)據(jù)交換節(jié)點(diǎn)對應(yīng)的索引范圍;向各數(shù)據(jù)交換節(jié)點(diǎn)下發(fā)為其分配的索引范圍;
所述數(shù)據(jù)存儲系統(tǒng)包括多個數(shù)據(jù)交換節(jié)點(diǎn),每個數(shù)據(jù)交換節(jié)點(diǎn)用于根據(jù)接收到的所述數(shù)據(jù)查詢操作的實(shí)現(xiàn)裝置發(fā)送的索引范圍,從所述臨時表中讀取數(shù)據(jù)至所述數(shù)據(jù)存儲系統(tǒng)。
本發(fā)明實(shí)施例的有益效果包括:
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中國移動通信集團(tuán)公司,未經(jīng)中國移動通信集團(tuán)公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110347659.0/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





