[發明專利]用于大規模并行處理數據庫集群中的兩階段查詢優化的方法有效
| 申請號: | 201380067322.1 | 申請日: | 2013-12-28 |
| 公開(公告)號: | CN104885078B | 公開(公告)日: | 2018-06-15 |
| 發明(設計)人: | 孫揚;周慶慶;莫罕·森格姆什提 | 申請(專利權)人: | 華為技術有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 北京中博世達專利商標代理有限公司 11274 | 代理人: | 申健 |
| 地址: | 518129 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 數據節點 大規模并行處理 語義樹 全局 數據庫集群 查詢優化 成本評估 兩階段 協調器 有效地 數據庫 查詢 優化 | ||
1.一種用于處理大規模并行處理MPP數據庫中的查詢的方法,其特征在于,所述方法包括:
MPP數據節點從MPP協調器接收全局執行計劃和語義樹;
所述MPP數據節點根據所述語義樹生成本地執行計劃;以及
所述MPP數據節點選擇執行所述全局執行計劃或所述本地執行計劃;
其中,所述根據所述語義樹生成本地執行計劃包括:
識別所述語義樹的子樹;
根據所述全局執行計劃執行的約束集強化所述子樹;以及
根據所述強化的子樹生成所述本地執行計劃。
2.根據權利要求1所述的方法,其特征在于,所述全局執行計劃和所述語義樹是客戶作出查詢以后生成的。
3.根據權利要求1所述的方法,其特征在于,所述MPP數據節點選擇執行所述全局執行計劃或所述本地執行計劃包括:
根據已定義的成本模型為每個所述本地執行計劃和所述全局執行計劃確定成本;
當所述本地執行計劃的成本低于所述全局執行計劃的成本時,選擇所述本地執行計劃;以及
當所述本地執行計劃的成本等于或大于所述全局執行計劃的成本時,選擇所述全局執行計劃。
4.根據權利要求3所述的方法,其特征在于,所述已定義的成本模型表示所述MPP數據節點的本地配置信息,其中當生成所述全局執行計劃時,所述MPP數據節點的本地配置信息不可用于所述MPP協調器。
5.根據權利要求4所述的方法,其特征在于,如果數據在所述MPP數據庫中的多個MPP數據節點間均勻分布,那么所述MPP協調器生成所述全局執行計劃。
6.根據權利要求1所述的方法,其特征在于,生成所述本地執行計劃包括:
根據所述MPP數據節點的本地配置信息生成所述本地執行計劃,其中當所述MPP協調器生成所述全局執行計劃時,所述本地配置信息不可用于所述MPP協調器。
7.根據權利要求6所述的方法,其特征在于,所述本地配置信息指定所述MPP數據節點的資源約束。
8.根據權利要求6所述的方法,其特征在于,所述本地配置信息指定所述MPP數據節點存儲的數據量,其中數據非均勻地在所述MPP數據庫中分布,這樣所述MPP數據節點存儲的數據量與所述MPP數據庫中的其它MPP數據節點存儲的數據量不同。
9.根據權利要求1所述的方法,其特征在于,所述全局執行計劃執行的所述約束集包括以下項中的至少一項:結果集的順序、結果集的獨特性、所述結果集中包含的行數。
10.一種MPP數據庫中的大規模并行處理MPP數據節點,其特征在于,所述MPP數據節點包括:
處理器;以及
計算機可讀存儲介質,所述計算機可讀存儲介質存儲由所述處理器執行的程序,所述程序包括用于進行如下操作的指令:
從MPP協調器接收全局執行計劃和語義樹;
根據所述語義樹生成本地執行計劃;以及
所述MPP數據節點選擇執行所述全局執行計劃或所述本地執行計劃;
其中,所述根據所述語義樹生成本地執行計劃包括:
識別所述語義樹的子樹;
根據所述全局執行計劃執行的約束集強化所述子樹;以及
根據所述強化的子樹生成所述本地執行計劃。
11.根據權利要求10所述的MPP數據節點,其特征在于,用于所述MPP數據節點選擇執行所述全局執行計劃或所述本地執行計劃的指令包括用于進行如下操作的指令:
根據已定義的成本模型為每個所述本地執行計劃和所述全局執行計劃確定成本;
當所述本地執行計劃的成本低于所述全局執行計劃的成本時,選擇所述本地執行計劃;以及
當所述本地執行計劃的成本等于或大于所述全局執行計劃的成本時,選擇所述全局執行計劃。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華為技術有限公司,未經華為技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201380067322.1/1.html,轉載請聲明來源鉆瓜專利網。





