[發明專利]一種非等值關聯子查詢的優化方法和系統有效
| 申請號: | 201810097136.7 | 申請日: | 2018-01-31 |
| 公開(公告)號: | CN108874849B | 公開(公告)日: | 2020-12-25 |
| 發明(設計)人: | 何文婷;程學旗;鄭天祺;張志斌;郭嘉豐;趙鵬 | 申請(專利權)人: | 中國科學院計算技術研究所 |
| 主分類號: | G06F16/2453 | 分類號: | G06F16/2453 |
| 代理公司: | 北京律誠同業知識產權代理有限公司 11006 | 代理人: | 祁建國;梁揮 |
| 地址: | 100080 北*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 等值 關聯 查詢 優化 方法 系統 | ||
1.一種非等值關聯子查詢的優化方法,其特征在于,包括:
步驟1、獲取關聯子查詢的外表關聯列的取值集;
步驟2、根據該關聯子查詢中操作符的類型和該取值集,建立該關聯子查詢的外表關聯列到內表關聯列分區的映射關系;
步驟3、根據該內表關聯列分區,得到分區集合,以對該關聯子查詢的內表進行分區,同時依據該關聯子查詢中內表的查詢聚合函數,獲取關聯子查詢在各分區的中間結果狀態信息;
步驟4、根據該映射關系,遍歷該外表關聯列,通過聚合對應分區集的中間結果狀態信息,得到外表中各關聯列對應的子查詢結果;
其中,該步驟2還包括:
步驟21、依據該關聯子查詢中操作符的類型和外表關聯列的取值集構建自動合并分區樹,并通過該自動合并分區樹,建立該映射關系,其中該自動合并分區樹的每個葉子節點對應一個分區,集合該分區,作為內表關聯列分區。
2.如權利要求1所述的非等值關聯子查詢的優化方法,其特征在于,該步驟2還包括:
若該操作符為不等于操作,則根據外表關聯列的取值數量k,將該內表劃分為k+1個分區,并將各外表關聯列的取值對應到除自身以外的k個分區,作為該映射關系;
若該操作符為比較操作,則根據外表關聯列的取值數量k,將該內表劃分為k+1個分區,并將外表關聯列的取值根據該比較操作符對應到相應分區,作為該映射關系;
若該操作符為集合操作,則根據外表關聯列的取值的最大公約數,將該內表劃分為n+1個分區,并將各關聯列的取值根據該集合操作符對應到相應分區,作為該映射關系,其中n為該最大公約數。
3.如權利要求1所述的非等值關聯子查詢的優化方法,其特征在于,步驟3中,若該查詢聚合函數為Avg,則該中間結果狀態信息為Sum+count;若該查詢聚合函數為Sum/max/min/count,則該中間結果狀態信息為Sum/max/min/count。
4.如權利要求1所述的非等值關聯子查詢的優化方法,其特征在于,該步驟4還包括:循環處理外表與內表的該子查詢結果的相關判斷,獲得該關聯子查詢的最終結果。
5.一種非等值關聯子查詢的優化系統,其特征在于,包括:
分區映射模塊,用于獲取關聯子查詢的外表關聯列的取值,將取值集合為取值集,并根據該關聯子查詢中操作符的類型和該取值集,建立該關聯子查詢的外表關聯列到內表關聯列分區的映射關系;
結果合并模塊,用于根據該映射關系,對該關聯子查詢的內表進行分區,同時依據該關聯子查詢中內表的查詢聚合函數,獲取關聯子查詢在各分區的中間結果狀態信息,并根據該映射關系,遍歷該外表關聯列,通過聚合各分區的中間結果狀態信息,得到外表中各關聯列對應的子查詢結果;
其中,該分區映射模塊還包括:依據該關聯子查詢中操作符的類型和外表關聯列的取值集構建自動合并分區樹,并通過該自動合并分區樹,確定所有的分區,建立該映射關系,其中該自動合并分區樹的每個葉子節點對應一個分區,集合該分區,作為內表關聯列分區。
6.如權利要求5所述的非等值關聯子查詢的優化系統,其特征在于,該分區映射模塊還包括:
若該操作符為不等于操作,則根據外表關聯列的取值數量k,將該內表劃分為k+1個分區,并將各外表關聯列的取值對應到除自身以外的k個分區,作為該映射關系;
若該操作符為比較操作,則根據外表關聯列的取值數量k,將該內表劃分為k+1個分區,并將外表關聯列的取值根據該比較操作符對應到相應分區,作為該映射關系;
若該操作符為集合操作,則根據外表關聯列的取值的最大公約數,將該內表劃分為n+1個分區,并將各關聯列的取值根據該集合操作符對應到相應分區,作為該映射關系,其中n為該最大公約數。
7.如權利要求5所述的非等值關聯子查詢的優化系統,其特征在于,結果合并模塊中,若該查詢聚合函數為Avg,則該中間結果狀態信息為Sum+count;若該查詢聚合函數為Sum/max/min/count,則該中間結果狀態信息為Sum/max/min/count。
8.如權利要求5所述的非等值關聯子查詢的優化系統,其特征在于,該結果合并模塊還包括:循環處理外表與內表的該子查詢結果的相關判斷,獲得該關聯子查詢的最終結果。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國科學院計算技術研究所,未經中國科學院計算技術研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810097136.7/1.html,轉載請聲明來源鉆瓜專利網。





