[發明專利]分布式數據庫SQL稽核及優化建議方法及系統在審
| 申請號: | 202211604163.1 | 申請日: | 2022-12-13 |
| 公開(公告)號: | CN115934721A | 公開(公告)日: | 2023-04-07 |
| 發明(設計)人: | 嚴奇輝;邱茂進 | 申請(專利權)人: | 中電福富信息科技有限公司 |
| 主分類號: | G06F16/22 | 分類號: | G06F16/22;G06F16/242;G06F16/2453;G06F16/27;G06F16/28 |
| 代理公司: | 福州君誠知識產權代理有限公司 35211 | 代理人: | 彭東 |
| 地址: | 350000 福建省福州*** | 國省代碼: | 福建;35 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 分布式 數據庫 sql 稽核 優化 建議 方法 系統 | ||
本發明公開分布式數據庫SQL稽核及優化建議方法及系統,通過客戶端捕獲每個通過數據庫接口執行的SQL語句上傳至服務端并格式化SQL語句;服務端基于格式化SQL語句查詢是否存在稽核結果;否則,將SQL語句利用語法解析器提取需要的關鍵信息;獲取分布式數據元信息并結合關鍵信息進行分布式數據庫稽核優化;對SQL語句語法改寫、SOAR優化得到SQL語句評分,客戶端獲取SQL評分和稽核結果并進行展示,判斷SQL語句評分與稽核結果是否相符合;是則,允許SQL語句執行;否則,阻止SQL語句執行。本發明將SOAR與TeleDB融合,降低分布式數據庫SQL調優難度,提升工作效率。
技術領域
本發明涉及云計算與大數據技術領域,尤其涉及分布式數據庫SQL稽核及優化建議方法。
背景技術
分布式數據庫TeleDB在各大業務系統的應用也越來越多。分布式數據庫作為基礎數據支撐層的核心部分,對整個平臺和應用的性能表現起著決定性的影響,數據庫的高可用、高并發對業務系統的日常穩定運行有著舉足輕重的影響。為了確保分布式數據庫平穩高效運行,電信企業一般投入專人對數據庫進行監控,對腳本進行稽核和優化。
需要投入較多的人力對各個系統的分布式數據庫進行監控、對腳本進行稽核和優化。研發人員對于分布式數據庫特性方面的理解和熟練程度參差不齊,編寫的腳本存在不規范、不合理、性能差等問題。
發明內容
本發明的目的在于提供分布式數據庫SQL稽核及優化建議方法及系統,加深研發人員對分布式數據庫特性的理解,提高SQL優化效率,避免數據庫出現可用性降低、并發度不夠、性能差等情況,進而提升系統穩定性。
本發明采用的技術方案是:
分布式數據庫SQL稽核及優化建議方法,其包括以下步驟:
步驟1,通過客戶端捕獲每個通過數據庫接口執行的SQL語句上傳至服務端,并格式化SQL語句;
步驟2,服務端基于格式化SQL語句查詢是否存在稽核結果;是則,執行步驟6;否則,執行步驟3;
步驟3,將SQL語句利用語法解析器提取需要的關鍵信息(表名、列名、關聯關系、條件等);
步驟4,獲取分布式數據元信息并結合關鍵信息進行分布式數據庫稽核優化;
步驟5,對SQL語句語法改寫、SOAR優化得到SQL語句評分,
步驟6,客戶端獲取SQL評分和稽核結果并進行展示,判斷SQL語句評分與稽核結果是否相符合;是則,允許SQL語句執行;否則,阻止SQL語句執行。
進一步地,步驟2中通過監聽ZooKeeper的更新元信息,獲取ZooKeeper的TeleDB配置信息以強制更新Redis稽核結果和元信息;或者通過定時刷新稽核結果以更新Redis稽核結果和元信息。
進一步地,步驟3中首先sql語句流經過詞法解析器后變成token流,語法解析器根據token流生成一棵語法樹,最后根據語法樹提取需要的關鍵信息。
進一步地,關鍵信息包括表名、列名、關聯關系、執行條件。
進一步地,步驟4中的分布式數據元信息包括MySQL元信息、Redis稽核結果及其元信息。
進一步地,步驟5的具體步驟為:
步驟5-1,對分布式規則稽核解析的每個物理真正執行的SQL語句進行基于SOAR優化建議,
步驟5-2,對可優化的SQL語句進行改寫,提高SQL語句執行效率;
步驟5-3,利用執行計劃解讀功能將route2\explain里面的信息更直白的展示出來,幫助寫出更加優質的SQL語句;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中電福富信息科技有限公司,未經中電福富信息科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202211604163.1/2.html,轉載請聲明來源鉆瓜專利網。





