當前資料存在的問題:
一、 資料量過大,資料中什麼情況都可能存在。如果說有10條資料,那麼大不了每條去逐一檢查,如果資料上到千萬級別,甚至過億,那不是手工能解決的了,必須通過工具或者程式進行處理,尤其海量的資料;
二、 軟硬體要求高,系統資源佔用率高。對海量的資料進行處理,除了好的方法,最重要的就是合理使用工具,合理分配系統資源。
三、 要求很高的處理方法和技巧。好的處理方法是一位工程師長期工作經驗的積累,也是個人的經驗的總結。沒有通用的處理方法,但有通用的原理和規則。
那麼處理海量資料有哪些經驗和技巧呢?
一、選用優秀的資料庫工具
現在的資料庫工具廠家比較多,對海量資料的處理對所使用的資料庫工具要求比較高,一般使用oracle或者db2,微軟公司最近發布的sql server 2005效能也不錯。另外在bi領域:資料庫,資料倉儲,多維資料庫,資料探勘等相關工具也要進行選擇,好的etl工具和好的olap工具都十分必要。
二、對海量資料進行分割槽操作
對海量資料進行分割槽操作十分必要,例如針對按年份訪問的資料,我們可以按年進行分割槽,不同的資料庫有不同的分割槽方式,不過處理機制大體相同。例如sql server的資料庫分割槽是將不同的資料存於不同的檔案組下,而不同的檔案組存於不同的磁碟分割槽下,這樣將資料分散開,減小磁碟i/o,減小了系統負荷,而且還可以將日誌,索引等放於不同的分割槽下。
三、建立快取機制
當資料量增加時,一般的處理工具都要考慮到快取問題。快取大小設定的好差也關係到資料處理的成敗,例如,筆者在處理2億條資料聚合操作時,快取設定為100000條/buffer,這對於這個級別的資料量是可行的。
四、分批處理
海量資料處理難因為資料量大,那麼解決海量資料處理難的問題其中乙個技巧是減少資料量。可以對海量資料分批處理,然後處理後的資料再進行合併操作,這樣逐個擊破,有利於小資料量的處理,不至於面對大資料量帶來的問題。不過一般的資料按天、按月、按年等儲存的,都可以採用先分後合的方法,對資料進行分開處理。
五、優化查詢sql語句
在對海量資料進行查詢處理過程中,查詢的sql語句的效能對查詢效率的影響是非常大的,編寫高效優良的sql指令碼和儲存過程是資料庫工作人員的職責,也是檢驗資料庫工作人員水平的乙個標準,在對sql語句的編寫過程中,例如減少關聯,少用或不用游標,設計好高效的資料庫表結構等都十分必要。
六、資料清洗和資料處理
海量資料中存在著不一致性,極有可能出現某處的瑕疵。例如,同樣的資料中的時間字段,有的可能為非標準的時間,出現的原因可能為應用程式的錯誤,系統的錯誤等,這是在進行資料處理時,必須制定強大的資料清洗規則和出錯處理機制。
七、用資料倉儲和多維資料庫儲存
資料量加大是一定要考慮olap的,傳統的報表可能5、6個小時出來結果,而基於cube的查詢可能只需要幾分鐘,因此處理海量資料的利器是olap多維分析,即建立資料倉儲,建立多維資料集,基於多維資料集進行報表展現和資料探勘等。
八、 使用取樣資料,進行資料探勘
基於海量資料的資料探勘正在逐步興起,面對著超海量的資料,一般的挖掘軟體或演算法往往採用資料抽樣的方式進行處理,這樣的誤差不會很高,大大提高了處理效率和處理的成功率。一般取樣時要注意資料的完整性,防止過大的偏差。
海量資料是發展趨勢,對資料分析和挖掘也越來越重要,從海量資料中提取有用資訊重要而緊迫,這便要求處理要準確,精度要高,而且處理時間要短,得到有價值資訊要快,所以,對海量資料的研究很有前途,也很值得進行廣泛深入的研究。
Oracle服務消失如何處理?
這時需要重新建立乙個服務 具體命令 oradim new sid orcl startmode auto pfile e oracle product 10.2.0 admin orcl pfile init.ora.5222010105723 此命令與dbca不同,不建立例項,只是註冊服務。ora...
羅強 騰訊新聞如何處理海量商業化資料?
這部分詳細地講解整個資料上報體系。目前資料上報會根據資料來源進行分類上報。資料來源主要分為四大類 實時計算架構整體上選擇lamda架構,ods層到dwd層資料的處理,實時和離線部分是公用的,也體現了流批一體的概念。下面就分模組介紹實時計算部分的整體架構。dwd dwd層的設計是為了減少下游頻繁對od...
Oracle 表空間超標如何處理
首先要查詢表空間,可以乙個個查,也可以一起查詢,找到自己的表空間資料資訊 尤其要找到 表空間具體名稱 查詢語句如下 select upper f.tablespace name 表空間名 d.tot grootte mb 表空間大小 m d.tot grootte mb f.total bytes ...