問題描述:
普通台式機,采集數據,表中已經有>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。