[發明專利]一種數據庫優化方法、裝置、電子設備及存儲介質在審
| 申請號: | 202210012709.8 | 申請日: | 2022-01-06 |
| 公開(公告)號: | CN114238395A | 公開(公告)日: | 2022-03-25 |
| 發明(設計)人: | 汪維;李銘;李明;唐冬平;邱峰 | 申請(專利權)人: | 稅友軟件集團股份有限公司 |
| 主分類號: | G06F16/2453 | 分類號: | G06F16/2453;G06F16/2455;G06F16/242 |
| 代理公司: | 北京集佳知識產權代理有限公司 11227 | 代理人: | 馮海剛 |
| 地址: | 310053 浙江省杭*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 數據庫 優化 方法 裝置 電子設備 存儲 介質 | ||
1.一種數據庫優化方法,其特征在于,包括:
獲取待處理SQL語句;
當檢測到所述待處理SQL語句被所述數據庫執行時,記錄執行時間,并在確定所述執行時間大于預設時間時,查找所述待處理SQL語句在數據庫中對應的實體表;
對所述實體表進行采樣分析和/或直方圖分析,并將得到的采樣分析結果和/或數據直方圖發送至所述數據庫,以使所述數據庫根據所述采樣分析和/或數據直方圖進行執行計劃優化。
2.根據權利要求1所述的數據庫優化方法,其特征在于,所述獲取待處理SQL語句,包括:
獲取所述數據庫的預設對外接口,并將所述預設對外接口對應的SQL語句設置為所述待處理SQL語句;
相應的,所述當檢測到所述待處理SQL語句被所述數據庫執行時,記錄執行時間,包括:
探測所述預設對外接口并記錄響應時間,以使所述對外接口將所述待處理SQL語句發送至所述數據庫進行執行;
當接收到所述預設對外接口返回的響應信息時,停止記錄所述響應時間,并將所述響應時間設置為所述執行時間。
3.根據權利要求1所述的數據庫優化方法,其特征在于,所述獲取待處理SQL語句,包括:
獲取預設時間段內生成的任務調度日志,并將所述任務調度日志對應任務所需執行的SQL語句設置為所述待處理SQL語句;所述任務調度日志中記錄有所述數據庫執行所述任務對應SQL語句的任務執行時間;
相應的,所述當檢測到所述待處理SQL語句被所述數據庫執行時,記錄執行時間,包括:
將所述任務執行時間設置為所述執行時間。
4.根據權利要求3所述的數據庫優化方法,其特征在于,所述將所述任務調度日志對應任務所需執行的SQL語句設置為所述待處理SQL語句,包括:
查找所述任務對應的ETL代碼;
在所述ETL代碼中提取所述任務所需執行的SQL語句,并設置為所述待處理SQL語句。
5.根據權利要求1至4任一項所述的數據庫優化方法,其特征在于,所述對所述實體表進行采樣分析和/或直方圖分析,并將得到的采樣分析結果和/或數據直方圖發送至所述數據庫,以使所述數據庫根據所述采樣分析和/或數據直方圖進行執行計劃優化,包括:
根據第一預設分析采樣度對所述實體表進行第一次采樣分析,得到第一采樣分析結果;
將所述第一采樣分析結果發送至所述數據庫,以使所述數據庫根據所述第一采樣分析結果進行所述執行計劃優化;
重新執行所述待處理SQL語句以及記錄第一執行時間,并在確定所述第一執行時間大于所述預設時間時,根據第二預設分析采樣度對所述實體表進行第二次采樣分析,得到第二采樣分析結果;所述第二預設分析采樣度大于所述第一預設分析采樣度;
將所述第二采樣分析結果發送至所述數據庫,以使所述數據庫根據所述第二采樣分析結果進行所述執行計劃優化;
重新執行所述待處理SQL語句以及記錄第二執行時間,并在確定所述第二執行時間大于所述預設時間時,根據所述第二預設分析采樣度對所述實體表進行第三次采樣分析,以及對所述實體表進行直方圖分析,得到第三采樣分析結果和所述數據直方圖;
將所述第三采樣分析結果和所述數據直方圖發送至所述數據庫,以使所述數據庫根據所述第三采樣分析結果和所述數據直方圖進行所述執行計劃優化。
6.根據權利要求5所述的數據庫優化方法,其特征在于,在將所述第三采樣分析結果和所述數據直方圖發送至所述數據庫之后,還包括:
重新執行所述待處理SQL語句以及記錄第三執行時間,并判斷所述第三執行時間是否大于所述預設時間;
若是,則輸出預設告警信息。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于稅友軟件集團股份有限公司,未經稅友軟件集團股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202210012709.8/1.html,轉載請聲明來源鉆瓜專利網。





