What’s New in TiDB 3.0.0-rc.1

做者:段兵git

2019 年 5 月 10 日,TiDB 3.0.0-rc.1 版本正式推出,該版本對系統穩定性,性能,安全性,易用性等作了較多的改進,接下來逐一介紹。github

提高系統穩定性

衆所周知,數據庫的查詢計劃的穩定性相當重要,此版本採用多種優化手段促進查詢計劃的穩定性獲得進一步提高,以下:數據庫

  1. 新增 Fast Analyze 功能,使 TiDB 收集統計信息的速度有了數量級的提高,對集羣資源的消耗和生產業務的影響比普通 Analyze 方式更小。安全

  2. 新增 Incremental Analyze 功能,對於值單調增的索引可以更加方便和快速地更新其統計信息。分佈式

  3. 在 CM-Sketch 中新增 TopN 的統計信息,緩解由於 CM-Sketch 哈希衝突致使估算偏大的問題,使代價估算更加準確。函數

  4. 優化 Cost Model,利用和 RowID 列之間的相關性更加精準的估算謂詞的選擇率,使得索引選擇更加穩定和準確。性能

提高系統性能

  1. TableScan,IndexScan,Limit 算子,進一步提高 SQL 執行性能。優化

  2. TiKV 採用Iterator Key Bound Option存儲結構減小內存分配及拷貝,RocksDB 的 Column Families 共享 block cache 提高 cache命中率等手段大幅提高性能。線程

  3. TiDB Lightning encode SQL 性能提高 50%,將數據源內容解析成 TiDB 的 types.Datum,減小 encode 過程當中多餘的解析工做,使得性能獲得較大的提高。日誌

加強系統安全性

RBAC(Role-Based Access Control)基於角色的權限訪問控制是商業系統中最多見的權限管理技術之一,經過 RBAC 思想能夠構建最簡單」用戶-角色-權限「的訪問權限控制模型。RBAC 中用戶與角色關聯,權限與角色關聯,角色與權限之間通常是多對多的關係統,用戶經過成爲何樣的角色獲取該角色所擁有的權限,達到簡化權限管理的目的,經過此版本的迭代 RBAC 功能開發完成,歡迎試用。

提高產品易用性

  1. 新增 SQL 方式查詢慢查詢,豐富 TiDB 慢查詢日誌內容,如:Coprocessor 任務數,平均/最長/90% 執行/等待時間,執行/等待時間最長的 TiKV 地址,簡化慢查詢定位工做,提高產品易用性。

  2. 新增系統配置項合法性檢查,優化系統監控項等,提高產品易用性。

  3. 支持對 TableReaderIndexReaderIndexLookupReader 算子進行內存追蹤控制,對 Query 內存使用統計更加精確,能夠更好地檢測、處理對內存消耗較大的語句。

社區貢獻

V3.0.0-rc.1 版本的開發過程當中,開源社區貢獻者給予了咱們極大的支持,例如美團的同窗負責開發的 SQL Plan Management 特性對於提高產品的易用性有很大的幫助,一點資訊的陳付同窗與其餘同窗一塊兒對 TiKV 線程池進行了重構,提升了性能並下降了延遲,掌門科技的聶殿輝 同窗實現 TiKV 大量 UDF 函數幫忙 TiKV 完善 Coprocessor 功能,就再也不一一列舉。在此對各位貢獻者表示由衷的感謝。接下來咱們會開展更多的專項開發活動以及一系列面向社區的培訓課程,但願能對你們瞭解如何作分佈式數據庫有幫助。

TiDB 3.0.0-rc.1 Release Notes

https://github.com/pingcap/docs-cn/blob/master/releases/3.0.0-rc.1.md

相關文章
相關標籤/搜索