TIDB與MYSQL相容性測試
1.建表插入匯入相容性
測試場景:
將專案的生產資料庫備份匯入到TIDB測試環境。
測試結果:
有少量建表語句不相容,建表語句需要調整,對於某些時間欄位,例如
updateTime
timestamp NOT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT ‘更新時間’
不相容。
匯入必須拆分SQL,提交的大小有限制,TIDB事務提交最大100M.匯入必須要用專業工具拆分式匯入,
匯入基本成功,匯入的時間跟MYSQL匯入時間大體一致3到4個小時。傳統的MYSQL命令匯入跟Navicat for MySQL工具匯入,遇到大表,都會失敗。
用傳統方法倒入TIDB事務提交的限制一定會遇到
我們此次用Mydumper匯入,資料匯入到TIDB基本成功。Mydumper是把SQL分割成100M以下的多個檔案進行順序倒入!
2.業務程式相容性
3.SQL效能測試
測試場景
MySQL 8.0 TIDB4.2
16核心32G記憶體虛擬機器centos7.3
1個例項 16核心32G記憶體虛擬機器centos7.3
1個例項
1.簡單SQL
結論:簡單SQL執行速度差不多,mysql略快
2.複雜關聯查詢
案例1:簡單資料關聯查詢 MYSQL快
案例2: 大資料關聯表查詢條件簡單 TIDB快
案例3: 大資料關聯查詢複雜條件 MYSQL快
案例4: 關聯子查詢,級聯更新子查詢 TIDB支援非常不好
3.事務對比
MYSQL悲觀鎖,TIDB樂觀鎖
4.測試初步結論:
TiDB較適合簡單查詢的OLTP系統:
得益於TiDB的分散式架構,併發上比mysql更優,在大表關聯查詢上有一定優勢,但是在複雜的子查詢語句表現不盡人意。
TIDB對於級聯更新語句支援非常不好。
TIDB特別適合電商專案資料量訂單龐大,統計不復雜的業務場景。
複雜統計分析的專案非常不合適,儲存過程,觸發器,自定義函式,完全都不能用。
本測試只代表個人觀點,真實的使用場景需要實際中驗證。
相關文章
- 第 54 期 TiDB SQL 相容性測試工具簡介TiDBSQL
- mysql ,tidb sysbench 測試結果記錄MySqlTiDB
- 軟體相容性測試有什麼作用?相容性測試必備測試工具
- Web相容性測試Web
- Android相容性測試Android
- 軟體相容性測試知識分享,相容性測試有什麼作用?
- 軟體相容性測試該怎麼進行?哪些軟體測試公司可做相容性測試?
- 軟體相容性測試怎麼進行?相容性測試有什麼作用?
- 軟體相容性測試包含哪幾種型別?相容性測試如何收費?型別
- MySQL MHA部署與測試-下篇MySql
- 【軟體測試】你最常用的web測試-瀏覽器相容性測試Web瀏覽器
- 使用 Horoscope 測試 TiDB 最佳化器ROSTiDB
- 如何做版本相容性測試
- APP相容性測試難點在哪裡?APP
- TiDB與MySQL優化器對照TiDBMySql優化
- JMeter 如何與 MySQL 進行整合測試JMeterMySql
- 1. mysql的安裝與測試MySql
- TiDB3.0.1與3.0.2版本的TiKV當機對比測試TiDB
- 幾款瀏覽器相容性測試工具瀏覽器
- [推薦]移動相容性測試平臺
- sysbench 測試MySQLMySql
- mysql測試shellMySql
- MYSQL程式碼顯示測試測試MySql
- 智慧硬體相容性測試常見問題
- 微軟modern.IE:網站相容性測試利器微軟網站
- 阿里雲EMAS移動測試|快速掌握移動端相容性測試技巧阿里
- MySQL8.0的MGR多主搭建與測試MySql
- 解決django 2.2與mysql相容性問題DjangoMySql
- MYSQL 寫效能測試MySql
- sysbench測試mysql oltpMySql
- MySQL基準測試MySql
- MySQL索引效能測試MySql索引
- 12款很棒的瀏覽器相容性測試工具瀏覽器
- 明天直播:如何測試硬體裝置與龍蜥作業系統的相容性?作業系統
- MYSQL 效能測試方法 - 基準測試(benchmarking)MySql
- TiDB3.0.2版本某業務TiKV當機測試TiDB
- 【Tpcc-mysql】Tpcc-mysql測試MySql
- CTS測試與GTS測試區別