關(guān)于大數(shù)據(jù),你應(yīng)該知道的75個專業(yè)術(shù)語(一)
如果你剛接觸大數(shù)據(jù),你可能會覺得這個領(lǐng)域很難以理解,無從下手。不過,你可以從下面這份包含了 25 個大數(shù)據(jù)術(shù)語的清單入手,那么我們開始吧。
算法(Algorithm):算法可以理解成一種數(shù)學(xué)公式或用于進行數(shù)據(jù)分析的統(tǒng)計學(xué)過程。那么,「算法」又是何以與大數(shù)據(jù)扯上關(guān)系的呢?要知道,盡管算法這個詞是一個統(tǒng)稱,但是在這個流行大數(shù)據(jù)分析的時代,算法也經(jīng)常被提及且變得越發(fā)流行。
分析(Analytics):讓我們試想一個很可能發(fā)生的情況,你的信用卡公司給你發(fā)了封記錄著你全年卡內(nèi)資金轉(zhuǎn)賬情況的郵件,如果這個時候你拿著這張單子,開始認真研究你在食品、衣物、娛樂等方面消費情況的百分比會怎樣?你正在進行分析工作,你在從你原始的數(shù)據(jù)(這些數(shù)據(jù)可以幫助你為來年自己的消費情況作出決定)中挖掘有用的信息。那么,如果你以類似的方法在推特和臉書上對整個城市人們發(fā)的帖子進行處理會如何呢?在這種情況下,我們就可以稱之為大數(shù)據(jù)分析。所謂大數(shù)據(jù)分析,就是對大量數(shù)據(jù)進行推理并從中道出有用的信息。以下有三種不同類型的分析方法,現(xiàn)在我們來對它們分別進行梳理。
描述性分析法(Descriptive Analytics):如果你只說出自己去年信用卡消費情況為:食品方面 25%、衣物方面 35%、娛樂方面 20%、剩下 20% 為雜項開支,那么這種分析方法被稱為描述性分析法。當然,你也可以找出更多細節(jié)。
預(yù)測性分析法(Predictive Analytics):如果你對過去 5
年信用卡消費的歷史進行了分析,發(fā)現(xiàn)每年的消費情況基本上呈現(xiàn)一個連續(xù)變化的趨勢,那么在這種情況下你就可以高概率預(yù)測出:來年的消費狀態(tài)應(yīng)該和以往是類似的。這不是說我們在預(yù)測未來,而是應(yīng)該理解為,我們在「用概率預(yù)測」可能發(fā)生什么事情。在大數(shù)據(jù)的預(yù)測分析中,數(shù)據(jù)科學(xué)家可能會使用先進的技術(shù),如
機器學(xué)習(xí),和先進的統(tǒng)計學(xué)處理方法(這部分后面我們會談到)來預(yù)測天氣情況、經(jīng)濟變化等等。
規(guī)范性分析(Prescriptive Analytics):這里我們還是用信用卡轉(zhuǎn)賬的例子來理解。假如你想找出自己的哪類消費(如食品、娛樂、衣物等等)可以對整體消費產(chǎn)生巨大影響,那么基于預(yù)測性分析(Predictive
Analytics)的規(guī)范性分析法通過引入「動態(tài)指標(action)」(如減少食品或衣物或娛樂)以及對由此產(chǎn)生的結(jié)果進行分析來規(guī)定一個可以降低你整體開銷的最佳消費項。你可以將它延伸到大數(shù)據(jù)領(lǐng)域,并想象一個負責(zé)人是如何通過觀察他面前多種動態(tài)指標的影響,進而作出所謂由「數(shù)據(jù)驅(qū)動」的決策的。
批處理(Batch processing):盡管批量數(shù)據(jù)處理從大型機(mainframe)時代就已經(jīng)存在了,但是在處理大量數(shù)據(jù)的大數(shù)據(jù)時代面前,批處理獲得了更重要的意義。批量數(shù)據(jù)處理是一種處理大量數(shù)據(jù)(如在一段時間內(nèi)收集到的一堆交易數(shù)據(jù))的有效方法。
分布式計算(
Hadoop),后面會討論,就是一種專門處理批量數(shù)據(jù)的方法。
Cassandra:是一個很流行的開源數(shù)據(jù)管理系統(tǒng),由 Apache Software Foundation 開發(fā)并運營。Apache 掌握了很多大數(shù)據(jù)處理技術(shù),Cassandra 就是他們專門設(shè)計用于在分布式服務(wù)器之間處理大量數(shù)據(jù)的系統(tǒng)。
云計算(Cloud computing):雖然
云計算這個詞現(xiàn)在已經(jīng)家喻戶曉,這里大可不必贅述,但是為了全篇內(nèi)容完整性的考慮,筆者還是在這里加入了
云計算詞條。本質(zhì)上講,軟件或數(shù)據(jù)在遠程服務(wù)器上進行處理,并且這些資源可以在網(wǎng)絡(luò)上任何地方被訪問,那么它就可被稱為
云計算。
集群計算(Cluster computing):這是一個來描述使用多個服務(wù)器豐富資源的一個集群(cluster)的計算的形象化術(shù)語。更技術(shù)層面的理解是,在集群處理的語境下,我們可能會討論節(jié)點(node)、集群管理層(cluster
management layer)、負載平衡(load balancing)和并行處理(parallel processing)等等。
暗數(shù)據(jù)(Dark data):這是一個生造詞,在筆者看來,它是用來嚇唬人,讓高級管理聽上去晦澀難懂的?;径裕^暗數(shù)據(jù)指的是,那些公司積累和處理的實際上完全用不到的所有數(shù)據(jù),從這個意義上來說我們稱它們?yōu)椤赴怠沟臄?shù)據(jù),它們有可能根本不會被分析。這些數(shù)據(jù)可以是社交網(wǎng)絡(luò)中的信息,電話中心的記錄,會議記錄等等。很多估計認為所有公司的數(shù)據(jù)中有
60% 到 90% 不等可能是暗數(shù)據(jù),但實際上沒人知道。
數(shù)據(jù)科學(xué)家:數(shù)據(jù)科學(xué)家是時下非常性感的一門行業(yè)。它指那些可以通過提取原始數(shù)據(jù)(這就是我們前面所謂的
數(shù)據(jù)湖)進而理解、處理并得出洞見的這樣一批人。部分數(shù)據(jù)科學(xué)家必備的技能可以說只有超人才有:分析能力、統(tǒng)計學(xué)、計算機科學(xué)、創(chuàng)造力、講故事能力以及理解商業(yè)背景的能力。難怪這幫人工資很高。
分布式文件系統(tǒng)(Distributed File System):大數(shù)據(jù)數(shù)量太大,不能存儲在一個單獨的系統(tǒng)中,分布式文件系統(tǒng)是一個能夠把大量數(shù)據(jù)存儲在多個存儲設(shè)備上的文件系統(tǒng),它能夠減少存儲大量數(shù)據(jù)的成本和復(fù)雜度。
ETL:
ETL
代表提取、轉(zhuǎn)換和加載。它指的是這一個過程:「提取」原始數(shù)據(jù),通過清洗/豐富的手段,把數(shù)據(jù)「轉(zhuǎn)換」為「適合使用」的形式,并且將其「加載」到合適的庫中供系統(tǒng)使用。即使
ETL 源自
數(shù)據(jù)倉庫,但是這個過程在獲取數(shù)據(jù)的時候也在被使用,例如,在大數(shù)據(jù)系統(tǒng)中從外部源獲得數(shù)據(jù)。
Hadoop:當人們思考大數(shù)據(jù)的時候,他們會立即想到
Hadoop。
Hadoop
是一個開源軟件架構(gòu)(logo 是一頭可愛的大象),它由
Hadoop
分布式文件系統(tǒng)(
HDFS)構(gòu)成,它允許使用分布式硬件對大數(shù)據(jù)進行存儲、抽象和分析。如果你真的想讓某人對這個東西印象深刻,你可以跟他說
YARN(Yet Another Resource
Scheduler),顧名思義,就是另一個資源調(diào)度器。我確實被提出這些名字的人深深震撼了。提出
Hadoop 的 Apache 基金會,還負責(zé)
Pig、
Hive 以及 Spark(這都是一些軟件的名字)。你沒有被這些名字驚艷到嗎?
內(nèi)存計算(In-memory computing):通常認為,任何不涉及到 I/O
訪問的計算都會更快一些。內(nèi)存計算就是這樣的技術(shù),它把所有的工作數(shù)據(jù)集都移動到集群的集體內(nèi)存中,避免了在計算過程中向磁盤寫入中間結(jié)果。Apache
Spark 就是一個內(nèi)存計算的系統(tǒng),它相對
Mapreduce 這類 I/O 綁定的系統(tǒng)具有很大的優(yōu)勢。
物聯(lián)網(wǎng)(IoT):最新的流行語就是物聯(lián)網(wǎng)(IoT)。IoT 是嵌入式對象中(如傳感器、可穿戴設(shè)備、車、冰箱等等)的計算設(shè)備通過英特網(wǎng)的互聯(lián),它們能夠收發(fā)數(shù)據(jù)。物聯(lián)網(wǎng)生成了海量的數(shù)據(jù),帶來了很多大數(shù)據(jù)分析的機遇。
機器學(xué)習(xí)(Machine Learning):
機器學(xué)習(xí)是基于喂入的數(shù)據(jù)去設(shè)計能夠?qū)W習(xí)、調(diào)整和提升的系統(tǒng)的一種方法。使用設(shè)定的預(yù)測和統(tǒng)計算法,它們持續(xù)地逼近「正確的」行為和想法,隨著更多的數(shù)據(jù)被輸入到系統(tǒng),它們能夠進一步提升。
MapReduce:MapReduce
可能有點難以理解,我試著解釋一下吧。MapReduceMapReduce 是一個編程模型,最好的理解就是要注意到 Map 和 Reduce
是兩個不同的過程。在 MapReduce
中,程序模型首先將大數(shù)據(jù)集分割成一些小塊(這些小塊拿技術(shù)術(shù)語來講叫做「元組」,但是我描述的時候會盡量避免晦澀的技術(shù)術(shù)語),然后這些小塊會被分發(fā)給不同位置上的不同計算機(也就是說之前描述過的集群),這在
Map 過程是必須的。然后模型會收集每個計算結(jié)果,并且將它們「reduce」成一個部分。MapReduce 的數(shù)據(jù)處理模型和
Hadoop
分布式文件系統(tǒng)是分不開的。
非
關(guān)系型數(shù)據(jù)庫(No
SQL):這個詞聽起來幾乎就是「
SQL,結(jié)構(gòu)化查詢語言」的反義詞,
SQL
是傳統(tǒng)的關(guān)系型數(shù)據(jù)管理系統(tǒng)(RDBMS)必需的,但是 NO
SQL 實際上指的是「不止
SQL」。No
SQL
實際上指的是那些被設(shè)計來處理沒有結(jié)構(gòu)(或者沒有「schema」,綱要)的大量數(shù)據(jù)的數(shù)據(jù)庫管理系統(tǒng)。No
SQL
適合大數(shù)據(jù)系統(tǒng),因為大規(guī)模的非結(jié)構(gòu)化數(shù)據(jù)庫需要 No
SQL 的這種靈活性和分布式優(yōu)先的特點。
R 語言:這還有人能給一個編程語言起一個更加糟糕的名字嗎?R 語言就是這樣的語言。不過,R 語言是一個在統(tǒng)計工作中工作得很好的語言。如果你不知道 R 語言,別說你是數(shù)據(jù)科學(xué)家。因為 R 語言是數(shù)據(jù)科學(xué)中最流行的編程語言之一。
Spark(Apache Spark):Apache Spark 是一個快速的內(nèi)存數(shù)據(jù)處理引擎,它能夠有效地執(zhí)行那些需要迭代訪問數(shù)據(jù)庫的流處理、
機器學(xué)習(xí)以及
SQL 負載。Spark 通常會比我們前面討論過的 MapReduce 快好多。
流處理(Stream processing):流處理被設(shè)計來用于持續(xù)地進行流數(shù)據(jù)的處理。與流分析技術(shù)(指的是能夠持續(xù)地計算數(shù)值和
統(tǒng)計分析的能力)結(jié)合起來,流處理方法特別能夠針對大規(guī)模數(shù)據(jù)的實時處理。
結(jié)構(gòu)化 vs 非結(jié)構(gòu)化數(shù)據(jù)(Structured v Unstructured Data):這是大數(shù)據(jù)中的對比之一。結(jié)構(gòu)化數(shù)據(jù)基本上是那些能夠被放在
關(guān)系型數(shù)據(jù)庫中的任何數(shù)據(jù),以這種方式組織的數(shù)據(jù)可以與其他數(shù)據(jù)通過表格來關(guān)聯(lián)。非結(jié)構(gòu)化數(shù)據(jù)是指任何不能夠被放在
關(guān)系型數(shù)據(jù)庫中的數(shù)據(jù),例如郵件信息、社交媒體上的狀態(tài),以及人類語音等等。
CDA數(shù)據(jù)分析師考試相關(guān)入口一覽(建議收藏):
? 想報名CDA認證考試,點擊>>>
“CDA報名”
了解CDA考試詳情;
? 想學(xué)習(xí)CDA考試教材,點擊>>> “CDA教材” 了解CDA考試詳情;
? 想加入CDA考試題庫,點擊>>> “CDA題庫” 了解CDA考試詳情;
? 想了解CDA考試含金量,點擊>>> “CDA含金量” 了解CDA考試詳情;