大數據分析想必聽上去并不陌生,它的應用范圍也是十分的廣泛,幾乎各個行業領域都會有所涉及。而且大數據行業領域不僅有著一片大好的前景,而且薪資待遇方面也是十分的不錯,備受人們的矚目,很多人會選擇加入到這個行業當中,但是這么火熱的大數據分析究竟是什么呢?
一、大數據分析的定義
大數據分析是指對規模巨大的數據進行分析。大數據可以概括為5個V,數據量大(Volume)、速度快(Velocity)、類型多(Variety)、價值(Value)、真實性(Veracity)。大數據作為時下最火熱的IT行業的詞匯,隨之而來的數據倉庫、數據安全、數據分析、數據挖掘等等圍繞大數據的商業價值的利用逐漸成為行業人士爭相追捧的利潤焦點。隨著大數據時代的來臨,大數據分析也應運而生。
二、大數據分析有什么作用?
1、能夠使分析工作進行的更有條理
龐大的數據庫通常都是雜亂無章的,從表面上也看不出數據之間到底存在著哪些必然的聯系,人們在工作的過程中也很難一下子就能夠記住那么多的數據,因為這些困難將會更大程度上阻礙工作的進程,同時也能夠造成在工作處理進程上的一些混亂。而通過數據分析能夠讓數據變得可以可視化,而且更利于工作人員記住,從而更益于工作人員進行分類,這樣就會使各項工作進行的更加清晰具有條理。
2、可以使分析的結果更加準確
當數據量逐漸開始龐大時,單用眼睛看,用腦袋記是會很容易出現混亂,而且計算的結果也很容易會的出錯,有可能還會造成大量錯誤,而有了數據分析之后無論是條理上還是在層次上都會更變得加明了清晰,可以有效地確保分析結果能夠準確無誤。
3、能夠提高工作效率
當在工作中遇到幾千個甚至是幾萬個數據的時候,不僅會需要耗費大量的時間和精力來對其進行分類歸納,而且還需要在分類歸納的數據中找出數據和數據之間的一些內在關系,究竟是變量與變量間的關系,還是變量與定量間的關系,而這個關系的尋找就會需要在借助數據分析的作用。當有了數據分析,可以將數據之間的關系能夠通過用其它方式來表現出來,比如說通過圖表的變化關系從而去闡述數據之間的關系;通過
數據分析工具從而能夠找到數據之間的內在規律。這樣就能夠大大節省在工作上的時間,從而能夠更好地提高工作的效率。
三、大數據分析過程都包含了哪些內容
1、采集
大數據的采集是指利用多個數據庫來接收發自客戶端(Web、App或者傳感器形式等)的數據,并且用戶可以通過這些數據庫來進行簡單的查詢和處理工作。比如,電商會使用傳統的關系型數據庫MySQL和Oracle等來存儲每一筆事務數據,除此之外,Redis和MongoDB這樣的NoSQL數據庫也常用于數據的采集。
在大數據的采集過程中,其主要特點和挑戰是并發數高,因為同時有可能會有成千上萬的用戶來進行訪問和操作,比如火車票售票網站和淘寶,它們并發的訪問量在峰值時達到上百萬,所以需要在采集端部署大量數據庫才能支撐。并且如何在這些數據庫之間進行負載均衡和分片的確是需要深入的思考和設計。
2、導入/預處理
雖然采集端本身會有很多數據庫,但是如果要對這些海量數據進行有效的分析,還是應該將這些來自前端的數據導入到一個集中的大型分布式數據庫,或者分布式存儲集群,并且可以在導入基礎上做一些簡單的清洗和預處理工作。也有一些用戶會在導入時使用來自Twitter的Storm來對數據進行流式計算,來滿足部分業務的實時計算需求。導入與預處理過程的特點和挑戰主要是導入的數據量大,每秒鐘的導入量經常會達到百兆,甚至千兆級別。
3、統計/分析
統計與分析主要利用分布式數據庫,或者分布式計算集群來對存儲于其內的海量數據進行普通的分析和分類匯總等,以滿足大多數常見的分析需求,在這方面,一些實時性需求會用到EMC的GreenPlum、Oracle的Exadata,以及基于MySQL的列式存儲Infobright等,而一些批處理,或者基于半結構化數據的需求可以使用Hadoop。統計與分析這部分的主要特點和挑戰是分析涉及的數據量大,其對系統資源,特別是I/O會有極大的占用。
4、挖掘
與前面統計和分析過程不同的是,數據挖掘一般沒有什么預先設定好的主題,主要是在現有數據上面進行基于各種算法的計算,從而起到預測(Predict)的效果,從而實現一些高級別數據分析的需求。比較典型算法有用于聚類的Kmeans、用于統計學習的SVM和用于分類的NaiveBayes,主要使用的工具有Hadoop的Mahout等。該過程的特點和挑戰主要是用于挖掘的算法很復雜,并且計算涉及的數據量和計算量都很大,常用數據挖掘算法都以單線程為主。