一、基本概念
在講什么是大數據之前,我們首先需要厘清幾個基本概念。
1.數據
關于數據的定義,大概沒有一個權威版本。為方便,此處使用一個簡單的工作定義:數據是可以獲取和存儲的信息。
直觀而言,表達某種客觀事實的數值是最容易被人們識別的數據(因為那是“數”)。但實際上,人類的一切語言文字、圖形圖畫、音像記錄,所有感官可以察覺的事物,只要能被記下來,能夠查詢到,就都是數據(data)。
不過數值是所有數據中最容易被處理的一種,許多和數據相關的概念,例如下面的數據可視化和數據分析,最早是立足于數值數據的。
傳統意義上的數據一詞,尤其是相對于今天的“大數據”的“小數據”,主要指的就是數值數據,甚至在很多情況下專指統計數值數據。這些數值數據用來描述某種客觀事物的屬性。
2.數據可視化
對應英語的data visulization(或可譯為數據展示),指通過圖表將若干數字以直觀的方式呈現給讀者。比如非常常見的餅圖、柱狀圖、走勢圖、熱點圖、K線等等,目前以二維展示為主,不過越來越多的三維圖像和動態圖也被用來展示數據。
3.數據分析
這一概念狹義上,指統計分析,即通過統計學手段,從數據中精煉對現實的描述。例如:針對以關系型數據庫中以table形式存儲的數據,按照某些指定的列進行分組,然后計算不同組的均值、方差、分布等。再以可視化的方式講這些計算結果呈現出來。目前很多文章中提及的數據分析,其實是包括數據可視化的。
4.數據挖掘
這個概念的定義也是眾說紛紜,落到實際,主要是在傳統統計學的基礎上,結合機器學習的算法,對數據進行更深層次的分析,并從中獲取一些傳統統計學方法無法提供的Insights(比如預測)。
簡單而言:針對某個特定問題構建一個數學模型(可以把這個模型想象成一個或多個公式),其中包含一些具體取值未知的參數。我們將收集到的相關領域的若干數據(這些數據稱為訓練數據)代入模型,通過運算(運算過程稱為訓練),得出那些參數的值。然后再用這個已經確定了參數的模型,去計算一些全新的數據,得出相應結果。這一過程叫做機器學習。
機器學習的算法紛繁復雜,最常用的主要有回歸分析、關聯規則、分類、聚類、神經網絡、決策樹等。
二、大數據和大數據分析
大數據首先是數據,其次,它是具備了某些特征的數據。目前公認的特征有四個:Volumne,Velocity,Variety,和Value,簡稱4V.
1.Volume:大量。就目前技術而言,至少TB級別以下不能成大數據。
2.Velocity:高速。1TB的數據,十分鐘處理完,叫大數據,一年處理完,就不能算“大”了。
3.Variety:多樣。就內容而言,大數據已經遠遠不局限數值,文字、圖片、語音、圖像,一切在網絡上可以傳輸顯示的信息,都屬于此列。從結構而言,和存儲在數據庫中的結構化數據不同,當前的大數據主要指半結構化和非結構化的信息,比如機器生成信息(各種日志)、自然語言等。
4. Value:價值。如果不能從中提取出價值,不能通過挖掘、分析,得到指導業務的insights,那這些數據也就沒什么用。不過現在還有另外一種提法:只要是數據就都有用,能不能獲得價值,是分析人員的能力問題。
大數據分析,顧名思義,就是將前述的數據可視化、數據分析、數據挖掘等方法作用到大數據之上。
從某種意義上講,大數據可謂機器學習的福音,很多原有的簡單粗糙的機器學習模型,僅僅因為訓練數據量級的增加就大幅提高了準確性。還有一些模型則因為準確性隨著數據量增加而增加的勢頭尤其明顯,得以脫離默默無聞而被廣泛使用。
另一方面,大數據分析對于運算量的需求激增,原有的基于單機的運算技術顯然已經不能滿足需求,這就催生了一些列新技術。
三、大數據技術
抽象而言,各種大數據技術無外乎分布式存儲 + 并行計算。具體體現為各種分布式文件系統和建立在其上的并行運算框架。這些軟件程序都部署在多個相互連通、統一管理的物理或虛擬運算節點之上,形成集群(cluster)。因此不妨說,
云計算是大數據的基礎。
下面介紹幾種當前比較流行的大數據技術:
1.Hadoop
Hadoop無疑是當前最知名的大數據技術了。
2003年到2004年間,Google發布了關于GFS、MapReduce和BigTable三篇技術論文(這幾篇論文成為了后來云計算、大數據領域發展的重要基石)。當時一位因公司倒閉賦閑在家的程序員Doug Cutting根據前兩篇論文,開發出了一個簡化的山寨版GFS – HDFS,以及基于其的MapReduce計算框架,這就是Hadoop最初版本。后來Cutting被Yahoo雇傭,得以依賴Yahoo的資源改進Hadoop,并將其貢獻給了Apache開源社區。
簡單描述Hadoop原理:數據分布式存儲,運算程序被發派到各個數據節點進行分別運算(Map),再將各個節點的運算結果進行合并歸一(Reduce),生成最終結果。相對于動輒TB級別的數據,計算程序一般在KB – MB的量級,這種移動計算不移動數據的設計節約了大量網絡帶寬和時間,并使得運算過程可以充分并行化。
在其誕生后的近10年里,Hadoop憑借其簡單、易用、高效、免費、社區支持豐富等特征成為眾多企業云計算、大數據實施的首選。
2.Storm
Hadoop雖好,卻有其“死穴”.其一:它的運算模式是批處理。這對于許多有實時性要求的業務就無法做到很好的支持。因此,Twitter推出了他們自己的基于流的運算框架--Storm.不同于Hadoop一次性處理所有數據并得出統一結果的作業(job),Storm對源源導入的數據流進行持續不斷的處理,隨時得出增量結果。
3.Spark
Hadoop的另一個致命弱點是:它的所有中間結果都需要進行硬盤存儲,I/O消耗巨大,這就使得它很不適合多次迭代的運算。而大多數機器學習算法,恰恰要求大量迭代運算。
2010年開始,UC Berkeley AMP Lab開始研發分布式運算的中間過程全部內存存儲的Spark框架,由此在迭代計算上大大提高了效率。也因此成為了Hadoop的強有力競爭者。
4.NoSQL 數據庫
NoSQL數據庫可以泛指非關系型數據庫,不過一般用來指稱那些建立在分布式文件系統(例如HDFS)之上,基于key-value對的數據管理系統。
相對于傳統的關系型數據庫,NoSQL數據庫中存儲的數據無需主鍵和嚴格定義的schema.于是,大量半結構化、非結構化數據可以在未經清洗的情況下直接進行存儲。這一點滿足了處理大量、高速、多樣的大數據的需求。當前比較流行的NoSQL數據庫有MongoDB,Redis,Cassandra,HBase等。
NoSQL并不是沒有SQL,而是不僅僅有(not only)SQL的意思。為了兼容之前許多運行在關系型數據庫上的業務邏輯,有很多在NoSQL數據庫上運行SQL的工具涌現出來,最典型的例如Hive和Pig,它們將用戶的SQL語句轉化成MapReduce作業,在Hadoop上運行。
四、和數據、大數據相關的職位
和數據、數據分析相關的職位有不少,大都不是新生事物。
1.有一個歷史悠久的職位叫“統計”.一般的農村生產隊都有統計員,工廠也有專門的統計職位。比如一個工廠里,每個車間每天都要上報各種原材料的使用、耗損情況、產品成品數,廢品數等。這些數字被匯總給統計人員,統計員會做一個表格,說明某日、月、年的成品率、成品數等等概念。雖然看起來不夠in,但實際上他們做的數據收集整理展示的工作,從根本上和現在的數據分析師是同理的。
2.另一個相對摩登一點的職位,叫做BI (business intelligence)。這個職位,其實和傳統工廠的統計差別不大,如果說有差別,就是差在數據展示上。BI都被要求使用軟件工具對數據進行整理和展示。比如,某大型生產型企業的BI,他的工作是統計該企業各種產品在各個地區的銷售信息。他每天從拿到各個銷售網點提交的excel表,把其中數據導出到數據庫里,進行一些SQL查詢,然后用可視化工具將結果生成圖形表格提交給業務人員參考。
3.還有兩個職位,一個叫做數據分析師(data analyst),另一個叫數據科學家(data scientist)。這兩個職位,在有些機構組織中,職責不同;在另一些地方,職責相同,或相似,但級別不同。對于職責不同的地方,一般數據科學家要使用機器學習的算法,而數據分析師則專注在統計。
目前數據科學家這個詞一般都和大數據綁定在一起,包括在美國,似乎一提data scientist就是做大數據的,但是實際上未必,很多有 data scientist 頭銜的人,也確實在工作中大量應用機器學習算法,但是,他們處理的并不是大數據,很可能只是幾十萬,幾百萬量級的數據庫記錄。
4.(大)數據工程師(data engineer/big data engineer)。這個職位更偏重于數據本身的處理,即大規模(TB/PB級別)數據的提取、遷移、抽取和清洗。數據工程師也可以進行數據挖掘工作,或者協助數據科學家實現算法。
5.數據質量(data quality)。擔任這個職位的,是保證各層級數據完整性和準確性的人員。他們負責制定數據完整性和準確性標準,設計檢測方法并實施檢測。
上述這些職位,主要指IT產業內的職位,其他還有一些在研究機構或者大公司研究部門進行算法優化和研究的人員,以及另一些相對低端的,手工清洗數據的勞動者(例如:在數據庫時代,手工錄入數據到數據庫的人),就都不計入此列了。
五、大數據的影響
大數據概念的興起正在對我們的社會產生多方面的影響:
1.定量分析
因“大數據”而使得人們開始關注“數據”,可謂最首要的影響。尤其對于國內而言,越來越多的決策者開始重視數據的力量,會在決斷同時參考各類統計、分析報表,而不再是憑直覺拍腦袋。
2.從必然到相關
相對于傳統的小數據統計,大數據更關注與發現事物之間的相關性,而非因果關系。人類歷經百萬年基于數據貧乏的現狀而形成的“因為……所以……”的思維習慣,在大數據時代,是否會向“……有關聯……”轉變?
3.信息安全
以今日的技術,一個人的個人信息、網頁瀏覽記錄、購物記錄、對圖書影片等內容的偏好,在瀏覽不同頁面時的行為習慣,如此種種,都可以輕易被商家或某些機構獲取。在大數據的籠罩之下,每個人都將無所遁形。那么,對于每個人本該擁有的隱私權,該如何保護?
新技術解決了許多之前無法解決的問題,然而,新生事物也帶來了新的問題。像所有技術一樣,大數據也是一把 “雙刃劍”.能否用其利除其弊,有賴于全社會的共同努力。
核心關注:拓步ERP系統平臺是覆蓋了眾多的業務領域、行業應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業務領域的管理,全面涵蓋了企業關注ERP管理系統的核心領域,是眾多中小企業信息化建設首選的ERP管理軟件信賴品牌。
轉載請注明出處:拓步ERP資訊網http://www.guhuozai8.cn/
本文標題:大數據基本概念及技術淺析
本文網址:http://www.guhuozai8.cn/html/consultation/10839717444.html