六加大虛擬內存
如果系統資源有限內存提示不足則可以靠增加虛擬內存來解決筆者在實際項目中曾經遇到針對億條的數據進行處理內存為GB個P G的CPU對這麼大的數據量進行聚合操作是有問題的提示內存不足那麼采用了加大虛擬內存的方法來解決在塊磁盤分區上分別建立了個M的磁盤分區用於虛擬內存這樣虛擬的內存則增加為 * + = M解決了數據處理中的內存不足問題
七分批處理
海量數據處理難因為數據量大那麼解決海量數據處理難的問題其中一個技巧是減少數據量可以對海量數據分批處理然後處理後的數據再進行合並操作這樣逐個擊破有利於小數據量的處理不至於面對大數據量帶來的問題不過這種方法也要因時因勢進行如果不允許拆分數據還需要另想辦法不過一般的數據按天按月按年等存儲的都可以采用先分後合的方法對數據進行分開處理
八使用臨時表和中間表
數據量增加時處理中要考慮提前匯總這樣做的目的是化整為零大表變小表分塊處理完成後再利用一定的規則進行合並處理過程中的臨時表的使用和中間結果的保存都非常重要如果對於超海量的數據大表處理不了只能拆分為多個小表如果處理過程中需要多步匯總操作可按匯總步驟一步步來不要一條語句完成一口氣吃掉一個胖子
九優化查詢SQL語句
在對海量數據進行查詢處理過程中查詢的SQL語句的性能對查詢效率的影響是非常大的編寫高效優良的SQL腳本和存儲過程是數據庫工作人員的職責也是檢驗數據庫工作人員水平的一個標准在對SQL語句的編寫過程中例如減少關聯少用或不用游標設計好高效的數據庫表結構等都十分必要筆者在工作中試著對億行的數據使用游標運行個小時沒有出結果這是一定要改用程序處理了
[] [] [] [] []
From:http://tw.wingwit.com/Article/program/SQL/201311/16294.html