MySQL 10w+數(shù)據(jù) insert 優(yōu)化

由于業(yè)務(wù)原因册踩,遇到了如題所述的業(yè)務(wù)問題,事務(wù)執(zhí)行時間在30s~50s 不等扒接,效果非常不理想

方案1. jdbc批處理

5w+ 數(shù)據(jù)測試恕齐,分別使用了mybatis insert()()(拼接xml), mybatis的批處理和 jdbc的批處理。
可以看到在jdbc執(zhí)行時間方面是差不多的剃斧,但是在方法執(zhí)行時間上杂拨,批處理要稍微快了一些,但是還是不理想

5w+ 數(shù)據(jù)測試1
5w+ 數(shù)據(jù)測試2

方案2. 優(yōu)化MySQL 參數(shù)

修改 my.ini

  • innodb_buffer_pool_size :

InnoDB, unlike MyISAM, uses a buffer pool to cache both indexes and
row data. The bigger you set this the less disk I/O is needed to
access data in tables. On a dedicated database server you may set this
parameter up to 80% of the machine physical memory size. Do not set it
too large, though, because competition of the physical memory may
cause paging in the operating system. Note that on 32bit systems you
might be limited to 2-3.5G of user level memory per process, so do not
set it too high.

Innodb的緩沖池會緩存數(shù)據(jù)和索引悯衬,設(shè)置的越大訪問表中的數(shù)據(jù)所需的磁盤I/O就越少。

修改innodb_buffer_pool_size = 512M測試一下效率,這速度簡直感人筋粗!

10w+數(shù)據(jù)測試1
  • innodb_log_buffer_size :

The size of the buffer InnoDB uses for buffering log data. As soon as
it is full, InnoDB will have to flush it to disk. As it is flushed once per second anyway, it does not make sense to have it very large
(even with long transactions).

表示InnoDB寫入到磁盤上的日志文件時使用的緩沖區(qū)的字節(jié)數(shù)策橘,默認(rèn)值為8M。當(dāng)緩沖區(qū)充滿時娜亿,InnoDB將刷新數(shù)據(jù)到磁盤丽已。由于它每秒刷新一次,所以將它設(shè)置得非常大是沒有意義的 (即使是長事務(wù))买决。

  • innodb_log_file_size :

Size of each log file in a log group. You should set the combined size
of log files to about 25%-100% of your buffer pool size to avoid
unneeded buffer pool flush activity on log file overwrite. However,
note that a larger logfile size will increase the time needed for the
recovery process.

該值越大沛婴,緩沖池中必要的檢查點(diǎn)刷新活動就會越少,節(jié)省磁盤I/ O督赤。但是越大的日志文件嘁灯,mysql的崩潰恢復(fù)就越慢

  • 設(shè)置上述兩個參數(shù)innodb_log_file_size=64M innodb_log_buffer_size=16M,效率提升的并不明顯躲舌。
10w+數(shù)據(jù)測試2

總結(jié)

    1. 數(shù)據(jù)量大時丑婿,批處理在方法執(zhí)行時間上要比 mybatis xml拼接快一點(diǎn) (批處理只編譯一條SQL,而拼接的方式SQL會很長)
    1. 性能瓶頸優(yōu)化還是要從數(shù)據(jù)庫下手没卸,目前來看MySQL 大數(shù)據(jù)量時很依賴 innodb_buffer_pool_size (緩沖池)

參考

https://my.oschina.net/realfighter/blog/368225

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末羹奉,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子约计,更是在濱河造成了極大的恐慌诀拭,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,490評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件煤蚌,死亡現(xiàn)場離奇詭異耕挨,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)铺然,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評論 3 395
  • 文/潘曉璐 我一進(jìn)店門俗孝,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人魄健,你說我怎么就攤上這事赋铝。” “怎么了沽瘦?”我有些...
    開封第一講書人閱讀 165,830評論 0 356
  • 文/不壞的土叔 我叫張陵革骨,是天一觀的道長。 經(jīng)常有香客問我析恋,道長良哲,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,957評論 1 295
  • 正文 為了忘掉前任助隧,我火速辦了婚禮筑凫,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己巍实,他們只是感情好滓技,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,974評論 6 393
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著棚潦,像睡著了一般令漂。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上丸边,一...
    開封第一講書人閱讀 51,754評論 1 307
  • 那天叠必,我揣著相機(jī)與錄音,去河邊找鬼妹窖。 笑死纬朝,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的嘱吗。 我是一名探鬼主播玄组,決...
    沈念sama閱讀 40,464評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼谒麦!你這毒婦竟也來了俄讹?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤绕德,失蹤者是張志新(化名)和其女友劉穎患膛,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體耻蛇,經(jīng)...
    沈念sama閱讀 45,847評論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡踪蹬,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,995評論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了臣咖。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片跃捣。...
    茶點(diǎn)故事閱讀 40,137評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖夺蛇,靈堂內(nèi)的尸體忽然破棺而出疚漆,到底是詐尸還是另有隱情,我是刑警寧澤刁赦,帶...
    沈念sama閱讀 35,819評論 5 346
  • 正文 年R本政府宣布娶聘,位于F島的核電站,受9級特大地震影響甚脉,放射性物質(zhì)發(fā)生泄漏丸升。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,482評論 3 331
  • 文/蒙蒙 一牺氨、第九天 我趴在偏房一處隱蔽的房頂上張望狡耻。 院中可真熱鬧墩剖,春花似錦、人聲如沸夷狰。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,023評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽孵淘。三九已至,卻和暖如春歹篓,著一層夾襖步出監(jiān)牢的瞬間瘫证,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,149評論 1 272
  • 我被黑心中介騙來泰國打工庄撮, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留背捌,地道東北人。 一個月前我還...
    沈念sama閱讀 48,409評論 3 373
  • 正文 我出身青樓洞斯,卻偏偏與公主長得像毡庆,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子烙如,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,086評論 2 355

推薦閱讀更多精彩內(nèi)容