分布式計算,非結(jié)構(gòu)化數(shù)據(jù)庫,分類、聚類等算法。
創(chuàng)新互聯(lián)公司主要業(yè)務(wù)有網(wǎng)站營銷策劃、成都做網(wǎng)站、成都網(wǎng)站建設(shè)、微信公眾號開發(fā)、小程序設(shè)計、H5建站、程序開發(fā)等業(yè)務(wù)。一次合作終身朋友,是我們奉行的宗旨;我們不僅僅把客戶當(dāng)客戶,還把客戶視為我們的合作伙伴,在開展業(yè)務(wù)的過程中,公司還積累了豐富的行業(yè)經(jīng)驗、成都全網(wǎng)營銷資源和合作伙伴關(guān)系資源,并逐漸建立起規(guī)范的客戶服務(wù)和保障體系。
大數(shù)據(jù)包括結(jié)構(gòu)化、半結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù),非結(jié)構(gòu)化數(shù)據(jù)越來越成為數(shù)據(jù)的主要部分。據(jù)IDC的調(diào)查報告顯示:企業(yè)中80%的數(shù)據(jù)都是非結(jié)構(gòu)化數(shù)據(jù),這些數(shù)據(jù)每年都按指數(shù)增長60%。
擴(kuò)展資料:
大數(shù)據(jù)(Big data)通常用來形容一個公司創(chuàng)造的大量非結(jié)構(gòu)化數(shù)據(jù)和半結(jié)構(gòu)化數(shù)據(jù),這些數(shù)據(jù)在下載到關(guān)系型數(shù)據(jù)庫用于分析時會花費過多時間和金錢。
大數(shù)據(jù)分析常和云計算聯(lián)系到一起,因為實時的大型數(shù)據(jù)集分析需要像MapReduce一樣的框架來向數(shù)十、數(shù)百或甚至數(shù)千的電腦分配工作。
大數(shù)據(jù)需要特殊的技術(shù),以有效地處理大量的容忍經(jīng)過時間內(nèi)的數(shù)據(jù)。適用于大數(shù)據(jù)的技術(shù),包括大規(guī)模并行處理(MPP)數(shù)據(jù)庫、數(shù)據(jù)挖掘、分布式文件系統(tǒng)、分布式數(shù)據(jù)庫、云計算平臺、互聯(lián)網(wǎng)和可擴(kuò)展的存儲系統(tǒng)。
參考資料來源:百度百科-大數(shù)據(jù)
MPP是一種進(jìn)行系統(tǒng)擴(kuò)展的方式,它由多個SMP服務(wù)器通過一定的節(jié)點互聯(lián)網(wǎng)絡(luò)進(jìn)行連接,協(xié)同工作,完成相同的任務(wù),從用戶的角度來看是一個服務(wù)器系統(tǒng)。每一個節(jié)點只能訪問自己本地資源(內(nèi)存,存儲等),是一種完全無共享結(jié)構(gòu)(Share Nothing)結(jié)構(gòu)。
而NoSql=Not Only Sql。泛指的是非關(guān)系型數(shù)據(jù)庫。大概分為四類。Key-Value存儲的數(shù)據(jù)庫,列式存儲數(shù)據(jù)庫(Hbase),文檔型數(shù)據(jù)庫和圖形數(shù)據(jù)庫。
在大數(shù)據(jù)時代,“多種架構(gòu)支持多類應(yīng)用”成為數(shù)據(jù)庫行業(yè)應(yīng)對大數(shù)據(jù)的基本思路,數(shù)據(jù)庫行業(yè)出現(xiàn)互為補充的三大陣營,適用于事務(wù)處理應(yīng)用的OldSQL、適用于數(shù)據(jù)分析應(yīng)用的NewSQL和適用于互聯(lián)網(wǎng)應(yīng)用的NoSQL。但在一些復(fù)雜的應(yīng)用場景中,單一數(shù)據(jù)庫架構(gòu)都不能完全滿足應(yīng)用場景對海量結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)的存儲管理、復(fù)雜分析、關(guān)聯(lián)查詢、實時性處理和控制建設(shè)成本等多方面的需要,因此不同架構(gòu)數(shù)據(jù)庫混合部署應(yīng)用成為滿足復(fù)雜應(yīng)用的必然選擇。不同架構(gòu)數(shù)據(jù)庫混合使用的模式可以概括為:OldSQL+NewSQL、OldSQL+NoSQL、NewSQL+NoSQL三種主要模式。下面通過三個案例對不同架構(gòu)數(shù)據(jù)庫的混合應(yīng)用部署進(jìn)行介紹。
OldSQL+NewSQL 在數(shù)據(jù)中心類應(yīng)用中混合部署
采用OldSQL+NewSQL模式構(gòu)建數(shù)據(jù)中心,在充分發(fā)揮OldSQL數(shù)據(jù)庫的事務(wù)處理能力的同時,借助NewSQL在實時性、復(fù)雜分析、即席查詢等方面的獨特優(yōu)勢,以及面對海量數(shù)據(jù)時較強的擴(kuò)展能力,滿足數(shù)據(jù)中心對當(dāng)前“熱”數(shù)據(jù)事務(wù)型處理和海量歷史“冷”數(shù)據(jù)分析兩方面的需求。OldSQL+NewSQL模式在數(shù)據(jù)中心類應(yīng)用中的互補作用體現(xiàn)在,OldSQL彌補了NewSQL不適合事務(wù)處理的不足,NewSQL彌補了OldSQL在海量數(shù)據(jù)存儲能力和處理性能方面的缺陷。
商業(yè)銀行數(shù)據(jù)中心采用OldSQL+NewSQL混合部署方式搭建,OldSQL數(shù)據(jù)庫滿足各業(yè)務(wù)系統(tǒng)數(shù)據(jù)的歸檔備份和事務(wù)型應(yīng)用,NewSQL MPP數(shù)據(jù)庫集群對即席查詢、多維分析等應(yīng)用提供高性能支持,并且通過MPP集群架構(gòu)實現(xiàn)應(yīng)對海量數(shù)據(jù)存儲的擴(kuò)展能力。
商業(yè)銀行數(shù)據(jù)中心存儲架構(gòu)
與傳統(tǒng)的OldSQL模式相比,商業(yè)銀行數(shù)據(jù)中心采用OldSQL+NewSQL混合搭建模式,數(shù)據(jù)加載性能提升3倍以上,即席查詢和統(tǒng)計分析性能提升6倍以上。NewSQL MPP的高可擴(kuò)展性能夠應(yīng)對新的業(yè)務(wù)需求,可隨著數(shù)據(jù)量的增長采用集群方式構(gòu)建存儲容量更大的數(shù)據(jù)中心。
OldSQL+NoSQL 在互聯(lián)網(wǎng)大數(shù)據(jù)應(yīng)用中混合部署
在互聯(lián)網(wǎng)大數(shù)據(jù)應(yīng)用中采用OldSQL+NoSQL混合模式,能夠很好的解決互聯(lián)網(wǎng)大數(shù)據(jù)應(yīng)用對海量結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)進(jìn)行存儲和快速處理的需求。在諸如大型電子商務(wù)平臺、大型SNS平臺等互聯(lián)網(wǎng)大數(shù)據(jù)應(yīng)用場景中,OldSQL在應(yīng)用中負(fù)責(zé)高價值密度結(jié)構(gòu)化數(shù)據(jù)的存儲和事務(wù)型處理,NoSQL在應(yīng)用中負(fù)責(zé)存儲和處理海量非結(jié)構(gòu)化的數(shù)據(jù)和低價值密度結(jié)構(gòu)化數(shù)據(jù)。OldSQL+NoSQL模式在互聯(lián)網(wǎng)大數(shù)據(jù)應(yīng)用中的互補作用體現(xiàn)在,OldSQL彌補了NoSQL在ACID特性和復(fù)雜關(guān)聯(lián)運算方面的不足,NoSQL彌補了OldSQL在海量數(shù)據(jù)存儲和非結(jié)構(gòu)化數(shù)據(jù)處理方面的缺陷。
數(shù)據(jù)魔方是淘寶網(wǎng)的一款數(shù)據(jù)產(chǎn)品,主要提供行業(yè)數(shù)據(jù)分析、店鋪數(shù)據(jù)分析。淘寶數(shù)據(jù)產(chǎn)品在存儲層采用OldSQL+NoSQL混合模式,由基于MySQL的分布式關(guān)系型數(shù)據(jù)庫集群MyFOX和基于HBase的NoSQL存儲集群Prom組成。由于OldSQL強大的語義和關(guān)系表達(dá)能力,在應(yīng)用中仍然占據(jù)著重要地位,目前存儲在MyFOX中的統(tǒng)計結(jié)果數(shù)據(jù)已經(jīng)達(dá)到10TB,占據(jù)著數(shù)據(jù)魔方總數(shù)據(jù)量的95%以上。另一方面,NoSQL作為SQL的有益補充,解決了OldSQL數(shù)據(jù)庫無法解決的全屬性選擇器等問題。
淘寶海量數(shù)據(jù)產(chǎn)品技術(shù)架構(gòu)
基于OldSQL+NoSQL混合架構(gòu)的特點,數(shù)據(jù)魔方目前已經(jīng)能夠提供壓縮前80TB的數(shù)據(jù)存儲空間,支持每天4000萬的查詢請求,平均響應(yīng)時間在28毫秒,足以滿足未來一段時間內(nèi)的業(yè)務(wù)增長需求。
NewSQL+NoSQL 在行業(yè)大數(shù)據(jù)應(yīng)用中混合部署
行業(yè)大數(shù)據(jù)與互聯(lián)網(wǎng)大數(shù)據(jù)的區(qū)別在于行業(yè)大數(shù)據(jù)的價值密度更高,并且對結(jié)構(gòu)化數(shù)據(jù)的實時處理、復(fù)雜的多表關(guān)聯(lián)分析、即席查詢、數(shù)據(jù)強一致性等都比互聯(lián)網(wǎng)大數(shù)據(jù)有更高的要求。行業(yè)大數(shù)據(jù)應(yīng)用場景主要是分析類應(yīng)用,如:電信、金融、政務(wù)、能源等行業(yè)的決策輔助、預(yù)測預(yù)警、統(tǒng)計分析、經(jīng)營分析等。
在行業(yè)大數(shù)據(jù)應(yīng)用中采用NewSQL+NoSQL混合模式,充分利用NewSQL在結(jié)構(gòu)化數(shù)據(jù)分析處理方面的優(yōu)勢,以及NoSQL在非結(jié)構(gòu)數(shù)據(jù)處理方面的優(yōu)勢,實現(xiàn)NewSQL與NoSQL的功能互補,解決行業(yè)大數(shù)據(jù)應(yīng)用對高價值結(jié)構(gòu)化數(shù)據(jù)的實時處理、復(fù)雜的多表關(guān)聯(lián)分析、即席查詢、數(shù)據(jù)強一致性等要求,以及對海量非結(jié)構(gòu)化數(shù)據(jù)存儲和精確查詢的要求。在應(yīng)用中,NewSQL承擔(dān)高價值密度結(jié)構(gòu)化數(shù)據(jù)的存儲和分析處理工作,NoSQL承擔(dān)存儲和處理海量非結(jié)構(gòu)化數(shù)據(jù)和不需要關(guān)聯(lián)分析、Ad-hoc查詢較少的低價值密度結(jié)構(gòu)化數(shù)據(jù)的工作。
當(dāng)前電信運營商在集中化BI系統(tǒng)建設(shè)過程中面臨著數(shù)據(jù)規(guī)模大、數(shù)據(jù)處理類型多等問題,并且需要應(yīng)對大量的固定應(yīng)用,以及占統(tǒng)計總數(shù)80%以上的突發(fā)性臨時統(tǒng)計(ad-hoc)需求。在集中化BI系統(tǒng)的建設(shè)中采用NewSQL+NoSQL混搭的模式,充分利用NewSQL在復(fù)雜分析、即席查詢等方面處理性能的優(yōu)勢,及NoSQL在非結(jié)構(gòu)化數(shù)據(jù)處理和海量數(shù)據(jù)存儲方面的優(yōu)勢,實現(xiàn)高效低成本。
集中化BI系統(tǒng)數(shù)據(jù)存儲架構(gòu)
集中化BI系統(tǒng)按照數(shù)據(jù)類型和處理方式的不同,將結(jié)構(gòu)化數(shù)據(jù)和非結(jié)構(gòu)化數(shù)據(jù)分別存儲在不同的系統(tǒng)中:非結(jié)構(gòu)化數(shù)據(jù)在Hadoop平臺上存儲與處理;結(jié)構(gòu)化、不需要關(guān)聯(lián)分析、Ad-hoc查詢較少的數(shù)據(jù)保存在NoSQL數(shù)據(jù)庫或Hadoop平臺;結(jié)構(gòu)化、需要關(guān)聯(lián)分析或經(jīng)常ad-hoc查詢的數(shù)據(jù),保存在NewSQL MPP數(shù)據(jù)庫中,短期高價值數(shù)據(jù)放在高性能平臺,中長期放在低成本產(chǎn)品中。
結(jié)語
當(dāng)前信息化應(yīng)用的多樣性、復(fù)雜性,以及三種數(shù)據(jù)庫架構(gòu)各自所具有的優(yōu)勢和局限性,造成任何一種架構(gòu)的數(shù)據(jù)庫都不能完全滿足應(yīng)用需求,因此不同架構(gòu)數(shù)據(jù)庫混合使用,從而彌補其他架構(gòu)的不足成為必然選擇。根據(jù)應(yīng)用場景采用不同架構(gòu)數(shù)據(jù)庫進(jìn)行組合搭配,充分發(fā)揮每種架構(gòu)數(shù)據(jù)庫的特點和優(yōu)勢,并且與其他架構(gòu)數(shù)據(jù)庫形成互補,完全涵蓋應(yīng)用需求,保證數(shù)據(jù)資源的最優(yōu)化利用,將成為未來一段時期內(nèi)信息化應(yīng)用主要采用的解決方式。
目前在國內(nèi)市場上,OldSQL主要為Oracle、IBM等國外數(shù)據(jù)庫廠商所壟斷,達(dá)夢、金倉等國產(chǎn)廠商仍處于追趕狀態(tài);南大通用憑借國產(chǎn)新型數(shù)據(jù)庫GBase 8a異軍突起,與EMC的Greenplum和HP的Vertica躋身NewSQL市場三強;NoSQL方面用戶則大多采用Hadoop開源方案。
大數(shù)據(jù)技術(shù)的體系龐大且復(fù)雜,基礎(chǔ)的技術(shù)包含數(shù)據(jù)的采集、數(shù)據(jù)預(yù)處理、分布式存儲、數(shù)據(jù)庫、數(shù)據(jù)倉庫、機器學(xué)習(xí)、并行計算、可視化等。
1、數(shù)據(jù)采集與預(yù)處理:FlumeNG實時日志收集系統(tǒng),支持在日志系統(tǒng)中定制各類數(shù)據(jù)發(fā)送方,用于收集數(shù)據(jù);Zookeeper是一個分布式的,開放源碼的分布式應(yīng)用程序協(xié)調(diào)服務(wù),提供數(shù)據(jù)同步服務(wù)。
2、數(shù)據(jù)存儲:Hadoop作為一個開源的框架,專為離線和大規(guī)模數(shù)據(jù)分析而設(shè)計,HDFS作為其核心的存儲引擎,已被廣泛用于數(shù)據(jù)存儲。HBase,是一個分布式的、面向列的開源數(shù)據(jù)庫,可以認(rèn)為是hdfs的封裝,本質(zhì)是數(shù)據(jù)存儲、NoSQL數(shù)據(jù)庫。
3、數(shù)據(jù)清洗:MapReduce作為Hadoop的查詢引擎,用于大規(guī)模數(shù)據(jù)集的并行計算。
4、數(shù)據(jù)查詢分析:Hive的核心工作就是把SQL語句翻譯成MR程序,可以將結(jié)構(gòu)化的數(shù)據(jù)映射為一張數(shù)據(jù)庫表,并提供HQL(HiveSQL)查詢功能。Spark啟用了內(nèi)存分布數(shù)據(jù)集,除了能夠提供交互式查詢外,它還可以優(yōu)化迭代工作負(fù)載。
5、數(shù)據(jù)可視化:對接一些BI平臺,將分析得到的數(shù)據(jù)進(jìn)行可視化,用于指導(dǎo)決策服務(wù)。
NUMA全稱為Non-Uniform
Memory
Access,是主流服務(wù)服務(wù)器為了提高SMP的可擴(kuò)展性而采用的一種體系結(jié)構(gòu)。主流服務(wù)器一般由多個NUMA節(jié)點組成,每個NUMA節(jié)點是一個SMP結(jié)構(gòu),一般由多個CPU組成,并且具有本地內(nèi)存和IO設(shè)備。NUMA節(jié)點可以直接訪問本地內(nèi)存,也可以通過NUMA互聯(lián)模塊訪問其他NUMA節(jié)點的內(nèi)存,但是訪問本地內(nèi)存的速度遠(yuǎn)遠(yuǎn)高于遠(yuǎn)程訪問速度,因此,開發(fā)程序要盡量減少不同NUMA節(jié)點之間的信息交互。
MPP是一種海量數(shù)據(jù)實時分析架構(gòu)。
MPP作為一種不共享架構(gòu),每個節(jié)點運行自己的操作系統(tǒng)和數(shù)據(jù)庫等,節(jié)點之間信息交互只能通過網(wǎng)絡(luò)連接實現(xiàn)。MPP架構(gòu)目前被并行數(shù)據(jù)庫廣泛采用,一般通過scan、sort和merge等操作符實時返回查詢結(jié)果。目前采用MPP架構(gòu)的實時查詢系統(tǒng)有EMC
Greenplum、HP
Vertica和Googl
e
Dremel,這些都是實時數(shù)據(jù)處理領(lǐng)域非常有特點的系統(tǒng),尤其是Dremel可以輕松擴(kuò)展到上千臺服務(wù)器,并在數(shù)秒內(nèi)完成TB級數(shù)據(jù)的分析。
Hadoop作為一個開源項目群本身和MPP并沒有什么直接關(guān)系,Hadoop中的子項目MapReduce雖然也是做數(shù)據(jù)分析處理的,但是一般只適用于離線數(shù)據(jù)分析,區(qū)別與MPP較為明顯。因為Map和Reduce兩個過程涉及到輸出文件的存取和大量網(wǎng)絡(luò)傳輸,因此往往達(dá)不到實時處理的要求。與MapReduce
相似的系統(tǒng)還有Microsoft
Dryad和Google
pregel。
綜上所述,NUMA是一種體系結(jié)構(gòu),MPP是一種實時海量數(shù)據(jù)分析架構(gòu),而Hadoop是一個關(guān)于數(shù)據(jù)存儲處理的項目群,其中的MapReduce是一種離線海量數(shù)據(jù)分析架構(gòu)。
實測對比GreenPlum和Hive,GP比Hive性能高出至少一個數(shù)量級,但是大部分場景下,依然是秒級甚至分鐘級的延遲,距離具體通常意義的實時毫秒級,差距巨大。
另外說一句,廣義的Hadoop包括
Impala,
Presto
|
Distributed
SQL
Query
Engine
for
Big
Data
這些MPP架構(gòu)的SQL引擎。Hadoop社區(qū)還在持續(xù)發(fā)展,Spark還在持續(xù)給人們帶來驚喜,開源軟件的迷人之處也在于此。
隨著大數(shù)據(jù)分析市場迅速擴(kuò)展,哪些技術(shù)是最有需求和最有增長潛力的呢?在Forrester Research的一份最新研究報告中,評估了22種技術(shù)在整個數(shù)據(jù)生命周期中的成熟度和軌跡。這些技術(shù)都對大數(shù)據(jù)的實時、預(yù)測和綜合洞察有著巨大的貢獻(xiàn)。
1. 預(yù)測分析技術(shù)
這也是大數(shù)據(jù)的主要功能之一。預(yù)測分析允許公司通過分析大數(shù)據(jù)源來發(fā)現(xiàn)、評估、優(yōu)化和部署預(yù)測模型,從而提高業(yè)務(wù)性能或降低風(fēng)險。同時,大數(shù)據(jù)的預(yù)測分析也與我們的生活息息相關(guān)。淘寶會預(yù)測你每次購物可能還想買什么,愛奇藝正在預(yù)測你可能想看什么,百合網(wǎng)和其他約會網(wǎng)站甚至試圖預(yù)測你會愛上誰……
2. NoSQL數(shù)據(jù)庫
NoSQL,Not Only SQL,意思是“不僅僅是SQL”,泛指非關(guān)系型數(shù)據(jù)庫。NoSQL數(shù)據(jù)庫提供了比關(guān)系數(shù)據(jù)庫更靈活、可伸縮和更便宜的替代方案,打破了傳統(tǒng)數(shù)據(jù)庫市場一統(tǒng)江山的格局。并且,NoSQL數(shù)據(jù)庫能夠更好地處理大數(shù)據(jù)應(yīng)用的需求。常見的NoSQL數(shù)據(jù)庫有HBase、Redis、MongoDB、Couchbase、LevelDB等。
3. 搜索和知識發(fā)現(xiàn)
支持來自于多種數(shù)據(jù)源(如文件系統(tǒng)、數(shù)據(jù)庫、流、api和其他平臺和應(yīng)用程序)中的大型非結(jié)構(gòu)化和結(jié)構(gòu)化數(shù)據(jù)存儲庫中自助提取信息的工具和技術(shù)。如,數(shù)據(jù)挖掘技術(shù)和各種大數(shù)據(jù)平臺。
4. 大數(shù)據(jù)流計算引擎
能夠過濾、聚合、豐富和分析來自多個完全不同的活動數(shù)據(jù)源的數(shù)據(jù)的高吞吐量的框架,可以采用任何數(shù)據(jù)格式?,F(xiàn)今流行的流式計算引擎有Spark Streaming和Flink。
5. 內(nèi)存數(shù)據(jù)結(jié)構(gòu)
通過在分布式計算機系統(tǒng)中動態(tài)隨機訪問內(nèi)存(DRAM)、閃存或SSD上分布數(shù)據(jù),提供低延遲的訪問和處理大量數(shù)據(jù)。
6. 分布式文件存儲
為了保證文件的可靠性和存取性能,數(shù)據(jù)通常以副本的方式存儲在多個節(jié)點上的計算機網(wǎng)絡(luò)。常見的分布式文件系統(tǒng)有GFS、HDFS、Lustre 、Ceph等。
7. 數(shù)據(jù)虛擬化
數(shù)據(jù)虛擬化是一種數(shù)據(jù)管理方法,它允許應(yīng)用程序檢索和操作數(shù)據(jù),而不需要關(guān)心有關(guān)數(shù)據(jù)的技術(shù)細(xì)節(jié),比如數(shù)據(jù)在源文件中是何種格式,或者數(shù)據(jù)存儲的物理位置,并且可以提供單個客戶用戶視圖。
8. 數(shù)據(jù)集成
用于跨解決方案進(jìn)行數(shù)據(jù)編排的工具,如Amazon Elastic MapReduce (EMR)、Apache Hive、Apache Pig、Apache Spark、MapReduce、Couchbase、Hadoop和MongoDB等。
9. 數(shù)據(jù)準(zhǔn)備
減輕采購、成形、清理和共享各種雜亂數(shù)據(jù)集的負(fù)擔(dān)的軟件,以加速數(shù)據(jù)對分析的有用性。
10. 數(shù)據(jù)質(zhì)量
使用分布式數(shù)據(jù)存儲和數(shù)據(jù)庫上的并行操作,對大型高速數(shù)據(jù)集進(jìn)行數(shù)據(jù)清理和充實的產(chǎn)品。