基于maprenuce的大數(shù)據(jù)應(yīng)用研究_第1頁
基于maprenuce的大數(shù)據(jù)應(yīng)用研究_第2頁
基于maprenuce的大數(shù)據(jù)應(yīng)用研究_第3頁
基于maprenuce的大數(shù)據(jù)應(yīng)用研究_第4頁
基于maprenuce的大數(shù)據(jù)應(yīng)用研究_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

基于maprenuce的大數(shù)據(jù)應(yīng)用研究

1基于大數(shù)據(jù)的數(shù)據(jù)安全的研究大數(shù)據(jù)的存在是當(dāng)前科技發(fā)展的一個(gè)重要而緊迫的問題。雖然大數(shù)據(jù)不具有時(shí)代特征,但隨著人類社會(huì)的發(fā)展和人類科學(xué)技術(shù)的提高而來。大數(shù)據(jù)是個(gè)相對的概念。“大數(shù)據(jù)”取決于兩個(gè)能力:一是人類對現(xiàn)實(shí)世界的映射能力;二是人類對數(shù)據(jù)的處理能力?,F(xiàn)實(shí)世界本身具有復(fù)雜、動(dòng)態(tài)和多維的特點(diǎn),而且人類對現(xiàn)實(shí)世界的映射能力是隨著科技的發(fā)展不斷增強(qiáng),因此將現(xiàn)實(shí)世界映射為數(shù)據(jù)的能力也隨著科技的發(fā)展不斷提高。典型的實(shí)例是數(shù)碼設(shè)備和互聯(lián)網(wǎng)技術(shù)的發(fā)展直接推動(dòng)了信息爆炸:人們的所見、所聞、所思、所感通過數(shù)碼設(shè)備轉(zhuǎn)換為能夠處理的數(shù)據(jù),通過移動(dòng)通訊技術(shù)和互聯(lián)網(wǎng)技術(shù)得到廣泛的傳播,在人口基數(shù)相對穩(wěn)定的情況下所產(chǎn)生的數(shù)據(jù)量呈指數(shù)級(jí)增長趨勢。因此,大數(shù)據(jù)一直伴隨著人類社會(huì)的發(fā)展,只是在人類擁有更加強(qiáng)大的數(shù)據(jù)映射能力之后,大數(shù)據(jù)從隱性的需求變?yōu)楝F(xiàn)實(shí)的問題。計(jì)算機(jī)技術(shù)的發(fā)展極大地拓展了人類的數(shù)據(jù)處理能力。同時(shí),計(jì)算機(jī)、移動(dòng)計(jì)算和智能終端又作為新的數(shù)據(jù)源而產(chǎn)生大量的數(shù)據(jù)和計(jì)算需求。當(dāng)數(shù)據(jù)處理的需求超過計(jì)算機(jī)系統(tǒng)的處理能力時(shí),“大數(shù)據(jù)”處理就成為科學(xué)發(fā)展中一個(gè)重要的問題。現(xiàn)實(shí)世界的動(dòng)態(tài)性和多樣性決定了數(shù)據(jù)的多樣性和易變性,數(shù)據(jù)管理需要構(gòu)建在穩(wěn)定的數(shù)據(jù)特征的基礎(chǔ)之上,因此計(jì)算機(jī)的數(shù)據(jù)管理和處理能力相對數(shù)據(jù)的發(fā)展而滯后。數(shù)據(jù)庫是數(shù)據(jù)管理的典型代表性技術(shù),它的發(fā)展依賴于人們對現(xiàn)實(shí)世界的抽象能力、建模能力和結(jié)構(gòu)化數(shù)據(jù)管理能力,是在現(xiàn)實(shí)世界“大數(shù)據(jù)”之上的抽象化數(shù)據(jù)管理技術(shù)而不是直接處理多樣化的現(xiàn)實(shí)世界中原始“大數(shù)據(jù)”的技術(shù)。互聯(lián)網(wǎng)技術(shù)的發(fā)展使互聯(lián)網(wǎng)本身成為一個(gè)巨大的非結(jié)構(gòu)化數(shù)據(jù)庫,但由于缺乏統(tǒng)一的數(shù)據(jù)管理機(jī)制而使互聯(lián)網(wǎng)成為一個(gè)完全自治的、異構(gòu)的巨大數(shù)據(jù)源而非傳統(tǒng)意義的數(shù)據(jù)庫。電子商務(wù)、Web2.0、社會(huì)網(wǎng)絡(luò)等技術(shù)的發(fā)展使人們對網(wǎng)絡(luò)點(diǎn)擊行為產(chǎn)生了興趣并從中獲得巨大的價(jià)值,但這些記錄用戶行為模式的網(wǎng)絡(luò)日志數(shù)據(jù)伴隨互聯(lián)網(wǎng)規(guī)模的迅速擴(kuò)張而極大地膨脹,傳統(tǒng)的數(shù)據(jù)存儲(chǔ)、管理和處理能力難以應(yīng)對其巨量數(shù)據(jù)的管理需求。隨著智能終端、移動(dòng)計(jì)算、傳感器網(wǎng)絡(luò)、物聯(lián)網(wǎng)等技術(shù)的發(fā)展和普及,數(shù)據(jù)產(chǎn)生的來源和采集能力極大增強(qiáng),可以想象未來每一個(gè)智能終端都會(huì)成為數(shù)據(jù)網(wǎng)絡(luò)中的一個(gè)節(jié)點(diǎn),數(shù)據(jù)將隨著設(shè)備的發(fā)展而更加多樣化,數(shù)據(jù)管理將被賦予更加廣泛的含義,而數(shù)據(jù)庫也將伴隨著大數(shù)據(jù)的特性而不斷拓展其數(shù)據(jù)管理能力。簡而言之,大數(shù)據(jù)既是一個(gè)相對的概念又是一個(gè)永恒的概念,它伴隨著人類對現(xiàn)實(shí)世界認(rèn)知能力和反映能力的發(fā)展而發(fā)展,大數(shù)據(jù)管理也是一個(gè)數(shù)據(jù)管理技術(shù)與方法不斷適應(yīng)大數(shù)據(jù)特性的過程。大數(shù)據(jù)管理主要面臨兩個(gè)挑戰(zhàn):一是存儲(chǔ)能力,二是處理能力。2大數(shù)據(jù)存儲(chǔ)高德納咨詢公司(Gartner)在2001年的報(bào)告將大數(shù)據(jù)特點(diǎn)歸納為三個(gè)方面,即巨量(Volume)、速度(Velocity)和多樣性(Variety)。大數(shù)據(jù)首先體現(xiàn)在數(shù)據(jù)量的變化上:IDC預(yù)計(jì)2015年創(chuàng)建和復(fù)制的數(shù)據(jù)量將達(dá)到近8ZB(1ZB=106PB);在大數(shù)據(jù)提供了更豐富的數(shù)據(jù)來源和更龐大的樣本數(shù)據(jù)時(shí),人們并不能容忍大數(shù)據(jù)的處理響應(yīng)時(shí)間隨著數(shù)據(jù)量的增長而增加,因此大數(shù)據(jù)也意味著隨著數(shù)據(jù)量的增長,數(shù)據(jù)處理和響應(yīng)能力也需要隨之提高,從而保證數(shù)據(jù)處理延遲在人們接受的范圍之內(nèi)。大速度的速度特性要求大數(shù)據(jù)的處理能力和存儲(chǔ)能力同樣具有可擴(kuò)展性,從而保證在數(shù)據(jù)量的高速增長中保證良好的響應(yīng)性能。大數(shù)據(jù)的多樣性體現(xiàn)了數(shù)據(jù)來源的特征,來自于企業(yè)、政府部門、互聯(lián)網(wǎng)、網(wǎng)絡(luò)用戶個(gè)體等各種各樣的數(shù)據(jù)都成為數(shù)據(jù)分析的對象,在傳統(tǒng)的結(jié)構(gòu)化數(shù)據(jù)基礎(chǔ)之上,半結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)占據(jù)了越來越大的比重,因此大數(shù)據(jù)管理所面臨的重要的問題是非結(jié)構(gòu)化數(shù)據(jù)管理和多樣化數(shù)據(jù)集成。大數(shù)據(jù)存儲(chǔ)的壓力主要體現(xiàn)在三個(gè)方面:多樣化的數(shù)據(jù)如何在存儲(chǔ)模型上統(tǒng)一管理;面向巨量數(shù)據(jù)的高可擴(kuò)展性存儲(chǔ)網(wǎng)絡(luò);數(shù)據(jù)快速加載能力。2.1大數(shù)據(jù)存儲(chǔ)的理論基礎(chǔ)關(guān)系數(shù)據(jù)庫的發(fā)展源自于企業(yè)核心業(yè)務(wù),以事務(wù)處理的ACID(指數(shù)據(jù)庫事務(wù)正確執(zhí)行的四個(gè)基本要素的縮寫,包含:原子性(Atomicity)、一致性(Consistency)、隔離性(Isolation)、持久性(Durability))特性為特征,以結(jié)構(gòu)化的數(shù)據(jù)模型和規(guī)范化技術(shù)優(yōu)化存儲(chǔ)模型,通過關(guān)系模型映射現(xiàn)實(shí)世界的實(shí)體和聯(lián)系信息。因此,需要預(yù)定義模式以規(guī)范數(shù)據(jù)存儲(chǔ)模型,需要定義約束條件以保證導(dǎo)入數(shù)據(jù)的質(zhì)量,需要進(jìn)行模式優(yōu)化以保證最小的數(shù)據(jù)冗余,需要嚴(yán)格的ACID特性以保證事務(wù)的一致性,是一種強(qiáng)約束的數(shù)據(jù)管理技術(shù)。關(guān)系數(shù)據(jù)庫技術(shù)起源于上世紀(jì)七八十年代,面對昂貴的存儲(chǔ)系統(tǒng),數(shù)據(jù)庫需要實(shí)現(xiàn)模式優(yōu)化以減少數(shù)據(jù)冗余存儲(chǔ)代價(jià);本著“垃圾進(jìn),垃圾出”的思想,數(shù)據(jù)庫需要定義約束條件以保證數(shù)據(jù)質(zhì)量;數(shù)據(jù)庫面向的是生產(chǎn)系統(tǒng)的數(shù)據(jù)管理,因此細(xì)粒度的管理技術(shù)以及存儲(chǔ)優(yōu)化技術(shù)是核心。而當(dāng)前的大數(shù)據(jù)主要來自于非生產(chǎn)系統(tǒng)的互聯(lián)網(wǎng)應(yīng)用、社會(huì)網(wǎng)絡(luò)、各種傳感器設(shè)備等,存儲(chǔ)技術(shù)的發(fā)展支持大容量低成本存儲(chǔ),存儲(chǔ)的核心問題不再是存儲(chǔ)效率、成本以及未來的訪問優(yōu)化問題,首先是一個(gè)大數(shù)據(jù)快速“落地”的問題,即用最簡單、最快速的方法將大數(shù)據(jù)存儲(chǔ)下來的問題。起源于上世紀(jì)末的NoSQL技術(shù)起源于弱事務(wù)性特征的互聯(lián)網(wǎng)文檔管理和網(wǎng)頁管理,由于互聯(lián)網(wǎng)高度的自治性和無結(jié)構(gòu)性,互聯(lián)網(wǎng)數(shù)據(jù)管理不可能象關(guān)系數(shù)據(jù)庫一樣預(yù)定義統(tǒng)一的模式、數(shù)據(jù)類型和標(biāo)準(zhǔn)的關(guān)系操作,因而一種簡單的Key/value存儲(chǔ)系統(tǒng)應(yīng)運(yùn)而生。簡單來說,Key/value存儲(chǔ)系統(tǒng)是一個(gè)基于主鍵的Key/value數(shù)據(jù)庫:key存儲(chǔ)主鍵,而value存儲(chǔ)對象(物理存儲(chǔ)為byte數(shù)組)。形象地說,Key/value存儲(chǔ)就是一個(gè)貼著“key”標(biāo)簽的黑盒子。Key/value存儲(chǔ)中沒有模式,因此相應(yīng)的數(shù)據(jù)描述和數(shù)據(jù)完備性都需要程序員來定義;Key/value存儲(chǔ)中的value可以是任意數(shù)據(jù)類型,因此更加適合于大數(shù)據(jù)的多樣化需求,為非結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)提供支持;Key/value存儲(chǔ)中的數(shù)據(jù)操作沒有統(tǒng)一的接口,需要程序員自定義API來支持各自的應(yīng)用需求。Key/value首先解決的是多樣化的數(shù)據(jù)如何用Key/value存儲(chǔ)模型統(tǒng)一存儲(chǔ)的問題,而沒有象數(shù)據(jù)庫一樣面向處理的優(yōu)化而在存儲(chǔ)上定義大量的約束條件。相對于關(guān)系數(shù)據(jù)庫,Key/value存儲(chǔ)不需要預(yù)先定義模式,更適合于簡單多變數(shù)據(jù)模型上的大規(guī)模數(shù)據(jù)管理任務(wù)。它只提供最基本的數(shù)據(jù)存儲(chǔ)服務(wù),而將傳統(tǒng)關(guān)系數(shù)據(jù)庫管理系統(tǒng)所提供的模式定義、數(shù)據(jù)類型定義、數(shù)據(jù)約束、關(guān)系操作等功能從存儲(chǔ)系統(tǒng)中分離,上推到應(yīng)用層實(shí)現(xiàn)。因此,Key/value存儲(chǔ)還原了數(shù)據(jù)庫的一個(gè)樸素的思想——首先解決存儲(chǔ)問題。關(guān)系數(shù)據(jù)庫的記錄(Tuple)結(jié)構(gòu)是一種細(xì)粒度的存儲(chǔ)模型,其存儲(chǔ)訪問的最細(xì)粒度是數(shù)據(jù)項(xiàng)。通過預(yù)定義模式及數(shù)據(jù)類型來支持對記錄內(nèi)部各數(shù)據(jù)項(xiàng)的訪問,通常用于單一應(yīng)用模式下的大批量數(shù)據(jù)訪問。而Key/value存儲(chǔ)是以統(tǒng)一的key值hash映射來存儲(chǔ)value對象,相對關(guān)系數(shù)據(jù)庫的記錄結(jié)構(gòu)是一種粗粒度的存儲(chǔ)模式。支持各種數(shù)據(jù)類型的key值hash映射起到類似URL(統(tǒng)一資源定位符,統(tǒng)一標(biāo)識(shí)網(wǎng)絡(luò)中各種類型文件對象)的作用,更加適合于不同應(yīng)用之間的共享數(shù)據(jù)訪問。在Memcached、Redis等Key/value數(shù)據(jù)庫中,通過key值的hash映射能夠快速查找記錄,支持高并發(fā)查詢;而關(guān)系數(shù)據(jù)庫主要是采用索引機(jī)制來實(shí)現(xiàn)通過key值快速定位記錄所在位置,一個(gè)關(guān)系表上可以設(shè)置多個(gè)索引實(shí)現(xiàn)對不同key的檢索支持,在檢索功能上具有更細(xì)的粒度。對于互聯(lián)網(wǎng)上典型的博客、微博、社交網(wǎng)絡(luò)等應(yīng)用,文字與多媒體對象混雜的數(shù)據(jù)結(jié)構(gòu)難以應(yīng)用預(yù)定義模式的關(guān)系數(shù)據(jù)庫技術(shù)而更加適合無模式的Key/value存儲(chǔ)結(jié)構(gòu)。2.2中小型數(shù)據(jù)庫存儲(chǔ)的技術(shù)分析2012年高德納咨詢公司(Gartner)將大數(shù)據(jù)的定義更新為“BigDataarehigh-volume,high-velocity,and/orhigh-varietyinformationassetsthatrequirenewformsofprocessingtoenableenhanceddecisionmaking,insightdiscoveryandprocessoptimization.”(1)在新的定義中,數(shù)據(jù)多樣性(variety)特征被弱化,大數(shù)據(jù)在概念上更加強(qiáng)調(diào)其應(yīng)用價(jià)值,即增強(qiáng)決策支持能力,支持?jǐn)?shù)據(jù)分析和處理能力。在當(dāng)前的學(xué)術(shù)研究中,我們看到大數(shù)據(jù)分析處理技術(shù)逐漸地集中在結(jié)構(gòu)化大數(shù)據(jù)的處理優(yōu)化技術(shù)研究領(lǐng)域,即數(shù)據(jù)庫優(yōu)化技術(shù)與Key/value存儲(chǔ)與處理技術(shù)的結(jié)合。在數(shù)據(jù)倉庫應(yīng)用中,規(guī)范的模式定義和多維分析處理需要更細(xì)的數(shù)據(jù)操作粒度,分析操作中集中在少數(shù)數(shù)據(jù)列上的數(shù)據(jù)訪問特點(diǎn)需要列存儲(chǔ)技術(shù)進(jìn)一步提高數(shù)據(jù)存儲(chǔ)訪問效率。在列存儲(chǔ)中,由于各列需要集中存儲(chǔ),因此Key/value存儲(chǔ)中的各數(shù)據(jù)項(xiàng)需要投影出來并形成獨(dú)立的存儲(chǔ)列,key所對應(yīng)的不再是連續(xù)數(shù)據(jù)存儲(chǔ)的value,而是分布在不同列上的數(shù)據(jù)項(xiàng)組合。在大數(shù)據(jù)分布式存儲(chǔ)時(shí),關(guān)系數(shù)據(jù)庫通常采用分區(qū)(水平分區(qū)、垂直分區(qū)或混合分區(qū))技術(shù)實(shí)現(xiàn)對數(shù)據(jù)的邏輯劃分和分布式存儲(chǔ)。Key/value存儲(chǔ)通常采用基于chunk(數(shù)據(jù)塊,數(shù)據(jù)文件被分割為默認(rèn)大小為64MB的數(shù)據(jù)塊方式存儲(chǔ))的物理分塊存儲(chǔ)模式,復(fù)制機(jī)制也以物理chunk為基礎(chǔ)來支持容錯(cuò)功能。從實(shí)現(xiàn)技術(shù)上來看,Key/value的chunk劃分更加貼近于操作系統(tǒng)的功能,沒有象數(shù)據(jù)庫的slot(基于數(shù)據(jù)頁和數(shù)據(jù)記錄項(xiàng)的存儲(chǔ)模型)存儲(chǔ)方式那樣在數(shù)據(jù)頁內(nèi)部設(shè)置元數(shù)據(jù)和記錄指針,支持在數(shù)據(jù)頁內(nèi)數(shù)據(jù)以記錄為單位進(jìn)行定位,而是在物理存儲(chǔ)層上按照Key/value數(shù)據(jù)存儲(chǔ)順序?qū)嵑唵蔚剡M(jìn)行文件分割,并實(shí)現(xiàn)分布式存儲(chǔ);關(guān)系數(shù)據(jù)庫的分區(qū)技術(shù)實(shí)現(xiàn)了邏輯存儲(chǔ)向物理存儲(chǔ)的映射,由操作系統(tǒng)負(fù)責(zé)完成物理頁面上的訪問而在數(shù)據(jù)庫層實(shí)現(xiàn)基于模式結(jié)構(gòu)的邏輯數(shù)據(jù)劃分。對于單表簡單模式,二種存儲(chǔ)模型沒有太大的區(qū)別,而對于多表復(fù)雜模式,關(guān)系數(shù)據(jù)庫的邏輯劃分可以根據(jù)連接鍵值進(jìn)行協(xié)同分區(qū)(Co-partition,如hash分區(qū)、range分區(qū)等),保證邏輯劃分內(nèi)連接表中具有相同連接屬性值的數(shù)據(jù)分布在相同的節(jié)點(diǎn)上,從而消除節(jié)點(diǎn)間的數(shù)據(jù)訪問網(wǎng)絡(luò)延遲。對于Key/value存儲(chǔ),chunk的分布采用隨機(jī)算法,即根據(jù)兩個(gè)表的連接屬性進(jìn)行劃分后,每個(gè)表的數(shù)據(jù)chunk獨(dú)立進(jìn)行數(shù)據(jù)分布,無法保證分布到相同的節(jié)點(diǎn)上。當(dāng)采用列存儲(chǔ)模型時(shí),每個(gè)列存儲(chǔ)為獨(dú)立的文件,劃分為獨(dú)立的chunk,同樣無法保證相關(guān)列的chunk被分布到相同的節(jié)點(diǎn)上。因此,結(jié)構(gòu)化大數(shù)據(jù)管理面臨的重要技術(shù)問題是列存儲(chǔ)與多表連接模式下的協(xié)同數(shù)據(jù)分布優(yōu)化。解決列存儲(chǔ)協(xié)同分布的一個(gè)代表性技術(shù)是RCFile,RCFile以chunk為容器,內(nèi)部采用列存儲(chǔ)模型,提高了chunk內(nèi)的數(shù)據(jù)訪問效率。RCFile相當(dāng)于以chunk為單位的列存儲(chǔ)水平分片,在chunk容器內(nèi)為列存儲(chǔ)模式,相關(guān)列存儲(chǔ)在相同的chunk內(nèi),而chunk整體為分布存儲(chǔ)數(shù)據(jù)單位,不影響原來文件存儲(chǔ)系統(tǒng)的設(shè)計(jì)。Hadoop++采用分區(qū)數(shù)據(jù)并置(Copartition)技術(shù),即把需要連接的數(shù)據(jù)分區(qū)保存到同一個(gè)節(jié)點(diǎn)或者在網(wǎng)絡(luò)拓?fù)渖辖咏墓?jié)點(diǎn),以加快數(shù)據(jù)分區(qū)之間的Join操作的方法來降低連接操作的網(wǎng)絡(luò)延遲。HadoopDB則采用數(shù)據(jù)庫存儲(chǔ)引擎和關(guān)系數(shù)據(jù)庫的協(xié)同分區(qū)技術(shù)來實(shí)現(xiàn)數(shù)據(jù)分布優(yōu)化。從當(dāng)前學(xué)術(shù)界研究熱點(diǎn)來看,大數(shù)據(jù)管理從無模式的Key/value存儲(chǔ)向有模式的數(shù)據(jù)倉庫類應(yīng)用轉(zhuǎn)移,因此Key/value存儲(chǔ)也需要以模式為參照,必須要面對復(fù)雜模式中的數(shù)據(jù)協(xié)同分布需求。解決這個(gè)問題主要有兩個(gè)思路:一是以chunk為數(shù)據(jù)分布的物理單位,通過數(shù)據(jù)加載階段的預(yù)處理在chunk內(nèi)進(jìn)行表間連接協(xié)同分布,即將chunk作為表間數(shù)據(jù)協(xié)同分布的容器;二是采用數(shù)據(jù)庫中的“內(nèi)模式—模式”映射機(jī)制,由工作節(jié)點(diǎn)實(shí)現(xiàn)物理chunk和邏輯分區(qū)之間的映射,以邏輯分區(qū)管理替代物理chunk管理,以抽象的模式管理替代具體的文件管理。在大數(shù)據(jù)背景下的數(shù)據(jù)倉庫應(yīng)用中,復(fù)雜模式和大數(shù)據(jù)處理需要更加靈活的索引機(jī)制、連接優(yōu)化技術(shù)以及分布式存儲(chǔ)優(yōu)化技術(shù)來提高大數(shù)據(jù)下的數(shù)據(jù)倉庫查詢響應(yīng)性能,邏輯存儲(chǔ)模型比物理存儲(chǔ)模型具有更好的適應(yīng)能力。反之,Hadoop++的Trojanindex和co-partition技術(shù)優(yōu)化了連接操作但難以與RCFile的列存儲(chǔ)優(yōu)化技術(shù)相結(jié)合;同樣,RCFile的列存儲(chǔ)優(yōu)化技術(shù)在進(jìn)行co-partition優(yōu)化時(shí)也必然大大增加其復(fù)雜性。綜上所述,大數(shù)據(jù)存儲(chǔ)在不同的應(yīng)用背景和應(yīng)用需求下有不同的技術(shù)路線,本文的討論僅限于當(dāng)前學(xué)術(shù)界和工業(yè)界典型的非結(jié)構(gòu)化Key/value存儲(chǔ)和結(jié)構(gòu)化存儲(chǔ)兩種應(yīng)用模式。無模式的Key/value存儲(chǔ)適用于簡單數(shù)據(jù)結(jié)構(gòu)(可能具有復(fù)雜數(shù)據(jù)類型的非結(jié)構(gòu)化數(shù)據(jù))的大數(shù)據(jù)存儲(chǔ)模型。對于復(fù)雜模式的結(jié)構(gòu)化大數(shù)據(jù)應(yīng)用,Key/value存儲(chǔ)在面對索引、連接優(yōu)化等需求時(shí)采用了很多類似數(shù)據(jù)庫的優(yōu)化技術(shù)來支持基于關(guān)系模型的Key/value存儲(chǔ)優(yōu)化。3大數(shù)據(jù)的含義從未來發(fā)展趨勢來看,大數(shù)據(jù)無處不在。在當(dāng)前典型的應(yīng)用案例中,大數(shù)據(jù)主要存在于大型互聯(lián)網(wǎng)企業(yè)、電子商務(wù)企業(yè)及社會(huì)網(wǎng)絡(luò)中,以Google、百度、Amazon、淘寶、Facebook等為代表。大數(shù)據(jù)管理技術(shù)的核心是如何實(shí)現(xiàn)大數(shù)據(jù)的處理任務(wù)。3.1酶系統(tǒng)的應(yīng)用Google于2004年提出了MapReduce技術(shù)作為大規(guī)模并行計(jì)算解決方案,主要應(yīng)用于大規(guī)模廉價(jià)集群上的大數(shù)據(jù)并行處理。MapReduce構(gòu)建于基于Key/value存儲(chǔ)的分布式存儲(chǔ)系統(tǒng)之上,通過元數(shù)據(jù)集中存儲(chǔ)、數(shù)據(jù)以chunk為單位分布存儲(chǔ)和數(shù)據(jù)chunk冗余復(fù)制(默認(rèn)為三復(fù)本)來保證其高可用性。MapReduce是一種并行編程模型,它把計(jì)算過程分解為兩個(gè)主要階段,即Map階段和Reduce階段。Map函數(shù)處理Key/value對,產(chǎn)生一系列的中間Key/value對,Reduce函數(shù)用來合并所有具有相同key值的中間鍵值對,計(jì)算最終結(jié)果。并行任務(wù)調(diào)度負(fù)責(zé)在對輸入數(shù)據(jù)分塊后啟動(dòng)并行Map函數(shù),在數(shù)據(jù)端完成本地?cái)?shù)據(jù)處理并寫入磁盤,在Reduce階段由Reduce函數(shù)將Map階段具有相同key值的中間結(jié)果收集到相同的Reduce節(jié)點(diǎn)進(jìn)行合并處理,并將結(jié)果寫入本地磁盤。MapReduce是一種簡潔的并行計(jì)算模型,其設(shè)計(jì)的初衷主要是解決簡單數(shù)據(jù)模型大數(shù)據(jù)在大規(guī)模并行計(jì)算集群上的高可擴(kuò)展性和高可用性分析處理,其處理模式以離線式批量處理為主。Hadoop是Apache推出的開源MapReduce實(shí)現(xiàn)系統(tǒng),以HDFS(Hadoop分布式文件系統(tǒng))為存儲(chǔ)引擎,以MapReduce為并行計(jì)算引擎。Hadoop推出后得到學(xué)術(shù)界和工業(yè)界的廣泛關(guān)注并被大量電子商務(wù)企業(yè)及互聯(lián)網(wǎng)企業(yè)所采用,Hadoop上的優(yōu)化技術(shù)也成為近年來國際頂級(jí)學(xué)術(shù)會(huì)議的熱點(diǎn)研究問題。MapReduce最早應(yīng)用于非結(jié)構(gòu)化數(shù)據(jù)處理領(lǐng)域,如Google中創(chuàng)建倒排索引,計(jì)算pagerank等操作,也被廣泛應(yīng)用于文檔處理應(yīng)用中。但近年來的發(fā)展趨勢是逐漸由非結(jié)構(gòu)化大數(shù)據(jù)處理轉(zhuǎn)向類似結(jié)構(gòu)化大數(shù)據(jù)倉庫應(yīng)用領(lǐng)域,如用戶LOG日志分析處理等,以TPC-H負(fù)載為代表的表間連接操作優(yōu)化技術(shù)也成為MapReduce重要的研究課題。數(shù)據(jù)倉庫和OLAP是企業(yè)級(jí)決策的重要基礎(chǔ),由于其軟件系統(tǒng)昂貴的價(jià)格、數(shù)據(jù)庫對大規(guī)模集群的有限支持和大數(shù)據(jù)時(shí)嚴(yán)重的性能問題,一直是關(guān)系數(shù)據(jù)庫在大數(shù)據(jù)時(shí)代進(jìn)一步發(fā)展的制約問題,而Hadoop良好的開源并行計(jì)算平臺(tái)提供了一個(gè)大數(shù)據(jù)廉價(jià)數(shù)據(jù)倉庫實(shí)現(xiàn)的解決方案。Hive是Facebook在Hadoop上構(gòu)建的大型數(shù)據(jù)倉庫系統(tǒng),它支持模式及類SQL查詢等關(guān)系操作,在內(nèi)部實(shí)現(xiàn)從SQL語言到MapReduce任務(wù)的轉(zhuǎn)換。數(shù)據(jù)倉庫的性能主要決定于大數(shù)據(jù)的I/O訪問性能和復(fù)雜多維模型下的多表連接性能。Key/value存儲(chǔ)相當(dāng)于非結(jié)構(gòu)化的行存儲(chǔ)模型,因此Hadoop中的列存儲(chǔ)模型成為研究的熱點(diǎn)問題之一。以RCFile為代表的chunk內(nèi)列存儲(chǔ)模型實(shí)現(xiàn)了對HDFS的列存儲(chǔ)優(yōu)化,而HadoopDB在后續(xù)研究中直接使用了數(shù)據(jù)庫VectorWise作為列存儲(chǔ)數(shù)據(jù)庫引擎。這兩類技術(shù)路線分別采用改造存儲(chǔ)引擎和使用插件式列存儲(chǔ)引擎的方法優(yōu)化Hadoop的I/O訪問性能。Hadoop上的連接優(yōu)化技術(shù)一直是研究的熱點(diǎn)問題,主要技術(shù)路線包括連接表協(xié)同分布優(yōu)化、查詢計(jì)劃優(yōu)化以及連接優(yōu)化技術(shù)等。協(xié)同分布優(yōu)化主要采用co-partition技術(shù)在數(shù)據(jù)加載的預(yù)處理階段將連接表按照連接鍵值進(jìn)行劃分并將相同連接值的數(shù)據(jù)“打包”在相同的chunk內(nèi),實(shí)現(xiàn)連接操作的本地化。協(xié)同分布優(yōu)化技術(shù)需要較大的預(yù)處理代價(jià),而且對于數(shù)據(jù)倉庫復(fù)雜模式下的星型多表連接操作難以滿足事實(shí)表與多個(gè)維表之間的數(shù)據(jù)協(xié)同分布需求。查詢計(jì)劃優(yōu)化以YSmart為代表,YSmart通過對由SQL生成的MapReduce任務(wù)序列進(jìn)行優(yōu)化,根據(jù)全局查詢優(yōu)化方案合并重復(fù)的數(shù)據(jù)訪問任務(wù),優(yōu)化查詢處理的I/O代價(jià)。YSmart相當(dāng)于一個(gè)外置的MapReduce查詢優(yōu)化器,可以看作是數(shù)據(jù)庫查詢優(yōu)化器在Hadoop中的實(shí)現(xiàn)技術(shù)。在連接優(yōu)化研究中,HadoopDB采用半連接等技術(shù)與MapReduce優(yōu)化技術(shù)相結(jié)合,優(yōu)化連接性能;LinearDB采用將星型模型中的維表層次結(jié)構(gòu)編碼并物化到事實(shí)表的方法來消除事實(shí)表與維表之間的部分連接操作,支持在預(yù)定義維層次上的表掃描方式的分析處理;DDTA-JOIN根據(jù)查詢中的選擇操作在維表上生成位圖謂詞向量來標(biāo)識(shí)維表記錄對謂詞操作的滿足狀態(tài),將事實(shí)表與維表上的hash連接操作優(yōu)化為對位圖謂詞向量的直接按位置訪問。基于DDTA-JOIN算法,維表位圖謂詞向量廣播到集群節(jié)點(diǎn)后即可由各工作節(jié)點(diǎn)完成其后的查詢處理任務(wù)。DDTA-JOIN的核心是將OLAP查詢處理中的SPJGA(選擇、投影、連接、分組、聚集)操作壓縮到一個(gè)操作符中,因此可以將復(fù)雜星型模型下的查詢處理任務(wù)壓縮到一個(gè)Map和一個(gè)Reduce任務(wù)中完成,減少了多表連接操作的產(chǎn)生的巨大I/O和網(wǎng)絡(luò)傳輸代價(jià)。對于OLAP應(yīng)用而言,Map操作是一個(gè)本地聚集計(jì)算過程(LAG,LocalAGgregate),而Reduce是一個(gè)全局聚集計(jì)算過程(GAG,GlobalAGgregate),因此DDTA-JOIN將通用的MapReduce在大數(shù)據(jù)OLAP應(yīng)用中規(guī)范化為LAG/GAG模型,用數(shù)據(jù)庫通用的hash分組聚集計(jì)算替代了基于排序的Reduce過程,優(yōu)化了聚集計(jì)算性能。從數(shù)據(jù)管理的角度來看,使用非結(jié)構(gòu)化Key/value存儲(chǔ)管理結(jié)構(gòu)化大數(shù)據(jù)仍然具有較大的應(yīng)用需求。與基于數(shù)據(jù)庫的數(shù)據(jù)倉庫技術(shù)相比,基于Key/value存儲(chǔ)的Hadoop數(shù)據(jù)倉庫實(shí)現(xiàn)技術(shù)尚處于起步階段,需要借鑒關(guān)系數(shù)據(jù)庫成熟的技術(shù)來加速其發(fā)展進(jìn)程。同時(shí),針對大數(shù)據(jù)所帶來的存儲(chǔ)與計(jì)算壓力,也需要進(jìn)一步優(yōu)化大數(shù)據(jù)下的數(shù)據(jù)倉庫模式設(shè)計(jì),簡化存儲(chǔ)與計(jì)算模型,降低復(fù)雜模式下的復(fù)雜查詢所帶來的性能問題。3.2數(shù)據(jù)庫支持當(dāng)前的產(chǎn)業(yè)界正在嘗試將數(shù)據(jù)庫與MapReduce進(jìn)行集成。Greenplum和AsterData采用的是在MPP并行數(shù)據(jù)庫內(nèi)置對MapReduce的支持,實(shí)現(xiàn)數(shù)據(jù)庫和MapReduce的雙引擎融合,同時(shí)通過MapReduce擴(kuò)展數(shù)據(jù)庫對分析軟件的支持。同時(shí),傳統(tǒng)的數(shù)據(jù)庫廠商,如Oracle、IBM、Teradata、Vertica等也在致力于數(shù)據(jù)庫與MapReduce的集成工作,通過雙向數(shù)據(jù)通道在數(shù)據(jù)庫和MapReduce系統(tǒng)之間建立協(xié)同訪問的橋梁。3.3并行存儲(chǔ)及實(shí)時(shí)分析處理能力在大數(shù)據(jù)的四個(gè)“V”的屬性中,variety不僅僅體現(xiàn)在數(shù)據(jù)來源與數(shù)據(jù)類型的多樣性上,還體現(xiàn)在應(yīng)用需求的多樣性方面。在電信、電力、控制等應(yīng)用領(lǐng)域,來自設(shè)備的大量數(shù)據(jù)實(shí)時(shí)分析處理是重要的需求;在數(shù)據(jù)倉庫層面,不同用戶在大數(shù)據(jù)集上的多維分析處理性能是重要的問題;在數(shù)據(jù)源層面,大數(shù)據(jù)存儲(chǔ)與處理是基礎(chǔ)性的問題。一個(gè)企業(yè)級(jí)應(yīng)用可能包含不同的應(yīng)用需求:原始數(shù)據(jù)類型多樣化,分析數(shù)據(jù)類型結(jié)構(gòu)化,分析需求多樣化,分析處理及時(shí)性。從大數(shù)據(jù)所對應(yīng)的分析處理技術(shù)來看,內(nèi)存分析處理技術(shù),如HANA、VectorWise等產(chǎn)品能夠提供TB級(jí)數(shù)據(jù)的存儲(chǔ)和實(shí)時(shí)分析處理能力;并行數(shù)據(jù)庫,如Greenplum能夠支持幾百個(gè)節(jié)點(diǎn)的并行存儲(chǔ)與處理能力;Hadoop集群能夠支持上千個(gè)節(jié)點(diǎn)和PB級(jí)的并行存儲(chǔ)與處理集群,這三個(gè)存儲(chǔ)與處理層次分別提供不同的存儲(chǔ)能力和分析處理能力。在現(xiàn)實(shí)應(yīng)用中,HANA和VectorWise,以及數(shù)據(jù)庫技術(shù)已經(jīng)與Hadoop技術(shù)在某種程度上進(jìn)行結(jié)合,從未來技術(shù)發(fā)展趨勢來看,大數(shù)據(jù)管理是一個(gè)金字塔架構(gòu),如圖1所示,不同的技術(shù)框架支持不同層次的數(shù)據(jù)存儲(chǔ)與分析處理任務(wù),需要系統(tǒng)級(jí)的集成或協(xié)同來滿足大數(shù)據(jù)不同的應(yīng)用需求。圖1左側(cè)為自底向上的存儲(chǔ)模型。原始的大數(shù)據(jù)存儲(chǔ)于Hadoop系統(tǒng)中,通過數(shù)據(jù)抽取及預(yù)處理將需要結(jié)構(gòu)化分析處理的數(shù)據(jù)從原始的文檔及其他非結(jié)構(gòu)化數(shù)據(jù)中抽取到數(shù)據(jù)庫中供用戶使用,原始的非結(jié)構(gòu)化大數(shù)據(jù)可能被快速更新,但所抽取出的結(jié)構(gòu)化分析處理數(shù)據(jù)則形成數(shù)據(jù)庫中穩(wěn)定的分析數(shù)據(jù)源;對于數(shù)據(jù)庫中熱點(diǎn)的高頻訪問數(shù)據(jù)及需要提供實(shí)時(shí)分析處理能力的數(shù)據(jù),則需要將其進(jìn)一步抽取到上層內(nèi)存數(shù)據(jù)庫(或內(nèi)存數(shù)據(jù)庫集群)中以提供更好的實(shí)時(shí)分析處理能力。圖1右側(cè)為自頂向下的存儲(chǔ)模型。在高實(shí)時(shí)響應(yīng)性的大數(shù)據(jù)應(yīng)用中,如電力、電信、控制領(lǐng)域的數(shù)據(jù)分析應(yīng)用中,需要將大量生成的數(shù)據(jù)快速存儲(chǔ)和處理,因此在自頂向下的架構(gòu)中,需要通過內(nèi)存數(shù)據(jù)庫快速將數(shù)據(jù)存儲(chǔ)下來并執(zhí)行實(shí)進(jìn)分析處理,然后逐漸將超過分析時(shí)間窗口的數(shù)據(jù)由內(nèi)存存儲(chǔ)引擎下移到磁盤存儲(chǔ)引擎來支持對歷史數(shù)據(jù)的分析,當(dāng)數(shù)據(jù)超過磁盤數(shù)據(jù)庫的存儲(chǔ)容量時(shí),再繼續(xù)將早期或非熱點(diǎn)數(shù)據(jù)轉(zhuǎn)移到Hadoop存儲(chǔ)系統(tǒng)中去。在這種存儲(chǔ)架構(gòu)下,Hadoop起到磁帶機(jī)的后備存儲(chǔ)作用,在分析處理時(shí)采用的是基于順序訪問的分析處理方式,磁盤數(shù)據(jù)庫則利用索引等機(jī)制提高對數(shù)據(jù)的隨機(jī)訪問處理能力,內(nèi)存數(shù)據(jù)庫作為高性能存儲(chǔ)和處理引擎支持快速導(dǎo)入數(shù)據(jù)的實(shí)時(shí)分析處理。4傳統(tǒng)并行計(jì)算技術(shù)及應(yīng)用大數(shù)據(jù)應(yīng)用需求暴露了傳統(tǒng)的關(guān)系數(shù)據(jù)庫在一些特定應(yīng)用領(lǐng)域的不適應(yīng)性,如缺乏對非結(jié)構(gòu)化大數(shù)據(jù)處理的支持,缺乏對大規(guī)模廉價(jià)集群并行計(jì)算的支持,缺乏靈活的并行計(jì)算用戶接口等問題。因此需要在傳統(tǒng)關(guān)系數(shù)據(jù)庫和新興的Key/value存儲(chǔ)以及MapReduce并行計(jì)算領(lǐng)域通過新的技術(shù)來共同解決新的大數(shù)據(jù)應(yīng)用需求。在實(shí)際應(yīng)用中,大數(shù)據(jù)往往不是滿足全部四個(gè)V的條件,而是幾個(gè)V特性的組合。如:結(jié)構(gòu)化數(shù)據(jù)倉庫大數(shù)據(jù)倉庫(Bigdatawarehouse)應(yīng)用,即結(jié)構(gòu)化數(shù)據(jù)倉庫在巨量數(shù)據(jù)上的解決方案,可以看作是傳統(tǒng)的數(shù)據(jù)倉庫在大數(shù)據(jù)時(shí)代的升級(jí)。高效實(shí)時(shí)分析處理以HANA為代表的高性能實(shí)時(shí)分析應(yīng)用,即通過當(dāng)前高端硬件支持的大容量內(nèi)存(當(dāng)前最大200TB)實(shí)現(xiàn)大數(shù)據(jù)上的高性能實(shí)時(shí)分析處理,提供更加及時(shí)的分析處理能力。實(shí)時(shí)分析處理所產(chǎn)生的價(jià)值不僅僅體現(xiàn)于更大的數(shù)據(jù)所帶來的更加全面的數(shù)據(jù)來源和蘊(yùn)含的信息,而且實(shí)時(shí)分析所獲得的信息能夠更快地產(chǎn)生商業(yè)價(jià)值,降低商業(yè)運(yùn)行風(fēng)險(xiǎn)和成本。非結(jié)構(gòu)化數(shù)據(jù)倉庫應(yīng)用巨量非結(jié)構(gòu)化數(shù)據(jù)上的分析與數(shù)據(jù)挖掘應(yīng)用。Google等網(wǎng)絡(luò)搜索引擎公司需要對非結(jié)構(gòu)化網(wǎng)頁為主的大數(shù)據(jù)進(jìn)行分析、創(chuàng)建倒排索引、計(jì)算pagerank等任務(wù),以Facebook為代表的社會(huì)網(wǎng)絡(luò)需要支持以用戶點(diǎn)擊日志為主的非結(jié)構(gòu)化數(shù)據(jù)倉庫應(yīng)用,分析用戶行為模式,挖掘用戶在社會(huì)網(wǎng)絡(luò)上的復(fù)雜社會(huì)關(guān)系等任務(wù)。效果一:bi與oap的結(jié)合大數(shù)據(jù)時(shí)代的商務(wù)智能分析(BigdataBusinessIntelligence)和聯(lián)機(jī)分析處理(BigdataOLAP(On-lineanalyticalprocessing))是大數(shù)據(jù)價(jià)值集中體現(xiàn)的應(yīng)用模式。首先,大數(shù)據(jù)時(shí)代的BI和OLAP能夠獲得更大的數(shù)據(jù)集和更大的數(shù)據(jù)支持;其次,大數(shù)據(jù)時(shí)代BI和OLAP的數(shù)據(jù)來源更加多樣化,除來自于數(shù)據(jù)庫的結(jié)構(gòu)化數(shù)據(jù)之外,來自于其他領(lǐng)域的非結(jié)構(gòu)化數(shù)據(jù)也成為BI和OLAP分析的擴(kuò)展維度,需要通過ETL(Extraction-Transformation-Loading的縮寫,數(shù)據(jù)倉庫的數(shù)據(jù)提取、轉(zhuǎn)換和加載工具)抽取到數(shù)據(jù)倉庫中來擴(kuò)展分析維度。最后,On-line在線分析的需求要求BI與OLAP必須提供實(shí)時(shí)分析處理能力以保證數(shù)據(jù)分析價(jià)值的及時(shí)性和有效性。從應(yīng)用需求的角度來看,大數(shù)據(jù)分析在不同的應(yīng)用背景下具有不同的特點(diǎn),其中比較有代表性的大數(shù)據(jù)分析技術(shù)包括以下幾個(gè)代表性的技術(shù)路線:(1)高效動(dòng)態(tài)數(shù)據(jù)管理高性能內(nèi)存數(shù)據(jù)庫是高端數(shù)據(jù)庫應(yīng)用的重要技術(shù)。在大數(shù)據(jù)應(yīng)用需求背景下,不僅需求數(shù)據(jù)庫具有良好的實(shí)時(shí)響應(yīng)性能,而且要求能夠在大數(shù)據(jù)集上進(jìn)行實(shí)時(shí)分析處理任務(wù)。這種需求將高可擴(kuò)展性和高性能擺在相同的位置,需要將內(nèi)存事務(wù)處理業(yè)務(wù)與內(nèi)存分析處理業(yè)務(wù)相融合,而且需要高可擴(kuò)展性的內(nèi)存數(shù)據(jù)庫集群平臺(tái)來支持大數(shù)據(jù)的動(dòng)態(tài)數(shù)據(jù)管理需求。VoltDB通過水平分區(qū)技術(shù)支持可擴(kuò)展的內(nèi)存數(shù)據(jù)庫集群,SAP的HANA面向高性能內(nèi)存分析處理需求,為我們展現(xiàn)了以內(nèi)存為主的新的高性能計(jì)算應(yīng)用前景。(2)符合模式下的熱性能存儲(chǔ)內(nèi)存容量的增長和成本的降低激發(fā)了對高性能、高并發(fā)計(jì)算的強(qiáng)烈需求,內(nèi)存逐漸成為高性能云計(jì)算技術(shù)的新平臺(tái)。Memcached、Memcachedb、Redis、RAMCloud等以內(nèi)存為主要工作存儲(chǔ)設(shè)備而以磁盤為后備存儲(chǔ)設(shè)備的新的計(jì)算模型被企業(yè)界廣泛重視并應(yīng)用。相對于傳統(tǒng)的關(guān)系數(shù)據(jù)庫,Key/value存儲(chǔ)具有更好的高并發(fā)訪問性能,在一些弱一致性要求但高響應(yīng)性和并發(fā)訪問要求的應(yīng)用領(lǐng)域優(yōu)于關(guān)系數(shù)據(jù)庫。社交網(wǎng)絡(luò)、微博等高并發(fā)訪問、高實(shí)時(shí)響應(yīng)需求、低一致性要求的應(yīng)用將進(jìn)一步推動(dòng)內(nèi)存云技術(shù)的成熟與普及。(3)在線分析處理性能問題MapReduce已成為被廣泛應(yīng)用的大數(shù)據(jù)分析平臺(tái),但當(dāng)前的MapReduce技術(shù)解決了大數(shù)據(jù)分析處理“做得了”的問題,如何將大數(shù)據(jù)分析處理“做得好”還需要進(jìn)一步的發(fā)展。MapReduce在數(shù)據(jù)倉庫應(yīng)用中存在很大的性能問題,因此主要用于離線分析處理而不能滿足在線分析處理需求。列存儲(chǔ)、查詢優(yōu)化、內(nèi)存分析處理等方面的研究工作已從不同技術(shù)方向提高了MapReduce的性能,從而使MapReduce的高可擴(kuò)展和高可用性維度中能夠擴(kuò)展出高性能維度,使MapReduce從后臺(tái)分析處理走向前臺(tái)在線分析處理成為可能和未來的發(fā)展趨勢。同時(shí)我們也需要意識(shí)到,MapReduce并不是大數(shù)據(jù)時(shí)代代替數(shù)據(jù)庫的新的“one-size-fits-all”的解決方案,面對應(yīng)用需求的多樣性,同樣需要在標(biāo)準(zhǔn)的Hadoop平臺(tái)演化出多樣化的技術(shù)框架,弱化某些特征的同時(shí)強(qiáng)化某些特征,甚至擺脫磁盤物化機(jī)制來提供大規(guī)模并行實(shí)時(shí)分析能力,從而使Hadoop成為一個(gè)具有技術(shù)多樣性的生態(tài)系統(tǒng)。(4)map創(chuàng)造新的生物多樣性大數(shù)據(jù)本身是一個(gè)不同結(jié)構(gòu)、不同應(yīng)用需求數(shù)據(jù)的集合體,既包括結(jié)構(gòu)化數(shù)據(jù)又包括大量的非結(jié)構(gòu)化數(shù)據(jù),既有強(qiáng)一致性的事務(wù)處理需求也有弱一致性的數(shù)據(jù)訪問需求,既有通過模式進(jìn)行復(fù)雜分析處理的需求也有通過簡單的key值進(jìn)行數(shù)據(jù)訪問的需求,因此大數(shù)據(jù)管理系統(tǒng)不是一個(gè)單一的數(shù)據(jù)管理系統(tǒng),而是一個(gè)多種管理機(jī)制、多種管理技術(shù)相結(jié)合的數(shù)據(jù)生態(tài)系統(tǒng)。Key/value存儲(chǔ)是大數(shù)據(jù)時(shí)代的代表性技術(shù),也是NoSQL數(shù)據(jù)庫的底層存儲(chǔ)技術(shù)。從技術(shù)的角度來看,Key/value存儲(chǔ)是一種hash存儲(chǔ)技術(shù),數(shù)據(jù)存儲(chǔ)與訪問都與key值綁定。而關(guān)系數(shù)據(jù)庫技術(shù)以共享訪問為目標(biāo),暴露給用戶的是模式信息,即用戶可以使用任何key值完成自定義的查詢?nèi)蝿?wù),不需要綁定底層存儲(chǔ)方式。從應(yīng)用領(lǐng)域來看,關(guān)系存儲(chǔ)更適合于多用戶共享訪問數(shù)據(jù)平臺(tái),而Key/value存儲(chǔ)更適合于特定數(shù)據(jù)訪問模式下跨平臺(tái)、跨應(yīng)用的共享訪問模式。Key/value存儲(chǔ)所支持的非結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)進(jìn)一步拓展了數(shù)據(jù)倉庫的數(shù)據(jù)來源,即Key/value存儲(chǔ)將原始數(shù)據(jù)作為數(shù)據(jù)倉庫最底層的細(xì)節(jié)數(shù)據(jù)而不是傳統(tǒng)數(shù)據(jù)倉庫中通過ETL抽取之后的結(jié)構(gòu)化數(shù)據(jù)作為細(xì)節(jié)數(shù)據(jù)。這種細(xì)節(jié)數(shù)據(jù)層的向下擴(kuò)展使數(shù)據(jù)倉庫能夠更靠近真實(shí)數(shù)據(jù)源,可以將分析處理下推到最底端,也可以將ETL納入分析處理過程之中。圖2顯示了MapReduce&DB生態(tài)系統(tǒng)的結(jié)構(gòu)。數(shù)據(jù)庫是一個(gè)數(shù)據(jù)共享訪問平臺(tái),擁有完善的數(shù)據(jù)管理功能、用戶管理、訪問權(quán)限管理和豐富的應(yīng)用接口,對結(jié)構(gòu)化數(shù)據(jù)的分析處理能夠提供良好的性能,但缺乏對非結(jié)構(gòu)化數(shù)據(jù)的管理和處理能力。Hadoop(MapReduce)支持非結(jié)構(gòu)化數(shù)據(jù)管理,支持大規(guī)模并行計(jì)算,支持大數(shù)據(jù)存儲(chǔ)與管理,但缺乏良好的數(shù)據(jù)與用戶管理

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論