大數據是如何進行分析的

  隨着數據量越來越大,維度越來越多,交互難度越來越大,技術難度越來越大,以人爲主,逐步向機器爲主,用戶專業程度逐步提升,門檻越來越高。企業對數據、效率要求的逐步提高,也給大數據提供了展現能力的平臺。大數據技術在各個領域都有不同程度的應用,而今天我們就一起來了解和學習一下,大數據分析過程都包含了哪些內容。

 

 

  大數據分析過程都包含了哪些內容

 

  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等。該過程的特點和挑戰主要是用於挖掘的算法很複雜,並且計算涉及的數據量和計算量都很大,常用數據挖掘算法都以單線程爲主。

 

  大數據分析處理平臺就是整合當前主流的各種具有不同側重點的大數據處理分析框架和工具,實現對數據的挖掘和分析,一個大數據分析平臺涉及到的組件衆多,如何將其有機地結合起來,完成海量數據的挖掘是一項複雜的工作。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章