邁向企業級核心場景的 TiDB 5.0

隨着 2021 年春天的來臨和 PingCAP 年滿 6 週歲記念日的到來,TiDB 5.0 迎來正式 GA。通過近一年緊鑼密鼓的開發和打磨,TiDB 5.0 成爲邁向企業級核心場景的里程碑版本:TiDB 5.0 的性能和穩定性獲得顯著提高,從而具有更強大的 OLTP 金融級核心場景的服務能力;在原有 HTAP 引擎 TiFlash 的基礎上引入 MPP 架構,TiDB 使得衆多企業的實時/交互式 BI 成爲現實,爲高成長企業和數字化創新場景提供了一棧式的數據服務底座,加速帶動 HTAP 進入更多大型企業的數字化場景。算法

此外,TiDB 5.0 新增多項企業級特性,集成更豐富的大數據生態,提供更加簡易的運維體驗,幫助企業更高效地基於 TiDB 構建和擴展應用。秉持開源、開放、創新的發展路徑,TiDB 將持續爲企業構建「融合,簡化,可靠」的分佈式數據庫平臺。sql

高性能:多項性能指標實現突破

相比於 TiDB 4.0,TiDB 5.0 在性能方面取得了巨大的進步,經過提供聚簇索引異步提交事務TiFlash MPP 等功能, 在 Sysbench 和 TPC-C 等 OLTP 的基準測試中,得到 20% ~ 80% 的性能提高。基於 100 GB 數據量 TPC-H 查詢的結果顯示:TiDB 5.0 在同等資源下,MPP 引擎的整體性能是 Greenplum 6.15.0 與 Apache Spark 3.1.1 兩到三倍之間,部分查詢可達 8 倍性能差別。以下是在一些通用性能測試場景下面的數據:數據庫

配置信息

組件名稱 配置信息 數量
PD m5.xlarge (AWS) 3
TiDB c5.4xlarge (AWS) 3
TiKV i3.4xlarge (AWS) 3

負載信息

16 張表,每張表有 1000 萬行數據c#

性能數據

穩定性:衡量 TPC-C tpm-C 抖動的標準差值小於等於 2%

相比於 TiDB 4.0,TiDB 5.0 在穩定性上面取得了巨大的進步。經過優化 TiDB 調度過程當中對 I/O、網絡、CPU、內存等資源的佔用,大幅減小 QPS 和延時由於資源被搶佔而出現的性能抖動問題,在 TPC-C OLTP 的基準測試中,衡量 TPC-C tpmC 抖動標準差的值小於等於 2%。安全

配置信息

Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz 40Core 189GB Memory 3TB SSD性能優化

易用性:更精準,更高效,更全面

更精準的性能排查

用戶在排查 SQL 語句性能問題時,須要詳細的信息來判斷緣由。TiDB 5.0 經過 EXPLAIN 可查看日誌、監控等詳細信息,幫助用戶提高排查問題的效率。網絡

更高效的集羣運維

在 TiDB 5.0 中,TiUP 支持一鍵式環境檢查並給出修復建議,自動修復檢查過程當中發現的環境問題,優化了多項集羣部署的操做邏輯,便於 DBA 更快地部署標準的 TiDB 生產集羣。新版本的 TiUP 提供業務無感知的升級體驗,升級過程當中的性能抖動控制在 10~30 秒。架構

在升級 TiDB 時,新增自動捕獲並綁定查詢計劃的功能,由系統自動捕獲並綁定最近一次查詢計劃而後存儲在系統表中,確保升級過程當中的 SQL 仍然走綁定的執行計劃,併發

確保穩定性。升級完成後,DBA 能夠導出綁定的查詢計劃,分析並決策是否要刪除綁定。運維

更全面的 SQL 調優

TiDB 5.0 支持不可見索引 (Invisible Indexes),DBA 在調試和選擇相對最優的索引時,能夠經過 SQL 語句將某個索引設置成 Visible 或者 Invisible,避免執行消耗資源較多的操做,例如:DROP INDEXADD INDEX

在 TiDB 5.0 性能調優或者運維過程當中,用戶能夠根據實際須要或者基於 EXPLAIN ANALYZE 測試選擇優化過的 SQL 語句,經過 SQL BINDING 將優化過的 SQL 語句與業務代碼執行的 SQL 語句綁定,確保穩定性。

數據生態:增長多個數據遷移、數據導入、數據共享組件,方便用戶在異構環境使用 TiDB

數據遷移方面

數據遷移類工具支持 AWS S3(也包含支持 S3 協議的其餘存儲服務)做爲數據遷移的中間轉存介質,同時支持將 Aurora 快照數據直接初始化到 TiDB 中,豐富了數據從 AWS S3/Aurora 遷移到 TiDB 的選擇。

數據導入工具 TiDB Lightning 針對 DBaaS AWS T1.standard 配置(及其等同配置)的 TiDB 集羣進行了數據導入性能優化,測試結果顯示使用 TiDB Lightning 導入 1TB TPCC 數據到 TiDB,性能提高了 40%,由 254 GiB/h 提高到了 366 GiB/h。

數據共享方面

TiCDC 集成 Kafka Connect (Confluent Platform),經過 Kafka Connectors 協議,支持將 TiDB 的數據變動同步到不一樣關係型或非關係型數據庫,例如:Kafka, Hadoop, Oracle 等,幫助企業將業務數據流轉到異構數據庫,造成數據閉環。

TiCDC 支持在多套 TiDB 集羣之間相互複製數據,可用於多個 TiDB 集羣之間數據的備份、容災與數據匯聚等場景。

企業級特性:企業級特性得到總體加強

事務方面

悲觀事務模式下,若是事務所涉及到的表存在併發的 DDL 操做或者 SCHEMA VERSION 變動,系統自動將該事務的 SCHEMA VERSION 更新到最新版本,以此確保事務的成功提交。

高可用與容災

TiDB 5.0 引入 Raft Joint Consensus 算法將 Region 成員變動操做中的「添加」和「刪除」合併爲一個操做,併發送給全部成員,提高 Region 成員變動時的可用性。在變動過程當中,Region 處於中間的狀態,若是任何被修改的成員失敗,系統仍然具有高可用能力。

安全合規

爲知足企業安全合規例如《通用數據保護條例》(GDPR) 的要求,TiDB 在輸出錯誤信息和日誌信息時,支持對敏感信息(例如身份證信息、信用卡號等)進行脫敏處理,避免敏感信息泄露。

此外,新版本進一步優化了內存管理模塊,跟蹤統計聚合函數的內存使用狀況,從而下降系統 OOM 的風險。在 SQL 功能方面,TiDB 5.0 支持 INTERSECTEXCEPT 操做符、支持 List 和 List Column 分區表,在字符集和排序規則方面支持 utf8mb4_unicode_ciutf8_unicode_ci 排序規則。

總結

做爲企業級開源分佈式數據庫,TiDB 5.0 在性能、穩定性、易用性、高可用與安全合規等方面都取得了巨大的進步,並增長了多個企業級特性,在 OLTP Scale 的基礎之上實現了一棧式數據實時分析的需求,將帶動企業用戶藉助加強性 HTAP 的能力,加速推動數字化轉型與升級。

今天就去下載吧!

TiDB 5.0 Download

TiDB 5.0 GA Release Notes

特別感謝,TiDB 的開發者社區和用戶社區的全部小夥伴爲 TiDB 發展所做出的貢獻。從 TiDB 4.0 發佈以來總計有 538 位 Contributor 提交了 12513 個 PR 幫助咱們一塊兒完成企業級核心場景的里程碑版本的開發。如何讓 TiDB 在這個時代最優秀的場景中打磨從而不停的迭代和進化?咱們相信惟有極致的開放才能讓這一切變爲可能:開放的源代碼,開放的社區,開放的生態和開放的心態!

相關文章
相關標籤/搜索