還在為MySQL填充億級測試資料煩惱?是時候試試這個工具了

背景

近日,有才出來工作1年多的開發同學給我說了這樣一個問題:畢業出來在小公司從事軟體研發工作,公司的業務資料量比較小,每天做的基本都是單執行緒操作,根本無法接觸到比較多的資料,而現在一般面試都會問些怎麼處理大資料,高併發,高效能的問題,這個要怎麼破。我回答他2個核心詞,模擬。資料為王,首先模擬的就是大資料量。

幾種方案

還在為MySQL填充億級測試資料煩惱?是時候試試這個工具了

Loadfile方案

利用python生成千萬級的txt文字資料,然後將資料匯入到MySQL資料庫。

優點: 可以自己實現。

缺點: 速度十分緩慢。

儲存過程方案

優點:儲存直接在資料庫層面,執行效率比較高。

缺點: 儲存過程的效能調校與編寫通常受限於資料庫,手寫較為繁瑣。

第三方工具

Datafaker

Datafaker是一個大批次測試資料和流測試資料的生成工具,是一個多資料來源測試資料構造工具,可以模擬生成大部分常用資料型別的資料。【推薦這種方案】。

模擬出的資料比價接近實際資料,並且速度也比較快。

資料生成步驟

1 安裝datafaker, 如果不懂的可以留言或者私信。

pip install datafaker

2 準備資料庫的元資料檔案 meta。txt

還在為MySQL填充億級測試資料煩惱?是時候試試這個工具了

如果嫌手寫麻煩,可以用我寫的工具,

讀取表裡的元資料SQL

還在為MySQL填充億級測試資料煩惱?是時候試試這個工具了

生成meta。txt

還在為MySQL填充億級測試資料煩惱?是時候試試這個工具了

執行命令

還在為MySQL填充億級測試資料煩惱?是時候試試這個工具了

測試效果 10萬條資料 花了不到1分半

還在為MySQL填充億級測試資料煩惱?是時候試試這個工具了

模擬資料展示,十分接近真實資料

還在為MySQL填充億級測試資料煩惱?是時候試試這個工具了