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