「分散式技術專題」SQL 解析的 AP/TP 判別
通常 SQL語句可以分為分為四大類: 資料查詢語言 DQL,資料操縱語言DML,資料定義語言DDL,資料控制語言DCL。
但在資料的操作上,可以根據 SQL對於IO、CPU、記憶體等資源的消耗可以分為 AP的SQL和TP的SQL。
通常情況下單個 TP的SQL語句對於資源的消耗是非常的少的。而AP的SQL會消耗量的IO、記憶體、CPU等資源。過程如下圖:
ap_tp_decide
SQL的判別可以從幾個點入手:
1)基於規則的判別。
SQL語法可以解析為抽象語法解析樹,透過觀察者模型對語法解析數進行規則分析,提取出SQL語法的關鍵資訊點可以進行簡單的做甄別出SQL的類別。如TP 類SQL會有事務級別的插入、修改、刪除等操作,也會有指定條件的簡單查詢等操。AP類SQL通常會有大量的分類統計與語法巢狀,根據類似SQL的規則的甄別可以通常可以判斷出70%左右的SQL的類別。對於無法做到甄別的可以再透過演算法模型做進一步判別
2)基於演算法模型的判別。
基於演算法模型的判別需要從幾個步驟入手:訓練集、驗證集資料準備與標註、特徵變數處理、訓練模型選擇、模型引數最佳化、驗證準確性、根據驗證準確性做進一步最佳化。
訓練集、驗證集準備:
開啟資料庫的日誌記錄功能,把 SQL語句以及對應的資源消耗等記錄記錄下來,用做演算法模型需要使用的資料,並把資料分成訓練集合驗證集。
特徵變數處理:
可以對資料的特徵變數進行進一步加工處理,如對 SQL可以進一步處理為語法樹,根據語法樹展開放入到特徵變數中去。
訓練模型選擇:
本次做的處理是分類模型,是對 SQL語句或者SQL解析後的語法樹進行分類,所以我們可以選擇分類模型來處理這個事情,但由於資料庫對於效能要求很高,所以在選擇時也要從模型呼叫的效能做為考慮。
模型引數最佳化:
通常指的就是模型調參,這個是一個演算法模型的常規做法根據不同的引數進行最佳化。
驗證準確性:
把資料代入到驗證集中對資料做進一步校驗,驗證演算法的準確度。
以上為 SQL 解析的 AP/TP 判別, 「分散式技術專題」是國產資料庫 hubble 團隊精心整編,專題會持續更新,歡迎大家保持關注。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70026685/viewspace-2935007/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 「分散式技術專題」剖析一個SQL的解析及執行過程分散式SQL
- 「分散式技術專題」常用的 SQL 運算元介紹分散式SQL
- 「分散式技術專題」副本機制分散式
- 「分散式技術專題」故障恢復分散式
- 「分散式技術專題」基於代價解析的最優路徑規劃分散式
- 「分散式技術專題」事務基礎及特性分散式
- 「分散式技術專題」資料切分與合併分散式
- 「分散式技術專題」SQL最佳化的前置條件和最佳化技巧分享分散式SQL
- 分散式技術設計中的問題分散式
- HDFS分散式儲存的意義及技術解析分散式
- 「分散式技術專題」資料分佈(原理、資料分片)分散式
- 華為CloudNative分散式資料庫技術解析Cloud分散式資料庫
- 「分散式技術專題」資料庫常見的JOIN演算法分散式資料庫演算法
- 「分散式技術專題」基於Gossip協議的去中心服務分散式Go協議
- 「分散式技術專題」獨立儲存的優勢與劣勢分散式
- 「分散式技術專題」兩種向量化執行引擎的實現方法分散式
- 「分散式技術專題」非獨立儲存的優勢與劣勢分散式
- 「分散式技術專題」時鐘系列一:事件的因果和邏輯時鐘分散式事件
- 「分散式技術專題」併發系列一:基於加鎖的併發控制分散式
- 「分散式技術專題」併發系列二:基於時間的併發控制分散式
- 「分散式技術專題」併發系列三:樂觀併發控制之原型系統(分散式驗證)分散式原型
- 分散式技術-Zookeeper概述分散式
- 分散式技術中不可或缺的分散式互斥方案分散式
- 載均衡技術全解析:Pulsar 分散式系統的最佳實踐分散式
- 分散式 SQL 資料庫與表格最佳化技術分散式SQL資料庫
- 「分散式技術專題」去中心化服務與中心化服務的優劣分散式中心化
- 技術專題之-技術的概述
- 【分散式技術專題】「分散式技術架構」一文帶你釐清分散式事務協議及分散式一致性協議的演算法原理和核心流程機制(Paxos篇)分散式架構協議演算法
- 不同體系分散式儲存技術的技術特性分散式
- 分散式系統技術難題--異地多活分散式
- 搞懂分散式技術12:分散式ID生成方案分散式
- 搞懂分散式技術17:淺析分散式事務分散式
- 【分散式通知技術-JGroups】分散式
- 分散式儲存技術概念分散式
- 分散式賬本技術的優勢分散式
- 分散式賬本技術的應用分散式
- 分散式賬本技術的闡述分散式
- 分散式賬本技術的潛力分散式