1. 程式人生 > >對大資料量的處理思路

對大資料量的處理思路

  最近要用程式對百萬級別的資料量進行處理,綜合性能和程式碼執行時間,來考慮如何書寫高質量的程式碼.

  首先就是讀資料的問題,由於資料量比較大,我們可以考慮根據唯一的主鍵id來取資料,這樣速度比較快,而且數量不能太大,讀取Mysql資料庫,資料超過3萬,速度就下降很明顯了.

我們根據id一次取出3000個數據進行處理,處理完,繼續讀取取出下一個3000條,這樣直到資料處理完.如果資料量小於3萬,我們可以直接全部讀出放到記憶體進行處理.

  其次是更新資料,資料量比較大,我們可以一次更新3000條資料,如果涉及到事物操作,必須是一次更新3000資料放到記憶體,然後呼叫一次事物操作資料庫,切記不能一個迴圈呼叫一次事物.這樣很耗時間和效能的。總之對於寫操作就是避免迴圈一次操作一次資料庫.就處理完一定量資料(3000-9000條資料),然後再操作資料庫.

  最後操作大批量資料時,一定要記錄日誌,保留處理資料的id,避免因程式異常斷開,造成資料更新失敗,不知道更新到哪裡了.