[發明專利]一種SQL優化方法、裝置、計算機設備及存儲介質有效
| 申請號: | 202011012194.9 | 申請日: | 2020-09-23 |
| 公開(公告)號: | CN112434003B | 公開(公告)日: | 2022-11-18 |
| 發明(設計)人: | 高仕進 | 申請(專利權)人: | 蘇寧云計算有限公司 |
| 主分類號: | G06F16/21 | 分類號: | G06F16/21;G06F16/242;G06F16/2453 |
| 代理公司: | 北京市萬慧達律師事務所 11111 | 代理人: | 段曉玲 |
| 地址: | 210000 江蘇省南*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 sql 優化 方法 裝置 計算機 設備 存儲 介質 | ||
1.一種SQL優化方法,其特征在于,所述方法包括如下步驟:
解析SQL語句,識別所述SQL語句涉及的主表以及輔表;
獲取所述主表和所述輔表在執行所述SQL語句對應的待優化SQL腳本的目標平臺上的記錄量;
根據所述記錄量以及預設分類規則對所述主表以及所述輔表進行分類,獲取分類結果;
根據預設優化規則以及所述分類結果對所述待優化SQL腳本進行優化處理,獲取優化后SQL腳本。
2.根據權利要求1所述的SQL優化方法,其特征在于,所述根據所述記錄量以及預設分類規則對所述主表以及所述輔表進行分類,獲取分類結果包括:
判斷所述主表或所述輔表的所述記錄量是否超過預設閾值,若是,則將所述主表或所述輔表確定為大表,否則將所述主表或所述輔表確定為直接小表;
利用子查詢將與確定為大表的所述輔表所關聯的表根據關聯字段進行去重,將去重后的表與確定為大表的所述輔表內關聯,重新統計關聯后的記錄量,判斷所述關聯后的記錄量是否超過預設閾值,若未超過,則將所述輔表確定為間接小表。
3.根據權利要求2所述的SQL優化方法,其特征在于,所述根據預設優化規則以及所述分類結果對所述待優化SQL腳本進行優化處理,獲取優化后SQL腳本至少包括:
利用子查詢將與所述間接小表所關聯的表根據關聯字段進行去重,將去重后的表與所述間接小表內關聯,生成第一臨時表。
4.根據權利要求2所述的SQL優化方法,其特征在于,所述根據預設優化規則以及所述分類結果對所述待優化SQL腳本進行優化處理,獲取優化后SQL腳本至少包括:
識別所述大表中重復掃描的目標大表,從所述SQL語句的解析結果中獲取目標字段與過濾條件,根據所述目標字段和所述過濾條件從所述目標大表中獲取目標數據,生成第二臨時表,以便后續使用所述第二臨時表代替所述目標大表進行相關操作。
5.根據權利要求2所述的SQL優化方法,其特征在于,所述根據預設優化規則以及所述分類結果對所述待優化SQL腳本進行優化處理,獲取優化后SQL腳本至少包括:
將與所述主表同粒度且關聯字段相同的所述大表以及所述第二臨時表進行合并處理,生成第一結果表。
6.根據權利要求5所述的SQL優化方法,其特征在于,所述根據預設優化規則以及所述分類結果對所述待優化SQL腳本進行優化處理,獲取優化后SQL腳本至少包括:
將與所述主表不同粒度且關聯字段不同的所述大表、所述第二臨時表以及所述第一結果表進行合并處理,生成第二結果表;
將所述第二結果表與所述直接小表以及所述間接小表進行關聯,生成優化后SQL腳本的目標表。
7.根據權利要求1-6任一所述的SQL優化方法,其特征在于,所述方法還包括:
獲取所述目標平臺的平臺參數信息,根據所述平臺參數信息以及所述預設優化規則對所述待優化SQL腳本的參數設置進行調整。
8.一種SQL優化裝置,其特征在于,所述裝置包括:
解析模塊,用于解析SQL語句,識別所述SQL語句涉及的主表以及輔表;
提取模塊,用于獲取所述主表和所述輔表在執行所述SQL語句對應的待優化SQL腳本的目標平臺上的記錄量;
分類模塊,用于根據所述記錄量以及預設分類規則對所述主表以及所述輔表進行分類,獲取分類結果;
優化模塊,用于根據預設優化規則以及所述分類結果對所述待優化SQL腳本進行優化處理,獲取優化后SQL腳本。
9.一種計算機設備,包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,其特征在于,所述處理器執行所述計算機程序時實現權利要求1至7中任一項所述方法的步驟。
10.一種計算機可讀存儲介質,其上存儲有計算機程序,其特征在于,所述計算機程序被處理器執行時實現權利要求1至7中任一項所述的方法的步驟。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于蘇寧云計算有限公司,未經蘇寧云計算有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011012194.9/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:整盤電纜導體的長度截面判定方法
- 下一篇:一種增強型有機管式膜制備方法





