在維基百科中對數(shù)據(jù)挖掘的解釋是:數(shù)據(jù)挖掘(英語:data mining)是一個跨*的計算機科學分支 它是用人工智能、機器學習、統(tǒng)計學和數(shù)據(jù)庫的交叉方法在相對較大型的數(shù)據(jù)集中發(fā)現(xiàn)模式的計算過程。數(shù)據(jù)挖掘過程的總體目標是從一個數(shù)據(jù)集中提取信息,并將其轉換成可理解的結構,以進一步使用。以下是小編為你整理的零基礎學大數(shù)據(jù) ?
分類。分類是找出數(shù)據(jù)庫中一組數(shù)據(jù)對象的共同特點并按照分類模式將其劃分為不同的類,其目的是通過分類模型,將數(shù)據(jù)庫中的數(shù)據(jù)項映射到某個給定的類別。 ?
回歸分析?;貧w分析方法反映的是事務數(shù)據(jù)庫中屬性值在時間上的特征,產(chǎn)生一個將數(shù)據(jù)項映射到一個實值預測變量的函數(shù),發(fā)現(xiàn)變量或屬性間的依賴關系,其主要研究問題包括數(shù)據(jù)序列的趨勢特征、數(shù)據(jù)序列的預測以及數(shù)據(jù)間的相關關系等。
?
聚類。聚類分析是把一組數(shù)據(jù)按照相似性和差異性分為幾個類別,其目的是使得屬于同一類別的數(shù)據(jù)間的相似性盡可能大,不同類別中的數(shù)據(jù)間的相似性盡可能小。 ?
關聯(lián)規(guī)則。關聯(lián)規(guī)則是描述數(shù)據(jù)庫中數(shù)據(jù)項之間所存在的關系的規(guī)則,即根據(jù)一個事務中某些項的出現(xiàn)可導出另一些項在同一事務中也出現(xiàn),即隱藏在數(shù)據(jù)間的關聯(lián)或相互關系。 ?
導入/預處理 ?
雖然采集端本身會有很多數(shù)據(jù)庫,但是如果要對這些海量數(shù)據(jù)進行有效的分析,還是應該將這些來自前端的數(shù)據(jù)導入到一個集中的大型分布式數(shù)據(jù)庫,或者分布式存儲集群,并且可以在導入基礎上做一些簡單的清洗和預處理工作。也有一些用戶會在導入時使用來自Twitter的Storm來對數(shù)據(jù)進行流式計算,來滿足部分業(yè)務的實時計算需求。導入與預處理過程的特點和挑戰(zhàn)主要是導入的數(shù)據(jù)量大,每秒鐘的導入量經(jīng)常會達到百兆,甚至千兆級別。 ?
挖掘 ?
與前面統(tǒng)計和分析過程不同的是,數(shù)據(jù)挖掘一般沒有什么預先設定好的主題,主要是在現(xiàn)有數(shù)據(jù)上面進行基于各種算法的計算,從而起到預測的效果,從而實現(xiàn)一些高級別數(shù)據(jù)分析的需求。比較典型算法有用于聚類的K-Means、用于統(tǒng)計學習的SVM和用于分類的Naive Bayes,主要使用的工具有HadoopMahout等。該過程的特點和挑戰(zhàn)主要是用于挖掘的算法很復雜,并且計算涉及的數(shù)據(jù)量和計算量都很大,還有,常用數(shù)據(jù)挖掘算法都以單線程為主。 ?
Hadoop和Hive ?
一群基于Java的工具被開發(fā)出來以滿足數(shù)據(jù)處理的巨大需求。Hadoop作為*的基于Java的框架用于批處理數(shù)據(jù)已經(jīng)點燃了大家的熱情。Hadoop比其他一些處理工具慢,但它出奇的準確,因此被廣泛用于后端分析。它和Hive——一個基于查詢并且運行在頂部的框架可以很好地結對工作。 ?
Scala ?
Scala是另一種基于Java的語言,并且和Java相同的是,它正日益成為大規(guī)模機器學習,或構建高層次算法的工具。它富有表現(xiàn)力,并且還能夠構建健壯的系統(tǒng)。 ?
“Java就像是建造時的鋼鐵,而Scala則像黏土,因為你之后可以將之放入窯內(nèi)轉變成鋼鐵,”Driscoll說。
?
Kafka和Storm ?
那么,當你需要快速實時的分析時又該怎么辦呢?Kafka會成為你的好朋友。它大概5年前就已經(jīng)出現(xiàn)了,但是直到最近才成為流處理的流行框架。 ?
Kafka,誕生于LinkedIn內(nèi)部,是一個超快速的查詢消息系統(tǒng)。Kafka的缺點?好吧,它太快了。在實時操作時會導致自身出錯,并且偶爾地會遺漏東西。 ?
“有精度和速度之間有一個權衡,”Driscoll說, “因此,硅谷所有的大型高科技公司都會使用兩條管道:Kafka或Storm用于實時處理,然后Hadoop用于批處理系統(tǒng),此時雖然是緩慢的但超級準確?!? ?
Storm是用Scala編寫的另一個框架,它在硅谷中因為流處理而受到了大量的青睞。它被Twitter納入其中,勿庸置疑的,這樣一來,Twitter就能在快速事件處理中得到巨大的裨益。 ?
Spark(內(nèi)存DAG計算模型) ?
Spark是一個Apache項目,它被標榜為“快如閃電的集群計算”。它擁有一個繁榮的開源社區(qū),并且是目前最活躍的Apache項目。 ?
最早Spark是UC Berkeley AMP lab所開源的類Hadoop MapReduce的通用的并行計算框架。 ?
Spark提供了一個更快、更通用的數(shù)據(jù)處理平臺。和Hadoop相比,Spark可以讓你的程序在內(nèi)存中運行時速度提升100倍,或者在磁盤上運行時速度提升10倍 ?
Giraph(圖計算模型) ?
Apache Giraph是一個可伸縮的分布式迭代圖處理系統(tǒng), 基于Hadoop平臺,靈感來自 BSP (bulk synchronous parallel) 和 Google 的 Pregel。 ?
最早出自雅虎。雅虎在開發(fā)Giraph時采用了Google工程師2010年發(fā)表的論文《Pregel:大規(guī)模圖表處理系統(tǒng)》中的原理。后來,雅虎將Giraph捐贈給Apache軟件基金會。 ?
目前所有人都可以下載Giraph,它已經(jīng)成為Apache軟件基金會的開源項目,并得到Facebook的支持,獲得多方面的改進。 ?
GraphX(圖計算模型) ?
Spark GraphX*是伯克利AMPLAB的一個分布式圖計算框架項目,目前整合在spark運行框架中,為其提供BSP大規(guī)模并行圖計算能力。 ?