[發明專利]收集統計信息的方法、裝置、電子設備及可讀存儲介質在審
| 申請號: | 201910817108.2 | 申請日: | 2019-08-30 |
| 公開(公告)號: | CN110515963A | 公開(公告)日: | 2019-11-29 |
| 發明(設計)人: | 李智攀 | 申請(專利權)人: | 北京東軟望海科技有限公司 |
| 主分類號: | G06F16/23 | 分類號: | G06F16/23;G06F16/22;G06F16/2453 |
| 代理公司: | 11330 北京市立方律師事務所 | 代理人: | 張筱寧<國際申請>=<國際公布>=<進入 |
| 地址: | 100176 北京市大興區北京*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 更新數據量 統計信息 數據更新 數據總量 計算機可讀存儲介質 數據庫領域 電子設備 人力成本 時間成本 系統性能 新數據 閾值時 申請 過期 監測 | ||
本申請提供了一種收集統計信息的方法、裝置、電子設備及計算機可讀存儲介質,涉及數據庫領域。該方法包括:當監測到數據表發生數據更新時,獲取發生數據更新的更新數據量;基于所述更新數據量確定出更新后的數據表的數據總量;基于所述數據總量確定出更新數據量閾值;當所述更新數據量超過所述更新數據量閾值時,收集所述數據表的統計信息。本申請不僅解決了因統計信息過期而導致的系統性能急劇下降的問題,還節省了人力成本和時間成本。
技術領域
本申請涉及數據庫技術領域,具體而言,本申請涉及一種收集統計信息的方法、裝置、電子設備及計算機可讀存儲介質。
背景技術
統計信息描述了一個數據表或索引視圖中的某些列的值的分布情況,屬于數據庫對象。根據統計信息,查詢優化器就能評估查詢過程中需要讀取的行數及結果集情況,同時也能創建高質量的查詢計劃。
在很多實際項目中常常會因為統計信息過期導致系統運行極度緩慢,SQLServer中會對新建的索引列自動創建統計信息,當自動創建統計信息參數設置為ON時,沒有創建索引的查詢列也會被創建統計信息,SQLServer也提供了是否自動更新統計信息的系統參數,但是這種自動更新只有當滿足一定閾值或條件時才會被觸發。因此,在很多時候過期的統計信息導致了查詢操作選擇了次優的執行計劃,導致性能急劇下降,有時候,過期的統計信息可能比沒有統計信息更加糟糕。
因此,在數據庫自動更新統計信息條件未滿足之前,由于統計信息更新不及時而導致的系統性能急劇下降成為了急需解決的問題。
目前解決此類問題最常見的做法就是技術人員僅僅對那些被發現統計信息過期的數據表做主動的收集,這樣做法其實是治標不治本的,隨著時間的推移還是會繼續出現統計信息過期的數據表,這樣不僅問題沒有得到根本性解決,還耗費了人力成本和時間成本。
發明內容
本申請提供了一種收集統計信息的方法、裝置、電子設備及計算機可讀存儲介質,可以解決在數據庫自動更新統計信息條件未滿足之前,由于統計信息更新不及時而導致的系統性能急劇下降的問題。所述技術方案如下:
第一方面,提供了一種收集統計信息的方法,該方法包括:
當監測到數據表發生數據更新時,獲取發生數據更新的更新數據量;
基于所述更新數據量確定出更新后的數據表的數據總量;
基于所述數據總量確定出更新數據量閾值;
當所述更新數據量超過所述更新數據量閾值時,收集所述數據表的統計信息。
優選地,所述當檢測到數據表發生數據更新時,獲取發生數據更新的更新數據量的步驟,包括:
以預設的監測頻率監測所述數據表是否發生數據更新;
當檢測到數據表發生數據更新時,獲取所述數據表對應的行修改計數器的數值,并將所述數值作為發生數據更新的更新數據量。
優選地,還包括:
當所述更新數據量未超過所述更新數據量閾值時,重復執行所述以預設的監測頻率監測所述數據表是否發生數據更新的步驟;
當檢測到數據表發生數據更新時,獲取所述數據表對應的行修改計數器的數值,并將所述數值作為發生數據更新的更新數據量。
優選地,所述基于所述數據總量確定出更新數據量閾值的步驟,包括:
將所述數據總量與預設的閾值百分比的乘積數值,與預設的閾值基數值相加,得到所述更新數據量閾值。
優選地,所述收集所述數據表的統計信息的步驟,包括:
采用update statistics TableName語句收集所述數據表的統計信息。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京東軟望海科技有限公司,未經北京東軟望海科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910817108.2/2.html,轉載請聲明來源鉆瓜專利網。





