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
- 軟體相容性測試有什麼作用?相容性測試必備測試工具
- 制定測試計劃之相容性測試
- 軟體相容性測試知識分享,相容性測試有什麼作用?
- 軟體相容性測試該怎麼進行?哪些軟體測試公司可做相容性測試?
- 軟體相容性測試怎麼進行?相容性測試有什麼作用?
- MySQL MHA部署與測試-下篇MySql
- 軟體相容性測試包含哪幾種型別?相容性測試如何收費?型別
- TiDB與MySQL優化器對照TiDBMySql優化
- 使用 Horoscope 測試 TiDB 最佳化器ROSTiDB
- 【軟體測試】你最常用的web測試-瀏覽器相容性測試Web瀏覽器
- 如何做版本相容性測試
- APP相容性測試難點在哪裡?APP
- JMeter 如何與 MySQL 進行整合測試JMeterMySql
- TiDB3.0.1與3.0.2版本的TiKV當機對比測試TiDB
- 解決django 2.2與mysql相容性問題DjangoMySql
- 幾款瀏覽器相容性測試工具瀏覽器
- 阿里雲EMAS移動測試|快速掌握移動端相容性測試技巧阿里
- sysbench 測試MySQLMySql
- 智慧硬體相容性測試常見問題
- MYSQL程式碼顯示測試測試MySql
- MySQL8.0的MGR多主搭建與測試MySql
- TIDB和MySQL效能對比TiDBMySql
- MYSQL 效能測試方法 - 基準測試(benchmarking)MySql
- 明天直播:如何測試硬體裝置與龍蜥作業系統的相容性?作業系統
- TIDB 考試 參考TiDB
- 【Tpcc-mysql】Tpcc-mysql測試MySql
- openGauss MySQL相容性增強MySql
- 測試匠談 | 微信 H5 相容性測試理論和實踐經驗H5
- 軟體相容性測試的測試內容有哪些?CMA、CNAS軟體檢測機構推薦
- 海思Hi3798mv300_DDR相容性測試指南
- 阿里面試官:知道 MySQL 邏輯備份與恢復測試麼?阿里面試MySql
- TiDB與MySQL的SQL差異及執行計劃簡析TiDBMySql
- mysql簡單效能測試MySql
- MYSQL壓縮表測試MySql
- TiDB3.0.2版本某業務TiKV當機測試TiDB
- 黑盒測試、白盒測試與灰盒測試方法