[發明專利]一種結構化查詢語言SQL性能統計的方法及裝置有效
| 申請號: | 201711403391.1 | 申請日: | 2017-12-22 |
| 公開(公告)號: | CN108182215B | 公開(公告)日: | 2021-10-12 |
| 發明(設計)人: | 邱帥兵;任文越;王崇 | 申請(專利權)人: | 微夢創科網絡科技(中國)有限公司 |
| 主分類號: | G06F16/242 | 分類號: | G06F16/242;G06F16/22;G06F16/25;G06F40/289;G06F11/34 |
| 代理公司: | 北京卓嵐智財知識產權代理事務所(特殊普通合伙) 11624 | 代理人: | 任漱晨 |
| 地址: | 100193 北京市海淀區東北旺西路中關村*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 結構 查詢 語言 sql 性能 統計 方法 裝置 | ||
本發明實施例提供了一種結構化查詢語言SQL性能統計的方法及裝置,該方法包括:獲取SQL類型的日志信息,所述日志信息包括SQL語句和所述SQL語句的執行性能信息;針對每一條日志信息,解析所述SQL語句,根據預定分割字符,對所述SQL語句進行分割,得到分割后的SQL語句;將分割后的SQL語句作為性能統計列表的第一索引信息,依據所述第一索引信息,將當前日志信息中的SQL語句的執行性能信息存儲至所述性能統計列表;根據所述性能統計列表中存儲的當前日志信息中的SQL語句的執行性能信息,統計當前日志信息中的SQL語句的性能數據。通過本發明,實現了快速、高效地對SQL語句進行性能統計,精確地查找出發生現異常問題的SQL語句。
技術領域
本發明涉及計算機技術領域,尤其涉及一種結構化查詢語言SQL性能統計的方法及裝置。
背景技術
目前,業務系統中通常會劃分多個模塊,每個模塊中都會有數據的存取操作,通常該方式下的數據的存取操作是通過調用外部接口或者數據庫操作語句來實現的。由于在調用外部接口或者進行數據庫操作的過程中會有一些不確定性,導致不能確定外部接口或者數據庫操作對業務系統性能的影響,因此,需要對外部接口或者數據庫操作進行監控,如監控對外部接口或者數據庫操作的運行時間等,當監控發現時間異常時,能夠及時通知開發和運維的人員進行維護解決問題,以提高業務系統的性能。
現有技術中,對業務系統的監控通常是通過日志信息來實現的,然而由于日志是不間斷的產生,并且外部接口或者數據庫操作的日志是海量的,一個接口或者一條數據庫操作會由于參數的變化而不斷的被調用或者執行。因此,如果想要對外部接口和數據庫操作進行監控,就必須解決由于參數的改變,使得外部接口和數據庫操作語句會有多種形式出現的問題。
外部接口的調用所產生的日志信息相對來說是比較容易處理的,因為HTTP(HyperText Transfer Protocol,超文本傳輸協議)接口URL(Uniform Resource Locator,統一資源定位符)的參數和主干部分是通過問號分開的,所以要想監控統計HTTP接口的日志信息,只需要將問號之后的參數過濾掉,將過濾后的URL作為索引,統計相對應的監控信息即可。然而,數據庫操作語句的日志信息處理就沒有這么簡單了,因為SQL數據庫的操作語句參數是不定向的,SQL語句的操作符有很多種,如何將SQL語句進行歸并是相當復雜的一個問題。對SQL性能監控最主要的是對SQL日志信息進行統計,對SQL性能統計最主要的是對SQL語句進行參數去重歸并。現有技術中對SQL語句進行歸并的方法主要有兩種,一種是Antlr4(ANother Tool for Language Recognition)語法分析器對SQL語句的語法解析出參數,參數統一化后歸并;另外一種是利用算法解析SQL語句的相似度,對高相似度的SQL語句進行歸并。例如:SQL語句1:select*from table where a=1 and b=2;和SQL語句2:select*from table where a=3 and b=4;根據Antlr4語法分析器的方法,首先分析SQL語句1和2的語法,然后解析出參數‘1’、‘2’、‘3’和‘4’,隨后將各參數統一替換成‘*’,替換后的SQL語句為:select*from table where a=*and b=*;隨后,對該條SQL語句的性能統計就比較方便了,只需將參數化后的SQL語句作為索引即可;通過算法對SQL語句求相似度的方法為:將SQL語句作為字符串,算法計算出字符串的一個value值,例如算法計算SQL語句1的value值是107987321023,計算SQL語句2的value值是107987321123,那么求其相似度102587955066/107987321123,可以得出相似度為95%,那么說明這兩條SQL語句相似,隨后對其歸并統計。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于微夢創科網絡科技(中國)有限公司,未經微夢創科網絡科技(中國)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711403391.1/2.html,轉載請聲明來源鉆瓜專利網。





