1.我现在使用jdbc查出所有需要插入的数据,然后获取其中需要的数据,循环遍历updatae进入对应的表中,就是执行一个insert或者update语句,然后结束,这样就完成了一条。现在我有20W条。
2.现在的速度大概在一秒2-3条左右,感觉太慢了,想更快一点!
3.求大神知道方案,多线程好像在同一个机子操作同一个表好像没啥效率提升。只要能快点的方案都行,求解了!
4.小弟再次谢谢了!
8 个解决方案
#2
2楼的那个我百度过,好像同一台机子好像效果不大,有人发帖测试了的
#3
用的什么数据库呢?如果是mysql,需要在url上加rewriteBatchedStatements=true参数batch update才会起作用。
#5
我是直接开了10个线程去跑,下班前能跑完。。。。不知道这样合适不合适,效果是可以达到,前辈们指点
#7
时间要那么久真心,没找到解决办法,我的插入不是单纯的插入有好几步:
1.查询出需要update的ID
2.根据id的某项截取字符串至需要的,传出结果作为参数
3.根据传出的参数再进行update,条件就是前面的id,修改项就是前面截取的参数。
这样才算一个完整的流程,可能旧了点,对数据库操作一个循环中就有两次
1.查询出需要update的ID
2.根据id的某项截取字符串至需要的,传出结果作为参数
3.根据传出的参数再进行update,条件就是前面的id,修改项就是前面截取的参数。
这样才算一个完整的流程,可能旧了点,对数据库操作一个循环中就有两次
#8
写到存储过程中呢?其次你这个你得找到那个地方出现效率问题, 比如查询效率呢,
或者其他地方呢,你这个里面还涉及到其他业务的逻辑。
执行那么久是麻烦的。
或者其他地方呢,你这个里面还涉及到其他业务的逻辑。
执行那么久是麻烦的。
#1
#2
2楼的那个我百度过,好像同一台机子好像效果不大,有人发帖测试了的
#3
用的什么数据库呢?如果是mysql,需要在url上加rewriteBatchedStatements=true参数batch update才会起作用。
#4
#5
我是直接开了10个线程去跑,下班前能跑完。。。。不知道这样合适不合适,效果是可以达到,前辈们指点
#6
#7
时间要那么久真心,没找到解决办法,我的插入不是单纯的插入有好几步:
1.查询出需要update的ID
2.根据id的某项截取字符串至需要的,传出结果作为参数
3.根据传出的参数再进行update,条件就是前面的id,修改项就是前面截取的参数。
这样才算一个完整的流程,可能旧了点,对数据库操作一个循环中就有两次
1.查询出需要update的ID
2.根据id的某项截取字符串至需要的,传出结果作为参数
3.根据传出的参数再进行update,条件就是前面的id,修改项就是前面截取的参数。
这样才算一个完整的流程,可能旧了点,对数据库操作一个循环中就有两次
#8
写到存储过程中呢?其次你这个你得找到那个地方出现效率问题, 比如查询效率呢,
或者其他地方呢,你这个里面还涉及到其他业务的逻辑。
执行那么久是麻烦的。
或者其他地方呢,你这个里面还涉及到其他业务的逻辑。
执行那么久是麻烦的。