Re: [问题] 大数据批次更新的方式

楼主: qrtt1 (有些事,有时候。。。)   2018-10-25 15:55:45
==============================================================================
→ qrtt1: 你是打算多快!?要有个门槛出来,拿工具量一量,再来看要 10/25 00:32
→ qrtt1: 不要改它吧。你资料产出的那一端,到底每秒能生多少笔? 10/25 00:33
→ qrtt1: 你的消耗端 (mysql) 只要能承受比它高,就算达标了呗。 10/25 00:33
希望这样子的排程工作能在2小时之内完成更新60万笔资料。
==============================================================================
(60 * 10000) / (2 * 60 * 60) = 83.33333333333333
你开个 jmeter 试着 jdbc 写入一下,它有超过每秒 84 组就算合用了
(或是你打算资料的方式去打)
楼主: qrtt1 (有些事,有时候。。。)   2017-10-25 00:32:00
你是打算多快!?要有个门槛出来,拿工具量一量,再来看要不要改它吧。你资料产出的那一端,到底每秒能生多少笔?你的消耗端 (mysql) 只要能承受比它高,就算达标了呗。
作者: kentyeh (kent)   2018-10-26 11:41:00
Java来更新资料当然可以,首先用多执行绪更新是必然的,如果你的资料是Insert,MySql有Buld Insert的语法可用,再来是应用preparedstatement来更新,因为你不会想要每一句语法都compile execution plan一次,最后就是Transaction的控制,如果是AutoCommit,每句都是一个Transaction,真的是会慢到哭出来,建议每更新1千次做为一个交易,大概这样
作者: adrianshum (Alien)   2018-10-26 14:27:00
还有 JDBC 有batch update. 上面一堆都做完还是慢再来讲multi-thread 吧
楼主: qrtt1 (有些事,有时候。。。)   2018-10-26 21:20:00
楼上各位大大,不是我问的问题R
作者: adrianshum (Alien)   2018-10-27 12:09:00
XD 我知道,有人在这里回所以我也顺便回一下而已

Links booklink

Contact Us: admin [ a t ] ucptt.com