本發明專利技術公開了一種數據查詢操作的實現方法、裝置及系統,對外部數據系統的數據表執行查詢操作后,將查詢到的數據緩存到臨時表中;對臨時表中緩存的數據增加索引后,將臨時表中的所有數據均勻分配給各數據交換節點,確定其對應的索引范圍。本發明專利技術通過建立臨時表緩存查詢到的數據,各個數據交換節點就可以直接并行地對緩存表中的部分數據進行讀取操作,避免了每個數據交換節點都需要并行地在外部系統中進行復雜的查詢操作,減輕了在處理大量數據時外部數據系統服務器的負擔,并且,由于分配給各數據交換節點的臨時表中的索引范圍對應的數據行數相對平均,保證了各個數據交換節點在并行處理時運行時間能夠基本相同,從而提高了整體的查詢效率。
【技術實現步驟摘要】
本專利技術涉及數據查詢
,尤其涉及ー種數據查詢操作的實現方法、裝置及系統。
技術介紹
目前,在數據存儲系統中導入諸如關系型數據庫、分布式數據庫、以及其他提供數據查詢接ロ的外部數據系統中的數據表或對數據表的查詢結果的方法為:將外部數據系統中待查詢的數據按照某種分配規則,分配給數據存儲系統中的多個數據交換節點;每個數據交換節點并行地對外部數據系統的數據表中的數據執行查詢請求,得到各自的查詢結果;將每個數據交換節點的查詢結果合并后,得到完整的查詢結果。其中,按照分配規則具體可以分為兩種:一種為基于偏移量和最大記錄行數的分配規則:首先獲得外部數據系統中待查詢的數據的總記錄行數,然后根據總記錄行數和數據交換節點的個數,對各數據交換節點分配對應的查詢范圍,最后各個數據交換節點并行地在外部數據系統中對分配到的范圍進行查詢,并返回查詢結果。另ー種為基于記錄標識范圍的分配規則:首先計算外部數據系統中待查詢數據的記錄標識的取值范圍,然后根據記錄標識的取值范圍和數據交換節點的個數,對各數據交換節點分配對應的記錄標識的查詢范圍,最后各個數據交換節點并行地在外部數據系統中對分配到的記錄標識的查詢范圍進行查詢,并返回查詢結果。對于第一種分配規則,由于每個數據交換節點都需要在外部數據系統中并行地進行復雜的查詢操作,并需要對查詢結果進行排序才能保證總的查詢結果的正確性,因此在處理大數據量時性能較差,處理效率較低;并且,由于每個數據交換節點都會并行地向外部數據系統的數據表提交查詢請求,因此當存在大量數據交換節點時會對系統造成巨大負擔。對于第二種分配規則,由于采用記錄標識來分割外部數據系統中的數據,不能保證分配到每個數據交換節點的查詢數據量均勻,因此會導致在并行查詢時,一些數據交換節點的運行時間相對較長使得整體查詢效率低;并且,此種方式只能處理有記錄標識且記錄標識為數字型(int或long類型)的數據,會帶來使用的局限性。
技術實現思路
本專利技術實施例提供了ー種數據查詢操作的實現方法、裝置及系統,用以解決現有的數據查詢操作在實現時服務器負擔較重、查詢效率較低的問題。本專利技術實施例提供的ー種數據查詢操作的實現方法,包括:對外部數據系統的數據表執行查詢操作,將查詢到的數據緩存到預先建立的臨時表中;對所述臨時表中緩存的每設定行數的數據增加ー個索引,直至最后一行數據;根據所述臨時表中所有數據的總記錄行數和數據存儲系統中的數據交換節點的個數,將所述臨時表中的所有數據均勻分配給各數據交換節點,確定各數據交換節點對應的索引范圍;向各數據交換節點下發為其分配的索引范圍,以便各數據交換節點按照所分配的索引范圍并行地從所述臨時表中讀取數據至所述數據存儲系統。本專利技術實施例提供的ー種數據查詢操作的實現裝置,包括:查詢模塊,用于對外部數據系統的數據表執行查詢操作,將查詢到的數據緩存到預先建立的臨時表中;索引建立模塊,用于對所述臨時表中緩存的每設定行數的數據增加ー個索引,直至最后一行數據;索引分配模塊,用于根據所述臨時表中所有數據的總記錄行數和數據存儲系統中的數據交換節點的個數,將所述臨時表中的所有數據均勻分配給各數據交換節點,確定各數據交換節點對應的索引范圍;發送模塊,用于向各數據交換節點下發為其分配的索引范圍,以便各數據交換節點按照所分配的索引范圍并行地從所述臨時表中讀取數據至所述數據存儲系統。本專利技術實施例提供的ー種數據查詢操作的實現系統,包括:外部數據系統和數據存儲系統,還包括:數據查詢操作的實現裝置;其中,所述數據查詢操作的實現裝置,用于對外部數據系統的數據表執行查詢操作,將查詢到的數據緩存到預先建立的臨時表中;對所述臨時表中緩存的每設定行數的數據增加ー個索引,直至最后一行數據;根據所述臨時表中所有數據的總記錄行數和數據存儲系統中的數據交換節點的個數,將臨時表中的所有數據均勻分配給各數據交換節點,確定各數據交換節點對應的索引范圍;向各數據交換節點下發為其分配的索引范圍;所述數據存儲系統包括多個數據交換節點,每個數據交換節點用于根據接收到的所述數據查詢操作的實現裝置發送的索引范圍,從所述臨時表中讀取數據至所述數據存儲系統。本專利技術實施例的有益效果包括:本專利技術實施例提供的ー種數據查詢操作的實現方法、裝置及系統,對外部數據系統的數據表執行查詢操作,將查詢到的數據緩存到預先建立的臨時表中;對臨時表中緩存的每設定行數的數據增加ー個索引,直至最后一行數據;根據臨時表中所有數據的總記錄行數和數據存儲系統中的數據交換節點的個數,將臨時表中的所有數據均勻分配給各數據交換節點,確定各數據交換節點對應的索引范圍;向各數據交換節點下發為其分配的索引范圍,以便各數據交換節點按照所分配的索引范圍并行地從臨時表中讀取數據至數據存儲系統。本專利技術通過建立臨時表緩存查詢到的數據,各個數據交換節點就可以直接并行地對緩存表中的部分數據進行讀取操作,避免了每個數據交換節點都需要并行地在外部系統中進行復雜的查詢操作,減輕了在處理大量數據時外部數據系統服務器的負擔,并且,由于分配給各數據交換節點的臨時表中的索引范圍對應的數據行數相對平均,保證了各個數據交換節點在并行處理時運行時間能夠基本相同,從而提高了整體的查詢效率。附圖說明圖1為本專利技術實施例提供的數據查詢操作的實現方法的流程圖之ー;圖2為本專利技術實施例提供的數據查詢操作的實現方法的流程圖之ニ ;圖3為本專利技術實施例提供的數據查詢操作的實現裝置的結構示意圖;圖4為本專利技術實施例提供的數據查詢操作的實現系統的結構示意圖。具體實施例方式下面結合附圖,對本專利技術實施例提供的數據查詢操作的實現方法、裝置及系統的具體實施方式進行詳細地說明。本專利技術實施例提供的ー種數據查詢操作的實現方法,如圖1所示,具體包括以下步驟:S101、對外部數據系統的數據表執行查詢操作,將查詢到的數據緩存到預先建立的臨時表中;S102、對臨時表中緩存的每設定行數的數據增加ー個索引,直至最后一行數據;S103、根據臨時表中所有數據的總記錄行數和數據存儲系統中的數據交換節點的個數,將臨時表中的所有數據均勻分配給各數據交換節點,確定各數據交換節點對應的索引范圍;S104、向各數據交換節點下發為其分配的索引范圍,以便各數據交換節點按照所分配的索引范圍并行地從臨時表中讀取數據至數據存儲系統。其中,本專利技術實施例提供的上述方法中,外部數據系統可以為關系型數據庫、分布式數據庫或其他能夠提供數據查詢接ロ的系統;數據存儲系統可以為關系型數據庫、分布式數據庫或分布式文件系統等,在具體實施時,上述數據存儲系統例如可以部署于云計算平臺中,在此不作限定。其中,相對于現有技術中的第一種分配規則,本專利技術實施例提供的上述方法,建立臨時表緩存查詢到的數據后,各個數據交換節點就可以直接對緩存表中的部分數據并行地執行讀取操作,可以避免每個數據交換節點都需要并行地在外部系統中進行復雜的查詢操作,導致在處理大量數據時性能較差的問題,同時當存在大量數據交換節點時也不會對系統造成過大的負擔。下面對上述各步驟的具體實現方式進行詳細的說明。具體地,本專利技術實施例提供的上述方法中步驟S102可以通過下述方式實現:對臨時表中緩存的每設定行數的數據,増加ー個從I開始自增固定步長的數字型(int或long型)索引,直至最后一行數據。具體地,上述步驟本文檔來自技高網...
【技術保護點】
一種數據查詢操作的實現方法,其特征在于,包括:對外部數據系統的數據表執行查詢操作,將查詢到的數據緩存到預先建立的臨時表中;對所述臨時表中緩存的每設定行數的數據增加一個索引,直至最后一行數據;根據所述臨時表中所有數據的總記錄行數和數據存儲系統中的數據交換節點的個數,將所述臨時表中的所有數據均勻分配給各數據交換節點,確定各數據交換節點對應的索引范圍;向各數據交換節點下發為其分配的索引范圍,以便各數據交換節點按照所分配的索引范圍并行地從所述臨時表中讀取數據至所述數據存儲系統。
【技術特征摘要】
1.一種數據查詢操作的實現方法,其特征在于,包括: 對外部數據系統的數據表執行查詢操作,將查詢到的數據緩存到預先建立的臨時表中; 對所述臨時表中緩存的每設定行數的數據增加ー個索引,直至最后一行數據; 根據所述臨時表中所有數據的總記錄行數和數據存儲系統中的數據交換節點的個數,將所述臨時表中的所有數據均勻分配給各數據交換節點,確定各數據交換節點對應的索引范圍; 向各數據交換節點下發為其分配的索引范圍,以便各數據交換節點按照所分配的索引范圍并行地從所述臨時表中讀取數據至所述數據存儲系統。2.按權利要求1所述的方法,其特征在于,對所述臨時表中緩存的每設定行數的數據増加ー個索引,直至最后一行數據,具體包括: 對所述臨時表中緩存的每設定行數的數據,増加ー個從I開始自增固定步長的數字型索引,直至最后一行數據。3.按權利要求1所述的方法,其特征在于,對所述臨時表中緩存的每設定行數的數據増加ー個索引,直至最后一行數據,具體包括: 對所述臨時表中緩存的每設定行數的數據,増加一個字符型或字符串型索引,直至最后一行數據。4.按權利要求1-3任一項所述的方法,其特征在于,根據所述臨時表中所有數據的總記錄行數和數據存儲系統中的數 據交換節點的個數,將所述臨時表中的所有數據均勻分配給各數據交換節點,確定各數據交換節點對應的索引范圍,具體包括: 計算所述臨時表中緩存的數據的總記錄行數; 將所述總記錄行數除以數據交換節點的數量,得到每個數據交換節點應處理的數據的行數,并根據臨時表中增加的索引,確定為各數據交換節點分配的包含對應行數的索引范圍。5.一種數據查詢操作的實現裝置,其特征在于,包括: 查詢模塊,用于對外部數據系統的數據表執行查詢操作,將查詢到的數據緩存到預先建立的臨時表中; 索引建立模塊,用于對所述臨時表中緩存的每設定行數的數據增加ー個索引,直至最后一行數據; 索引分配模塊,用于根據所述臨時表中所有數據的總記錄...
【專利技術屬性】
技術研發人員:高丹,鄧超,徐萌,江志雄,錢嶺,羅治國,孫少陵,
申請(專利權)人:中國移動通信集團公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。