问题描述:
普通台式机,采集数据,表中已经有>1000万数据量。
采集回来的数据插入表中的时候很慢,每条约100毫秒。
解决方法:
1、加大mysql配置中的bulk_insert_buffer_size,这个参数默认为8M
bulk_insert_buffer_size=100M
2、改写所有insert语句为insert delayed
这个insert delayed不同之处在于:立即返回结果,后台进行处理插入。
还有一个技巧是在一跳insert中插入多条数据,类似insert into tablename values('xxx','xxx'),('yyy','yyy'),('zzz','zzz')...;但是在我采集程序中改sql比较麻烦,故未采用
毛票票小编提醒:
说实话一般主要用于数据的采集入库操作,成熟的cms不建议修改,dedecms是由于本人的系统设计问题,建议使用商业版或自行建立索引等,现在大数据首选帝国cms或phpcms。