大數(shù)據(jù)時代,這十五大關(guān)鍵技術(shù)你竟不知道?
近年來,大數(shù)據(jù)來勢洶洶,滲透到各行各業(yè),帶來了一場翻天覆地的變革。讓人們越發(fā)認(rèn)識到,比掌握龐大的數(shù)據(jù)信息更重要的是掌握對含有意義的數(shù)據(jù)進(jìn)行專業(yè)化處理的技術(shù)。
大數(shù)據(jù)關(guān)鍵技術(shù)涵蓋從數(shù)據(jù)存儲、處理、應(yīng)用等多方面的技術(shù),根據(jù)大數(shù)據(jù)的處理過程,可將其分為大數(shù)據(jù)采集、大數(shù)據(jù)預(yù)處理、大數(shù)據(jù)存儲及管理、大數(shù)據(jù)分析及挖掘等環(huán)節(jié)。
本文針對大數(shù)據(jù)的關(guān)鍵技術(shù)進(jìn)行梳理,以饗讀者。
Part 1.大數(shù)據(jù)采集
數(shù)據(jù)采集是大數(shù)據(jù)生命周期的第一個環(huán)節(jié),它通過RFID射頻數(shù)據(jù)、傳感器數(shù)據(jù)、社交網(wǎng)絡(luò)數(shù)據(jù)、移動互聯(lián)網(wǎng)數(shù)據(jù)等方式獲得各種類型的結(jié)構(gòu)化、半結(jié)構(gòu)化及非結(jié)構(gòu)化的海量數(shù)據(jù)。由于可能有成千上萬的用戶同時進(jìn)行并發(fā)訪問和操作,因此,必須采用專門針對大數(shù)據(jù)的采集方法,其主要包括以下三種:
A.數(shù)據(jù)庫采集
一些企業(yè)會使用傳統(tǒng)的關(guān)系型數(shù)據(jù)庫MySQL和Oracle等來存儲數(shù)據(jù)。談到比較多的工具有Sqoop和結(jié)構(gòu)化數(shù)據(jù)庫間的ETL工具,當(dāng)然當(dāng)前對于開源的Kettle和Talend本身也集成了大數(shù)據(jù)集成內(nèi)容,可以實(shí)現(xiàn)和hdfs,hbase和主流Nosq數(shù)據(jù)庫之間的數(shù)據(jù)同步和集成。
B.網(wǎng)絡(luò)數(shù)據(jù)采集
網(wǎng)絡(luò)數(shù)據(jù)采集主要是借助網(wǎng)絡(luò)爬蟲或網(wǎng)站公開API等方式,從網(wǎng)站上獲取數(shù)據(jù)信息的過程。通過這種途徑可將網(wǎng)絡(luò)上非結(jié)構(gòu)化數(shù)據(jù)、半結(jié)構(gòu)化數(shù)據(jù)從網(wǎng)頁中提取出來,并以結(jié)構(gòu)化的方式將其存儲為統(tǒng)一的本地數(shù)據(jù)文件。
C.文件采集
對于文件的采集,談的比較多的還是flume進(jìn)行實(shí)時的文件采集和處理,當(dāng)然對于ELK(ElasTIcsearch、Logstash、Kibana三者的組合)雖然是處理日志,但是也有基于模板配置的完整增量實(shí)時文件采集實(shí)現(xiàn)。如果是僅僅是做日志的采集和分析,那么用ELK解決方案就完全夠用的。
Part 2.大數(shù)據(jù)預(yù)處理
數(shù)據(jù)的世界是龐大而復(fù)雜的,也會有殘缺的,有虛假的,有過時的。想要獲得高質(zhì)量的分析挖掘結(jié)果,就必須在數(shù)據(jù)準(zhǔn)備階段提高數(shù)據(jù)的質(zhì)量。大數(shù)據(jù)預(yù)處理可以對采集到的原始數(shù)據(jù)進(jìn)行清洗、填補(bǔ)、平滑、合并、規(guī)格化以及檢查一致性等,將那些雜亂無章的數(shù)據(jù)轉(zhuǎn)化為相對單一且便于處理的構(gòu)型,為后期的數(shù)據(jù)分析奠定基礎(chǔ)。數(shù)據(jù)預(yù)處理主要包括:數(shù)據(jù)清理、數(shù)據(jù)集成、數(shù)據(jù)轉(zhuǎn)換以及數(shù)據(jù)規(guī)約四大部分。
A.數(shù)據(jù)清理
數(shù)據(jù)清理主要包含遺漏值處理(缺少感興趣的屬性)、噪音數(shù)據(jù)處理(數(shù)據(jù)中存在著錯誤、或偏離期望值的數(shù)據(jù))、不一致數(shù)據(jù)處理。主要的清洗工具是ETL(ExtracTIon/TransformaTIon/Loading)和Potter’s Wheel。
遺漏數(shù)據(jù)可用全局常量、屬性均值、可能值填充或者直接忽略該數(shù)據(jù)等方法處理;噪音數(shù)據(jù)可用分箱(對原始數(shù)據(jù)進(jìn)行分組,然后對每一組內(nèi)的數(shù)據(jù)進(jìn)行平滑處理)、聚類、計算機(jī)人工檢查和回歸等方法去除噪音;對于不一致數(shù)據(jù)則可進(jìn)行手動更正。
B.數(shù)據(jù)集成
數(shù)據(jù)集成是指將多個數(shù)據(jù)源中的數(shù)據(jù)合并存放到一個一致的數(shù)據(jù)存儲庫中。這一過程著重要解決三個問題:模式匹配、數(shù)據(jù)冗余、數(shù)據(jù)值沖突檢測與處理。
來自多個數(shù)據(jù)集合的數(shù)據(jù)會因?yàn)槊牟町悓?dǎo)致對應(yīng)的實(shí)體名稱不同,通常涉及實(shí)體識別需要利用元數(shù)據(jù)來進(jìn)行區(qū)分,對來源不同的實(shí)體進(jìn)行匹配。數(shù)據(jù)冗余可能來源于數(shù)據(jù)屬性命名的不一致,在解決過程中對于數(shù)值屬性可以利用皮爾遜積矩Ra,b來衡量,絕對值越大表明兩者之間相關(guān)性越強(qiáng)。數(shù)據(jù)值沖突問題,主要表現(xiàn)為來源不同的統(tǒng)一實(shí)體具有不同的數(shù)據(jù)值。
C.數(shù)據(jù)變換
數(shù)據(jù)轉(zhuǎn)換就是處理抽取上來的數(shù)據(jù)中存在的不一致的過程。數(shù)據(jù)轉(zhuǎn)換一般包括兩類:
第一類,數(shù)據(jù)名稱及格式的統(tǒng)一,即數(shù)據(jù)粒度轉(zhuǎn)換、商務(wù)規(guī)則計算以及統(tǒng)一的命名、數(shù)據(jù)格式、計量單位等;第二類,數(shù)據(jù)倉庫中存在源數(shù)據(jù)庫中可能不存在的數(shù)據(jù),因此需要進(jìn)行字段的組合、分割或計算。數(shù)據(jù)轉(zhuǎn)換實(shí)際上還包含了數(shù)據(jù)清洗的工作,需要根據(jù)業(yè)務(wù)規(guī)則對異常數(shù)據(jù)進(jìn)行清洗,保證后續(xù)分析結(jié)果的準(zhǔn)確性。
D. 數(shù)據(jù)規(guī)約
數(shù)據(jù)歸約是指在盡可能保持?jǐn)?shù)據(jù)原貌的前提下,最大限度地精簡數(shù)據(jù)量,主要包括:數(shù)據(jù)方聚集、維規(guī)約、數(shù)據(jù)壓縮、數(shù)值規(guī)約和概念分層等。數(shù)據(jù)規(guī)約技術(shù)可以用來得到數(shù)據(jù)集的規(guī)約表示,使得數(shù)據(jù)集變小,但同時仍然近于保持原數(shù)據(jù)的完整性。也就是說,在規(guī)約后的數(shù)據(jù)集上進(jìn)行挖掘,依然能夠得到與使用原數(shù)據(jù)集近乎相同的分析結(jié)果?!?/p>
Part 3.大數(shù)據(jù)存儲
大數(shù)據(jù)存儲與管理要用存儲器把采集到的數(shù)據(jù)存儲起來,建立相應(yīng)的數(shù)據(jù)庫,以便管理和調(diào)用。大數(shù)據(jù)存儲技術(shù)路線最典型的共有三種:
A. MPP架構(gòu)的新型數(shù)據(jù)庫集群
采用MPP架構(gòu)的新型數(shù)據(jù)庫集群,重點(diǎn)面向行業(yè)大數(shù)據(jù),采用Shared Nothing架構(gòu),通過列存儲、粗粒度索引等多項(xiàng)大數(shù)據(jù)處理技術(shù),再結(jié)合MPP架構(gòu)高效的分布式計算模式,完成對分析類應(yīng)用的支撐,運(yùn)行環(huán)境多為低成本 PC Server,具有高性能和高擴(kuò)展性的特點(diǎn),在企業(yè)分析類應(yīng)用領(lǐng)域獲得極其廣泛的應(yīng)用。這類MPP產(chǎn)品可以有效支撐PB級別的結(jié)構(gòu)化數(shù)據(jù)分析,這是傳統(tǒng)數(shù)據(jù)庫技術(shù)無法勝任的。對于企業(yè)新一代的數(shù)據(jù)倉庫和結(jié)構(gòu)化數(shù)據(jù)分析,目前最佳選擇是MPP數(shù)據(jù)庫。
B. 基于Hadoop的技術(shù)擴(kuò)展和封裝
基于Hadoop的技術(shù)擴(kuò)展和封裝,圍繞Hadoop衍生出相關(guān)的大數(shù)據(jù)技術(shù),應(yīng)對傳統(tǒng)關(guān)系型數(shù)據(jù)庫較難處理的數(shù)據(jù)和場景,例如針對非結(jié)構(gòu)化數(shù)據(jù)的存儲和計算等,充分利用Hadoop開源的優(yōu)勢,伴隨相關(guān)技術(shù)的不斷進(jìn)步,其應(yīng)用場景也將逐步擴(kuò)大,目前最為典型的應(yīng)用場景就是通過擴(kuò)展和封裝 Hadoop來實(shí)現(xiàn)對互聯(lián)網(wǎng)大數(shù)據(jù)存儲、分析的支撐。這里面有幾十種NoSQL技術(shù),也在進(jìn)一步的細(xì)分。對于非結(jié)構(gòu)、半結(jié)構(gòu)化數(shù)據(jù)處理、復(fù)雜的ETL流程、復(fù)雜的數(shù)據(jù)挖掘和計算模型,Hadoop平臺更擅長。
C. 大數(shù)據(jù)一體機(jī)
這是一種專為大數(shù)據(jù)的分析處理而設(shè)計的軟、硬件結(jié)合的產(chǎn)品,由一組集成的服務(wù)器、存儲設(shè)備、操作系統(tǒng)、數(shù)據(jù)庫管理系統(tǒng)以及為數(shù)據(jù)查詢、處理、分析用途而預(yù)先安裝及優(yōu)化的軟件組成,高性能大數(shù)據(jù)一體機(jī)具有良好的穩(wěn)定性和縱向擴(kuò)展性。
Part 4.大數(shù)據(jù)分析挖掘
數(shù)據(jù)的分析與挖掘主要目的是把隱藏在一大批看來雜亂無章的數(shù)據(jù)中的信息集中起來,進(jìn)行萃取、提煉,以找出潛在有用的信息和所研究對象的內(nèi)在規(guī)律的過程。主要從可視化分析、數(shù)據(jù)挖掘算法、預(yù)測性分析、語義引擎以及數(shù)據(jù)質(zhì)量和數(shù)據(jù)管理五大方面進(jìn)行著重分析。
A. 可視化分析
數(shù)據(jù)可視化主要是借助于圖形化手段,清晰有效地傳達(dá)與溝通信息。主要應(yīng)用于海量數(shù)據(jù)關(guān)聯(lián)分析,由于所涉及到的信息比較分散、數(shù)據(jù)結(jié)構(gòu)有可能不統(tǒng)一,借助功能強(qiáng)大的可視化數(shù)據(jù)分析平臺,可輔助人工操作將數(shù)據(jù)進(jìn)行關(guān)聯(lián)分析,并做出完整的分析圖表,簡單明了、清晰直觀,更易于接受。
B. 數(shù)據(jù)挖掘算法
數(shù)據(jù)挖掘算法是根據(jù)數(shù)據(jù)創(chuàng)建數(shù)據(jù)挖掘模型的一組試探法和計算。為了創(chuàng)建該模型,算法將首先分析用戶提供的數(shù)據(jù),針對特定類型的模式和趨勢進(jìn)行查找。并使用分析結(jié)果定義用于創(chuàng)建挖掘模型的最佳參數(shù),將這些參數(shù)應(yīng)用于整個數(shù)據(jù)集,以便提取可行模式和詳細(xì)統(tǒng)計信息。
大數(shù)據(jù)分析的理論核心就是數(shù)據(jù)挖掘算法,數(shù)據(jù)挖掘的算法多種多樣,不同的算法基于不同的數(shù)據(jù)類型和格式會呈現(xiàn)出數(shù)據(jù)所具備的不同特點(diǎn)。各類統(tǒng)計方法都能深入數(shù)據(jù)內(nèi)部,挖掘出數(shù)據(jù)的價值。
C. 預(yù)測性分析
大數(shù)據(jù)分析最重要的應(yīng)用領(lǐng)域之一就是預(yù)測性分析,預(yù)測性分析結(jié)合了多種高級分析功能,包括特別統(tǒng)計分析、預(yù)測建模、數(shù)據(jù)挖掘、文本分析、實(shí)體分析、優(yōu)化、實(shí)時評分、機(jī)器學(xué)習(xí)等,從而對未來,或其他不確定的事件進(jìn)行預(yù)測。
從紛繁的數(shù)據(jù)中挖掘出其特點(diǎn),可以幫助我們了解目前狀況以及確定下一步的行動方案,從依靠猜測進(jìn)行決策轉(zhuǎn)變?yōu)橐揽款A(yù)測進(jìn)行決策。它可幫助分析用戶的結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)中的趨勢、模式和關(guān)系,運(yùn)用這些指標(biāo)來洞察預(yù)測將來事件,并作出相應(yīng)的措施。
D. 語義引擎
語義引擎是是把已有的數(shù)據(jù)加上語義,可以把它想象成在現(xiàn)有結(jié)構(gòu)化或者非結(jié)構(gòu)化的數(shù)據(jù)庫上的一個語義疊加層。它語義技術(shù)最直接的應(yīng)用,可以將人們從繁瑣的搜索條目中解放出來,讓用戶更快、更準(zhǔn)確、更全面地獲得所需信息,提高用戶的互聯(lián)網(wǎng)體驗(yàn)。
E. 數(shù)據(jù)質(zhì)量管理
是指對數(shù)據(jù)從計劃、獲取、存儲、共享、維護(hù)、應(yīng)用、消亡生命周期的每個階段里可能引發(fā)的各類數(shù)據(jù)質(zhì)量問題,進(jìn)行識別、度量、監(jiān)控、預(yù)警等一系列管理活動,并通過改善和提高組織的管理水平使得數(shù)據(jù)質(zhì)量獲得進(jìn)一步提高。
對大數(shù)據(jù)進(jìn)行有效分析的前提是必須要保證數(shù)據(jù)的質(zhì)量,高質(zhì)量的數(shù)據(jù)和有效的數(shù)據(jù)管理無論是在學(xué)術(shù)研究還是在商業(yè)應(yīng)用領(lǐng)域都極其重要,各個領(lǐng)域都需要保證分析結(jié)果的真實(shí)性和價值性。
評論