大數(shù)據(jù)技術原理與應用第2版-林子雨版-課后習題答案_第1頁
大數(shù)據(jù)技術原理與應用第2版-林子雨版-課后習題答案_第2頁
大數(shù)據(jù)技術原理與應用第2版-林子雨版-課后習題答案_第3頁
大數(shù)據(jù)技術原理與應用第2版-林子雨版-課后習題答案_第4頁
大數(shù)據(jù)技術原理與應用第2版-林子雨版-課后習題答案_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

大數(shù)據(jù)技術原理與應用第2版-林子雨版-課后習題答案

第一章

1.試述信息技術發(fā)展史上的3次信息化浪潮及具體內(nèi)容。

信息化浪潮發(fā)生時間標志解決問題代表公司

第一次浪潮1980年前后個人計算機信息處理Intel,AMD、IBM、蘋果、微軟、聯(lián)想、戴爾、惠普等

第二次浪潮1995年前后互聯(lián)網(wǎng)信息傳輸雅虎、谷歌、阿里巴巴、百度、騰訊等

第三次浪潮2010年前后物理網(wǎng)、和大數(shù)據(jù)信息爆炸將涌現(xiàn)出一批新的市場標桿企業(yè)

2.試述數(shù)據(jù)產(chǎn)生方式經(jīng)歷的幾個階段

答:運營式系統(tǒng)階段,用戶原創(chuàng)內(nèi)容階段,感知式系統(tǒng)階段。

3.試述大數(shù)據(jù)的4個基本特征

答:數(shù)據(jù)量大、數(shù)據(jù)類型繁多、處理速度快和價值密度低。

4.試述大數(shù)據(jù)時代的“數(shù)據(jù)爆炸”的特性

答:時代的“數(shù)據(jù)爆炸”的特性是,人類社會產(chǎn)生的數(shù)據(jù)一致都以每年50%的速度增長,也就是說,每兩年增加一倍。

5.數(shù)據(jù)研究經(jīng)歷了哪4個階段?

答:人類自古以來在科學研究上先后歷經(jīng)了實驗、理論、計算、和數(shù)據(jù)四種范式。

6.試述大數(shù)據(jù)對思維方式的重要影響

答:大數(shù)據(jù)時代對思維方式的重要影響是三種思維的轉變:全樣而非抽樣,效率而非精確,相關而非因果。

7.大數(shù)據(jù)決策與傳統(tǒng)的基于數(shù)據(jù)倉庫的決策有什么區(qū)別

答:數(shù)據(jù)倉庫具備批量和周期性的數(shù)據(jù)加載以及數(shù)據(jù)變化的實時探測、傳播和加載能力,能結合歷史數(shù)據(jù)和實時數(shù)據(jù)實現(xiàn)查詢分析和自動規(guī)

則觸發(fā),從而提供對戰(zhàn)略決策和戰(zhàn)術決策。

大數(shù)據(jù)決策可以面向類型繁多的、非結構化的海量數(shù)據(jù)進行決策分析。

8.舉例說明大數(shù)據(jù)的基本應用

答:

領域大數(shù)據(jù)的應用

金融行業(yè)大數(shù)據(jù)在高頻交易、社區(qū)情緒分析和信貸風險分析三大金融創(chuàng)新領域發(fā)揮重要作用。

汽車行業(yè)利用大數(shù)據(jù)和物聯(lián)網(wǎng)技術的五人駕駛汽車,在不遠的未來將走進我們的日常生活

互聯(lián)網(wǎng)行

借助于大數(shù)據(jù)技術,可以分析客戶行為,進行商品推薦和有針對性廣告投放

業(yè)

大數(shù)據(jù)還可以應用于個人生活,利用與每個人相關聯(lián)的“個人大數(shù)據(jù)”,分析個人生活行為習慣,為其提供更加周全的個性

個人生活

化服務。

9.舉例說明大數(shù)據(jù)的關鍵技術

答:批處理計算,流計算,圖計算,查詢分析計算

10.大數(shù)據(jù)產(chǎn)業(yè)包含哪些關鍵技術。

答:IT基礎設施層、數(shù)據(jù)源層、數(shù)據(jù)管理層、數(shù)據(jù)分析層、數(shù)據(jù)平臺層、數(shù)據(jù)應用層。

11.定義并解釋以下術語:云計算、物聯(lián)網(wǎng)

答:云計算:云計算就是實現(xiàn)了通過網(wǎng)絡提供可伸縮的、廉價的分布式計算機能力,用戶只需要在具備網(wǎng)絡接入條件的地方,就可以隨時

隨地獲得所需的各種IT資源。

物聯(lián)網(wǎng)是物物相連的互聯(lián)網(wǎng),是互聯(lián)網(wǎng)的延伸,它利用局部網(wǎng)絡或互聯(lián)網(wǎng)等通信技術把傳感器、控制器、機器、人類和物等通過新的方

式連在一起,形成人與物、物與物相連,實現(xiàn)信息化和遠程管理控制。

12.詳細闡述大數(shù)據(jù)、云計算和物聯(lián)網(wǎng)三者之間的區(qū)別與聯(lián)系。

大數(shù)據(jù)、云計算和物聯(lián)網(wǎng)的區(qū)別大數(shù)據(jù)、云計算和物聯(lián)網(wǎng)的聯(lián)系

大數(shù)據(jù)側重于海量數(shù)據(jù)的存儲、處理與分析,海從整體來看,大數(shù)據(jù)、云計算和物聯(lián)網(wǎng)這三者是相輔相成的。大數(shù)據(jù)根植于云計算,

量數(shù)據(jù)中發(fā)現(xiàn)價值,服務于生產(chǎn)和生活;云計算大數(shù)據(jù)分析的很多技術都來自于云計算,云計算的分布式存儲和管理系統(tǒng)提供了海量

本質上皆在整合和優(yōu)化各種IT資源并通過網(wǎng)絡已數(shù)據(jù)的存儲和管理能力,沒有這些云計算技術作為支撐,大數(shù)據(jù)分析就無從談起。物

服務的方法,廉價地提供給用戶;物聯(lián)網(wǎng)的發(fā)展聯(lián)網(wǎng)的傳感器源源不斷的產(chǎn)生大量數(shù)據(jù),構成了大數(shù)據(jù)的重要數(shù)據(jù)來源,物聯(lián)網(wǎng)需要

目標是實現(xiàn)嗚嗚向量,應用創(chuàng)新是物聯(lián)網(wǎng)的核心借助于云計算和大數(shù)據(jù)技術,實現(xiàn)物聯(lián)網(wǎng)大數(shù)據(jù)的存儲、分析和處理。

力-

1.試述hadoop和谷歌的mapreduce、gfs等技術之間的關系

答:Hadoop的核心是分布式文件系統(tǒng)HDFS和MapReduce,HDFS是谷歌文件系統(tǒng)GFS的開源實現(xiàn),MapReduces是針對谷歌

MapReduce的開源實現(xiàn)。

2.試述Hadoop具有哪些特性。

答:高可靠性,高效性,高可擴展性,高容錯性,成本低,運行在Unux平臺,支持多種編程語言

3.試述Hadoop在各個領域的應用情況。

答:2007年,雅虎在Sunnyvale總部建立了M45--------個包含了4000個處理器和1.5PB容量的Hadooop集群系統(tǒng);

Facebook主要將Hadoop平臺用于日志處理,推薦系統(tǒng)和數(shù)據(jù)倉庫等方面;

百度主要使用Hadoop于日志的存儲和統(tǒng)計、網(wǎng)頁數(shù)據(jù)的分析和挖掘、商業(yè)分析、在線數(shù)據(jù)反饋、網(wǎng)頁聚類等。

4.試述Hadoop的項目結構以及每個部分的具體功能。

答:

PigChukwaHiveHBase

MapReduceHDFSZookeeper

CommonAvro

Commeon是為Hadoop其他子項目提供支持的常用工具,主要包括文件系統(tǒng)、RPC和串行化庫

Avro是為Hadoop的子項目,用于數(shù)據(jù)序列化的系統(tǒng),提供了豐富的數(shù)據(jù)結構類型、快速可壓縮的二進制數(shù)據(jù)格式、存儲持續(xù)性數(shù)據(jù)的文件

集、遠程調用的功能和簡單的動態(tài)語言集成功能。

HDFS是Hadoop項目的兩個核心之一,它是針對谷歌文件系統(tǒng)的開源實現(xiàn)。

HBase是一個提高可靠性、高性能、可伸縮、實時讀寫、分布式的列式數(shù)據(jù)庫,一般采用HDFS作為其底層數(shù)據(jù)存儲。

MapReduce是針對谷歌MapReduce的開源實現(xiàn),用于大規(guī)模數(shù)據(jù)集的并行運算。

Zoookepper?是針對谷歌Chubby的一個開源實現(xiàn),是高效和可靠的協(xié)同工作系統(tǒng),提供分布式鎖之類的基本服務,用于構建分布式應用,

減輕分布式應用程序所承擔的協(xié)調任務。

Hive是一個基于Hadoop的數(shù)據(jù)倉庫工具,可以用于對Hadoop文件中的數(shù)據(jù)集進行數(shù)據(jù)整理、特殊查詢和分布存儲。

Pig是一種數(shù)據(jù)流語言和運行環(huán)境,適合于使用Hadoop和MapReducce平臺上查詢大型半結構化數(shù)據(jù)集。

Sqoop可以改進數(shù)據(jù)的互操作性,主要用來在H大哦哦哦配合關系數(shù)據(jù)庫之間交換數(shù)據(jù)。

Chukwa是一個開源的、用于監(jiān)控大型分布式系統(tǒng)的數(shù)據(jù)收集系統(tǒng),可以符各種類型的數(shù)據(jù)收集成適合Hadoop處理的文件,并保存在

HDFS中供Hadoop進行各種MapReduce操作。

第三章

1.試述分布式文件系統(tǒng)設計的需求。

設計需求含義HDFS的實現(xiàn)情況

只能提供一定程度的訪問透明性,完全支持位置透明性、性

透明性具備訪問透明性、位置透明性、性能、和伸縮透明性

能和伸縮透明性

客戶端對于文件的讀寫不應該影響其他客戶端對同一

并發(fā)控制機制非常簡單,任何時候都只允許有一個程序寫入某個文件

個文件的讀寫

文件復制一個文件可以擁有不同位置的多個副本HDFS采用了多副本機制

硬件和操作系統(tǒng)的可以在不同的操作系統(tǒng)和計算機上實現(xiàn)同樣的客戶端

采用Java語言開發(fā),具有很好的跨平臺能力

異構性和服務端程序

建立在大規(guī)模廉價機器上的分布式文件系統(tǒng)集群,具有很好

可伸縮性支持節(jié)點的動態(tài)加入或退出

的伸縮性

保證文件服務在客戶端或者服務端出現(xiàn)問題的時候能

容錯具有多副本機制和故障自動檢測、恢復機制

正常使用

安全保證系統(tǒng)的安全性安全性較弱

2.分布式文件系統(tǒng)是如何實現(xiàn)較高水平擴展的?

分布式文件系統(tǒng)在物理結構上是由計算機集群中的多個節(jié)點構成的,這些節(jié)點分為兩類,一類叫“主節(jié)點”(MasterNode)或者也被稱

為“名稱結點”(NameNode),另一類叫“從節(jié)點”(SlaveNode)或者也被稱為“數(shù)據(jù)節(jié)點"(DataNode)

3.試述HDFS中的塊和普通文件系統(tǒng)中的塊的區(qū)別。

答:在傳統(tǒng)的文件系統(tǒng)中,為了提高磁盤讀寫效率,一般以數(shù)據(jù)塊為單位,惡如不是以字節(jié)為單位。

HDFS中的塊,默認一個塊大小為64MB,而HDFS中的文件會被拆分成多個塊,每個塊作為獨立的單元進行存儲。HDFS在塊的大小的設

計上明顯要大于普通文件系統(tǒng)。

4.試述HDFS中的名稱節(jié)點和數(shù)據(jù)節(jié)點的具體功能。

答:名稱節(jié)點負責管理分布式文件系統(tǒng)系統(tǒng)的命名空間,記錄分布式文件系統(tǒng)中的每個文件中各個塊所在的數(shù)據(jù)節(jié)點的位置信息;

數(shù)據(jù)節(jié)點是分布式文件系統(tǒng)HDFS的工作節(jié)點,負責數(shù)據(jù)的存儲和讀取,會根據(jù)客戶端或者是名稱節(jié)點的調度來進行數(shù)據(jù)的存儲和檢索,并

向名稱節(jié)點定期發(fā)送自己所存儲的塊的列表。

hadoopfs-Is<path>顯示<path>指定的文件的詳細信息

hadoopfs-cat<path>將<path>指定的文件的內(nèi)容輸出到標準輸出

hadoopfs-mkdir<path>創(chuàng)建<path>指定的文件夾

hadoopfs-get[-ignorecrc][-crc]<srcxlocaldst>復制<src>指定的文件至I」本地文件系統(tǒng)<localdst>指定的文件或文件夾。-ignorecrc

選項復制CRC校驗失敗的文件。使用-crc選項復制文件以及CRC信息。

hadoopfs-put<localsrcxdst>從本地文件系統(tǒng)中復制<localsrc>指定的單個或多個源文件到<dst>指定的目標文件系統(tǒng)中。也支持從標

準輸入(stdin)中讀取輸入寫入目標文件系統(tǒng)。

hadoopfs-rmr<path>刪除<path>指定的文件夾及其的所有文件

第四章

1.試述在Hadoop體系架構中HBase與其他組成部分的相互關系。

答:HBase利用HadoopMapReduce來處理HBase中的海量數(shù)據(jù),實現(xiàn)高性能計算;利用Zookeepe「作為協(xié)同服務,實現(xiàn)穩(wěn)定服務和失

敗恢復;使用HDFS作為高可靠的底層存儲,利用廉價集群提供海量數(shù)據(jù)存儲能力;Sqoop為HBase的底層數(shù)據(jù)導入功能,Pig和Hive為

HBase提供了高層語言支持,HBase是BigTable的開源實現(xiàn)。

2.請闡述HBase和BigTable的底層技術的對應關系

答:

項目BigTableHBase

文件存儲系統(tǒng)GFSHDFS

海量數(shù)據(jù)處理MapReduceHadoopMapReduce

協(xié)同服務管理ChubbyZookeeper

3.請闡述HBase和傳統(tǒng)關系數(shù)據(jù)庫的區(qū)別

口■

區(qū)別傳統(tǒng)關系數(shù)據(jù)庫HBase

數(shù)據(jù)類型關系模型數(shù)據(jù)模型

數(shù)據(jù)操作插入、刪除、更新、查詢、多表連接插入、查詢、刪除、清空,無法實現(xiàn)表與表之間關聯(lián)

存儲模式基于行模式存儲,元組或行會被連續(xù)地存儲在磁盤也中基于列存儲,每個列族都由幾個文件保存,不同列族的文件是分離的

數(shù)據(jù)索引針對不同列構建復雜的多個索引只有一個行鍵索引

數(shù)據(jù)維護用最新的當前值去替換記錄中原來的舊值更新操作不會刪除數(shù)據(jù)舊的版本,而是生成一個新的版本

可伸縮性很難實現(xiàn)橫向擴展,縱向擴展的空間也比較有限輕易地通過在集群中增加或者減少硬件數(shù)量來實現(xiàn)性能的伸縮

4.HBase有哪些類型的訪問接口?

答:HBase提供了NativeJavaAPI,HBaseShell,ThriftGateway,RESTGateWay,Pig,Hive等訪問接口。

5.請以實例說明HBase數(shù)據(jù)模型。

Info

NameMajorEmail

201505001LuoMinMathLuo@

201505002LiuJunMathliu@

xie@

201505003XieYouMath

you@l63.com

6.分別解釋HBase中行鍵、列鍵和時間戳的概念

行鍵是唯一的,在一個表里只出現(xiàn)一次,否則就是在更新同一行,行鍵可以是任意的字節(jié)數(shù)組。

列族需要在創(chuàng)建表的時候就定義好,數(shù)量也不宜過多。列族名必須由可打印字符組成,創(chuàng)建表的時候不需要定義好列。

時間戳,默認由系統(tǒng)指定,用戶也可以顯示設置。使用不同的時間戳來區(qū)分不同的版本。

7.請舉個實例來闡述HBase的概念視圖和物理視圖的不同

HBase數(shù)據(jù)概念視圖

行鍵時間戳歹[^contents歹[^anchor

T5Ancho^:=^^CNN"

“n.www”

T3Anchor:my.look.ca="CNN”

T3Content:html="<html>...,)

“n.www”T2Cont6nt:html=”

T1Content:html="<html>..."

HBase數(shù)據(jù)物理視圖

行鍵時間戳歹[^anchor

T5Anchor:=,>CNN”

“n.www”

T4Anchor:my.look.ca="CNN"

行鍵時間戳歹1」族contents

T3Contenthtm^"<html>...^^

“n.www”T2Content:html=^^

T1Content:html="<html>...^^

在HBase的概念視圖中,一個表可以視為一個稀疏、多維的映射關系。

在物理視圖中,一個表會按照屬于同一列族的數(shù)據(jù)保存在一起

8.試述HBase各功能組建及其作用

(1)庫函數(shù):鏈接到每個客戶端;

(2)一個Mastei?主服務器:主服務器Master主要負責表和Region的管理工作;

(3)許多個Region服務器:Region服務器是HBase中最核心的模塊,負責維護分配給自己的Region,并響應用戶的讀寫請求

9.請闡述HBase的數(shù)據(jù)分區(qū)機制。

答:HBase采用分區(qū)存儲,一個大的表會被分拆許多個Region,這些Region會被分發(fā)到不同的服務器上實現(xiàn)分布式存儲。

1O.HBase中的分區(qū)是如何定位的。

通過構建的映射表的每個條目包含兩項內(nèi)容,一個是Regionde標識符,另一個是Region服務器標識,這個條目就標識Region和Region服

務器之間的對應關系,從而就可以知道某個Region被保存在哪個Region服務器中。

11.試述HBase的三層結構中各層次的名稱和作用。

層次名稱作用

第_Zookeeper?文

記錄了-ROOT-表的位置信息

層件

第二記錄了.META.表的Region位置信息

-ROOT-表

層-ROOT-表只能有一個Region。通過-ROOT-表,就可以訪問.META.表中的數(shù)據(jù)

第三記錄了用戶數(shù)據(jù)表的Region位置信息,.META.表可以有多個Region,保存了HBase中所有用戶數(shù)據(jù)表的

.META.表

層Region位置信息

12.請闡述HBase的三層結構下,客戶端是如何訪問到數(shù)據(jù)的。

答:首先訪問Zookeeper,獲取-ROOT表的位置信息,然后訪問-Root-表,獲得.MATA.表的信息,接著訪問.MATA.表,找到所需的

Region具體位于哪個Region服務器,最后才會到該Region服務器讀取數(shù)據(jù)。

13.試述HBase系統(tǒng)基本架構以及每個組成部分的作用。

(1)客戶端

客戶端包含訪問HBase的接口,同時在緩存中維護著已經(jīng)訪問過的Region位置信息,用來加快后續(xù)數(shù)據(jù)訪問過程

(2)Zookeeper?月艮務器

Zookeeper可以幫助選舉出一個Master作為集群的總管,并保證在任何時刻總有唯一一個Master在運行,這就避免了Master的“單點失

效”問題

(3)Master

主服務器Master主要負責表和Region的管理工作:管理用戶對表的增加、刪除、修改、查詢等操作;實現(xiàn)不同Region服務器之間的負載

均衡;在Region分裂或合并后,負責重新調整Region的分布;對發(fā)生故障失效的Region服務器上的Region進行遷移

(4)Region服務器

Region服務器是HBase中最核心的模塊,負責維護分配給自己的Region,并響應用戶的讀寫請求

14.請闡述Region服務器向HDFS文件系統(tǒng)中讀寫數(shù)據(jù)的基本原理

Region服務器內(nèi)部管理一系列Region對象和一個HLog文件,其中,HLog是磁盤上面的記錄文件,它記錄著所有的更新操作。每個

Region對象又是由多個Store組成的,每個Store對象了表中的一個列族的存儲。每個Store又包含了MemStore和若干個StoreFile,其

中,MemStore是在內(nèi)存中的緩存。

15.試述HStore的工作原理

每個Store對應了表中的一個列族的存儲。每個Store包括一個MenStore緩存和若干個StoreFile文件。MenStore是排序的內(nèi)存緩沖區(qū),

當用戶寫入數(shù)據(jù)時,系統(tǒng)首先把數(shù)據(jù)放入MenStore緩存,當MemStore緩存滿時,就會刷新到磁盤中的一個StoreFile文件中,當單個

StoreFile文件大小超過一定閾值時,就會觸發(fā)文件分裂操作。

16.試述山。9的工作原理

答:HBase系統(tǒng)為每個Region服務器配置了一個HLog文件,它是一種預寫式日志(WriteAheadLog),用戶更新數(shù)據(jù)必須首先寫入日

志后,才能寫入MemStore緩存,并且,直到MemStore緩存內(nèi)容對應的日志已經(jīng)寫入磁盤,該緩存內(nèi)容才能被刷寫到磁盤。

17在HBase中,每個Region服務器維護一個HLog,而不是為每個Region都單獨維護一個HLog。請說明這種做法的優(yōu)缺點。

優(yōu)點:多個Region對象的更新操作所發(fā)生的日志修改,只需要不斷把日志記錄追加到單個日志文件中,不需要同時打開、寫入到多個日志

文件中。

缺點:如果一個Region服務器發(fā)生故障,為了恢復其上次的Region對象,需要將Region服務器上的對象,需要將Region服務器上的

HLog按照其所屬的Region對象進行拆分,然后分發(fā)到其他Region服務器上執(zhí)行恢復操作。

18.當一臺Region服務器意外終止時,Master?如何發(fā)現(xiàn)這種意外終止情況?為了恢復這臺發(fā)生意外的Region服務器上的Region,Master應

該做出哪些處理(包括如何使用HLog進行恢復)?

Zookeeper■會實時監(jiān)測每個Region服務器的狀態(tài),當某個Region服務器發(fā)生故障時,Zookeeper會通知Master。

Master首先會處理該故障Region服務器上面遺留的HLog文件,這個遺留的HLog文件中包含了來自多個Region對象的日志記錄。

系統(tǒng)會根據(jù)每條日志記錄所屬的Region對象對HLog數(shù)據(jù)進行拆分,分別放到相應Region對象的目錄下,然后,再將失效的Region重新分

配到可用的Region服務器中,并把與該Region對象相關的HLog日志記錄也發(fā)送給相應的Region服務器。

Region服務器領取到分配給自己的Region對象以及與之相關的HLog日志記錄以后,會重新做一遍日志記錄中的各種操作,把日志記錄中

的數(shù)據(jù)寫入到MemStore緩存中,然后,刷新到磁盤的StoreFile文件中,完成數(shù)據(jù)恢復。

第五章

1.如何準確理解NoSQL的含義?

NoSQL是一種不同于關系數(shù)據(jù)庫的數(shù)據(jù)庫管理系統(tǒng)設計方式,是對非關系型數(shù)據(jù)庫的一類統(tǒng)稱,它采用的數(shù)據(jù)模型并非傳統(tǒng)關系數(shù)據(jù)庫的

關系模型,而是類似鍵/值、列族、文檔等非關系模型。

2.試述關系數(shù)據(jù)庫在哪些方面無法滿族Web2.0應用的需求。

關系數(shù)據(jù)庫已經(jīng)無法滿足Web2.0的需求。主要表現(xiàn)在以下幾個方面:

(1)無法滿足海量數(shù)據(jù)的管理需求

(2)無法滿足數(shù)據(jù)高并發(fā)的需求

(3)無法滿足高可擴展性和高可用性的需求

3.請比較NoSQL數(shù)據(jù)庫和關系數(shù)據(jù)庫的優(yōu)缺點。

RDBMSNoSQL備注

數(shù)

據(jù)

完全支RDBMS有關系代數(shù)理論作為基礎

庫部分支持

持NoSQL沒有統(tǒng)一的理論基礎

數(shù)

RDBMS很難實現(xiàn)橫向擴展,縱向擴展的空間也比較有限,性能會隨著數(shù)據(jù)規(guī)

據(jù)

大超大模的增大而降低

規(guī)

NoSQL可以很容易通過添加更多設備來支持更大規(guī)模的數(shù)據(jù)

數(shù)

據(jù)

RDBMS需要定義數(shù)據(jù)庫模式,嚴格遵守數(shù)據(jù)定義和相關約束條件

庫固定靈活

NoSQL不存在數(shù)據(jù)庫模式,可以自由靈活定義并存儲各種不同類型的數(shù)據(jù)

可以實現(xiàn)高效的簡單查詢,但是不具RDBMS借助于索引機制可以實現(xiàn)快速查詢(包括記錄查詢和范圍查詢)

快備高度結構化查詢等特性,復雜查詢很多NoSQL數(shù)據(jù)庫沒有面向復雜查詢的索引,雖然NoSQL可以使用

的性能不盡人意MapReduce來力口速查詢,但是,在復雜查詢方面的性能仍然不如RDBMS

RDBMS嚴格遵守事務ACID模型,可以保證事務強一致性

強一致

致弱一致性很多NoSQL數(shù)據(jù)庫放松了對事務ACID四性的要求,而是遵守BASE模型,只

性能保證最終一致性

數(shù)

據(jù)

兀任何一個RDBMS都可以很容易實現(xiàn)數(shù)據(jù)完整性,比如通過主鍵或者非空約束

整來實現(xiàn)實體完整性,通過主鍵、外鍵來實現(xiàn)參照完整性,通過約束或者觸發(fā)器

容易實

性來實現(xiàn)用戶自定義完整性

現(xiàn)很難實現(xiàn)

但是,在NoSQL數(shù)據(jù)庫卻無法實現(xiàn)

擴RDBMS很難實現(xiàn)橫向擴展,縱向擴展的空間也比較有限

展好NoSQL在設計之初就充分考慮了橫向擴展的需求,可以很容易通過添加廉價設

性備實現(xiàn)擴展

RDBMS在任何時候都以保證數(shù)據(jù)一致性為優(yōu)先目標,其次才是優(yōu)化系統(tǒng)性

能,隨著數(shù)據(jù)規(guī)模的增大,RDBMS為了保證嚴格的一致性,只能提供相對較

用好很好

弱的可用性

大多數(shù)NoSQL都能提供較高的可用性

標RDBMS已經(jīng)標準化(SQL)

準是否NoSQL還沒有行業(yè)標準,不同的NoSQL數(shù)據(jù)庫都有自己的查詢語言,很難規(guī)

化范應用程序接口

StoneBraker認為:NoSQL缺乏統(tǒng)一查詢語言,將會拖慢NoSQL發(fā)展

RDBMS經(jīng)過幾十年的發(fā)展,已經(jīng)非常成熟,Oracle等大型廠商都可以提供很

高低好的技術支持

NoSQL在技術支持方面仍然處于起步階段,還不成熟,缺乏有力的技術支持

維RDBMS需要專門的數(shù)據(jù)庫管理員(DBA)維護

復雜復雜

護NoSQL數(shù)據(jù)庫雖然沒有DBMS復雜,也難以維護

5.試述NoSQL數(shù)據(jù)庫的四大類型

答:鍵值數(shù)據(jù)庫、列族數(shù)據(jù)庫、文檔數(shù)據(jù)庫和圖數(shù)據(jù)庫

6.試述鍵值數(shù)據(jù)庫、列族數(shù)據(jù)庫、文檔數(shù)據(jù)庫和圖數(shù)據(jù)庫的適用場合和優(yōu)缺點。

數(shù)據(jù)庫適用場合優(yōu)點缺點

鍵值數(shù)據(jù)通過鍵而是通過值來查的無法存儲結構化信息,條件查詢效率

擴展性好,靈活性好,大量寫操作時性能高

庫業(yè)務較低

列族數(shù)據(jù)不需要ACID事務支持的情查找速度快,可擴展性強,容易進行分布式擴展,復雜

功能較少,大都不支持強事務一致性

庫形性低

性能好(高并發(fā)),靈活性高,復雜性低,數(shù)據(jù)結構靈

文檔數(shù)據(jù)只在相同的文檔上添加事

提供嵌入式文檔功能,符經(jīng)常查詢的數(shù)據(jù)存儲在同一個缺乏統(tǒng)一的查詢語法

庫務

文檔中

既可以根據(jù)鍵來構建索引,也可以根據(jù)內(nèi)容構建索引

圖形數(shù)據(jù)具有高度相互關聯(lián)關系的靈活性高,支持復雜的圖形算法,可用于構建復雜的關復雜性高,只能支持一定的數(shù)據(jù)規(guī)模

庫數(shù)據(jù)系圖譜

7.試述CAP理論的具體含義。

答:所謂的CAP指的是:

C(Consistency):一致性,是指任何一個讀操作總是能夠讀到之前完成的寫操作的結果,也就是在分布式環(huán)境中,多點的數(shù)據(jù)是一致

的,或者說,所有節(jié)點在同一時間具有相同的數(shù)據(jù)

A:(Availability):可用性,是指快速獲取數(shù)據(jù),可以在確定的時間內(nèi)返回操作結果,保證每個請求不管成功或者失敗都有響應;

P(ToleranceofNetworkPartition):分區(qū)容忍性,是指當出現(xiàn)網(wǎng)絡分區(qū)的情況時(即系統(tǒng)中的一部分節(jié)點無法和其他節(jié)點進行通

信),分離的系統(tǒng)也能夠正常運行,也就是說,系統(tǒng)中任意信息的丟失或失敗不會影響系統(tǒng)的繼續(xù)運作。

8.請舉例說明不同產(chǎn)品在設計時是如何運用CAP理論的。

9.試述數(shù)據(jù)庫的ACID四性的含義

1.原子性(Atomicity)

指事務必須是原子工作單元,對于其數(shù)據(jù)修改,要么全都執(zhí)行,要么全都不執(zhí)行。

2.一致性(consistency)

指事務在完成時,必須使所有的數(shù)據(jù)都保持一致狀態(tài)。

1.隔離性(Isolation)

指并發(fā)事務所做的修改必須與其他并發(fā)事務所做的修改隔離。

1.持久性(Durability)

指事務完成之后,它對于系統(tǒng)的影響是永久性的,該修改即使出現(xiàn)致命的系統(tǒng)故障也將一直保持。

10.試述BASE的具體含義

BASE的基本含義是基本可用(BasicallyAvailble)、軟狀態(tài)(Soft-state)和最終一致性(Eventualconsistency)

11.請解釋軟狀態(tài)、無狀態(tài)、硬狀態(tài)的具體含義。

“軟狀態(tài)(soft-state)"是與"硬狀態(tài)(hard-state)"相對應的一種提法。數(shù)據(jù)庫保存的數(shù)據(jù)是“硬狀態(tài)”時,可以保證數(shù)據(jù)一致性,

即保證數(shù)據(jù)一直是正確的?!败洜顟B(tài)”是指狀態(tài)可以有一段時間不同步,具有一定的滯后性。

12.什么是最終一致性?

最終一致性根據(jù)更新數(shù)據(jù)后各進程訪問到數(shù)據(jù)的時間和方式的不同,又可以區(qū)分為:

1.會話一致性:它把訪問存儲系統(tǒng)的進程放到會話(session)的上下文中,只要會話還存在,系統(tǒng)就保證“讀己之所寫”一致性。如果

由于某些失敗情形令會話終止,就要建立新的會話,而且系統(tǒng)保證不會延續(xù)到新的會話;

2.單調寫一致性:系統(tǒng)保證來自同一個進程的寫操作順序執(zhí)行。系統(tǒng)必須保證這種程度的一致性,否則就非常難以編程了

3.單調讀一致性:如果進程已經(jīng)看到過數(shù)據(jù)對象的某個值,那么任何后續(xù)訪問都不會返回在那個值之前的值

4.因果一致性:如果進程A通知進程B它已更新了一個數(shù)據(jù)項,那么進程B的后續(xù)訪問將獲得A寫入的最新值。而與進程A無因果關系的進

程C的訪問,仍然遵守一般的最終一致性規(guī)則

5.“讀己之所寫”一致性:可以視為因果一致性的一個特例。當進程A自己執(zhí)行一個更新操作之后,它自己總是可以訪問到更新過的值,

絕不會看到舊值

13.試述不一致性窗口的含義。

所有后續(xù)的訪問都可以讀取到操作0P寫入的最新值。從0P操作完成到后續(xù)訪問可以最終讀取到0P寫入的最新值,這之間的時間間隔稱

為"不一致性窗口”。

14最終一致性根據(jù)更新數(shù)據(jù)后各進程訪問到數(shù)據(jù)的時間和方式的不同,又可以分為哪些不同類型的一致性?

會話一致性、單調寫一致性、單調寫一致性、因果一致性和“讀己之所寫”一致性。

15什么是NewSQL數(shù)據(jù)庫?

NewSQL是對各種新的可擴展、高性能數(shù)據(jù)庫的簡稱,這類數(shù)據(jù)庫不僅具有NoSQL對海量數(shù)據(jù)的存儲管理能力,還保持了傳統(tǒng)數(shù)據(jù)庫支持

ACID和SQL特性。

A-A-\-r*T

第八早

1.試述云數(shù)據(jù)庫的概念。

答:云數(shù)據(jù)庫是部署和虛擬化在云計算環(huán)境中的數(shù)據(jù)庫。云數(shù)據(jù)庫是在云計算的大背景下發(fā)展起來的一種新興的共享基礎架構的方法,它極

大地增強了數(shù)據(jù)庫的存儲能力,消除了人員、硬件、軟件的重復配置,讓軟、硬件升級變得更加容易,同時,也虛擬化了許多后端功能。云

數(shù)據(jù)庫具有高可擴展性、高可用性、采用多租形式和支持資源有效分發(fā)等特點。

2.與傳統(tǒng)的軟件使用方式相比,云計算這種模式具有哪些明顯的優(yōu)勢?

表傳就的軟件使用方式和云計■方式的切

項目|傳墟方式云計1防工

I/…MlW4tflm""出4ttm-亞益*比0

軟件運行在云計尊廠商服務器上.用戶在

使用方式本地安裝.本地使用任何外網(wǎng)絡接入的堆力都可以通過網(wǎng)絡使

用軟件服務

需要?次性支付較大的切期投人成本.包括零成本投人就可以江即荻得所得的IT資

付費方式建設機房.用雷硬件,購買各種軟件(操作源,只需饕為所使用的資源付費,名用彩

系統(tǒng).殺毒.業(yè)芬收件等)付,少用少付,概其廉價

維護成本需要自已花錢聘請專業(yè)技術人員維護學成本.所在韁護「作曲公計算廠商

褥要耗費較長時間建設機房.購買和安裝圈

羲得IT簾源的速度隨時可用.叫實版務后立即”1用

出設備系統(tǒng)

云計算廠商建設好五計算服務平價后.同

共享方式口U建設.自給自足

時為眾多用戶提供服務

出現(xiàn)病毒.系統(tǒng)崩潰等阿腦時.需要自己眄

出現(xiàn)任何系統(tǒng)問題時,云計算廠商都會比

謂[T人員維護,很多普通企業(yè)的IT人員技

堆修速度倩拉。業(yè)化⑷隊給出及時響應.偷保A服

術能力6限.罐到一些同胸部至需要、4找外

務的正常使用

援.通常不能立即解決

利用率較高.每天都可以為大R用戶提供

利用率較低.投入大址資金建設的rr系統(tǒng).

服務;¥存在閑置貫源時.也計尊討理系

資源利用率往往只供企業(yè)自己使用,當企業(yè)不需要那么

統(tǒng)會門動關閉和退出多余資源;當需要增

名IT賈源時,就會產(chǎn)生賁源浪機

加賁茶時.乂會自動啟動和加入相關貨源

企業(yè)無論撤遷到哪里.郁可以通過M絡版

當企業(yè)搬家時.原來的機房設旅就壑作廢.新零成率也即改得云計的服務.因為.優(yōu)

用戶搬遷時的成本

曲察在新地方由新投入較大成本建設機房源在玄瀛,不在用戶端?用戶盛遷不會影

響到IT優(yōu)源的分布

企業(yè)白己建設的仃基礎設俺的服務傕力通

常是有上限的,當企業(yè)業(yè)務量突然增加時.云計算廠商可以為企業(yè)提供近乎無限的IT

現(xiàn)存的IT翦礎設施無法。即渭足需求.就資源(存儲和計算等,源).用戶想用多少

資源可拓展性

需要花費時間和金錢無美和安裝新設備;當都可以立即獲得.當用戶不使用時,只需

業(yè)務高峰過去時,多余的設法就會闈置.造退打多余家源.不存在任何賢源閑置同履

3.云數(shù)據(jù)庫有哪些特性?

答:1)動態(tài)可擴展2)高可用性3)較低的使用代價

4)易用性5)高性能6)免維護7)安全

4.試述云數(shù)據(jù)庫的影響。

答:在大數(shù)據(jù)時代,每個企業(yè)幾乎每天都在不斷產(chǎn)生大量的數(shù)據(jù)。企業(yè)類型不同,對于存儲的需求也千差萬別,而云數(shù)據(jù)庫可以很好地滿

足不同企業(yè)的個性化存儲需求。

首先,云數(shù)據(jù)庫可以滿足大企業(yè)的海量數(shù)據(jù)存儲需求。云數(shù)據(jù)庫在當前數(shù)據(jù)爆炸的大數(shù)據(jù)時代具有廣闊的應用前景。傳統(tǒng)的關系數(shù)據(jù)庫難以

水平擴展,相本無法存儲如此海量的數(shù)據(jù)。因此,具有高可擴展性的云數(shù)據(jù)庫就成為企業(yè)海量數(shù)據(jù)存儲管理的很好選擇。

其次,云數(shù)據(jù)庫可以滿足中小企業(yè)的低成本數(shù)據(jù)存儲需求。中小企業(yè)在1T基礎設施方面的投入比較有限,非??释麖牡谌椒奖?、快捷、

廉價地獲得數(shù)據(jù)庫服務。云數(shù)據(jù)庫采用多租戶方式同時為多個用戶提供服務,降低了單個用戶的使用成本,而且用戶使用云數(shù)據(jù)庫服務通常

按需付費,不會浪費資源造成額外支出,因此,云數(shù)據(jù)庫使用成本很低,對于中小企業(yè)而言可以大大降低企業(yè)的信息化門檻,讓企業(yè)在付出

較低成本的同時,獲得優(yōu)質的專業(yè)級數(shù)據(jù)庫服務,從而有效提升企業(yè)信息化水平。

另外,云數(shù)據(jù)庫可以滿足企業(yè)動態(tài)變化的數(shù)據(jù)存儲需求。企業(yè)在不同時期需要存儲的數(shù)據(jù)量是不斷變化的,有時增加,有時減少。在小規(guī)模

應用的情況下,系統(tǒng)負載的變化可以由系統(tǒng)空閑的多余資源來處理,但是,在大規(guī)模應用的情況下,傳統(tǒng)的關系數(shù)據(jù)庫由于其伸縮性較差,不

僅無法滿足應用需求,而且會給企業(yè)帶來高昂的存儲成本和管理開銷。而云數(shù)據(jù)庫的良好伸縮性,可以讓企業(yè)在需求增加時立即獲得數(shù)據(jù)庫

能力的提升,在需求減少時立即釋放多余的數(shù)據(jù)庫能力,較好地滿足企業(yè)的動態(tài)數(shù)據(jù)存儲需求。

5.舉例說明云數(shù)據(jù)庫廠商及其代表性產(chǎn)品。

答:云數(shù)據(jù)庫供應商主要分為三類。

1.傳統(tǒng)的數(shù)據(jù)庫廠商,如Teradata、Oracle、舊MDB2和MicrosoftSQLServer"等。

2.涉足數(shù)據(jù)庫市場的云供應商,如Amazon、Google.Yahools阿里、百度、騰訊等。

3.新興廠商,如IVertica.LongJump和EnterpriseDB等。

袤6*3云數(shù)據(jù)庫產(chǎn)S3

企業(yè)產(chǎn)品

Amazon

Dynamo?SimplcDB,RDS

GoogleGoogleCloudSQL

MicrosoftMicrosoftSQLAzure

OracleOracleCloud

Yahoo!PNUTS

VcrticaAnalyticDatabasev3.0fortheCloud

EncrpriseDBPostgresPlusintheCloud

阿里阿里云RDS

百度百度云數(shù)據(jù)庫

7.試述UMP系統(tǒng)的功能。

答:

UMP系統(tǒng)是構建在一個大的集群之上的,通過多個組件的協(xié)同作業(yè),整個系統(tǒng)實現(xiàn)了對用戶透明的容災、讀寫分離、分庫分表、資源管

理、資源調度、資源隔離和數(shù)據(jù)安全功能。

1.容災

云數(shù)據(jù)庫必須向用戶提供一直可用的數(shù)據(jù)庫連接,當MySQL實例發(fā)生故障時,系統(tǒng)必須自動執(zhí)行故障恢復,所有故障處理過程對于用戶而

言是透明的,用戶不會感知到后臺發(fā)生的一切。

為了實現(xiàn)容災,UMP系統(tǒng)會為每個用戶創(chuàng)建兩個MySQL實例,一個是主庫,一個是從庫,而且,這兩個MySQL實例之間互相把對方設

置為備份機,任意一個MySQL實例上面發(fā)生的更新都會復制到對方。同時,Proxy服務器可以保證只向主庫寫人數(shù)據(jù)。

2.讀寫分離

由于每個用戶都有兩個MySQL實例,即主庫和從庫,因此,可以充分利用主從庫實現(xiàn)用戶讀寫操作的分離,實現(xiàn)負載均衡。UMP系統(tǒng)實

現(xiàn)了對于用戶透明的讀寫分離功能,當整個功能被開啟時,負責向用戶提供訪問MySQL數(shù)據(jù)庫服務的Proxy服務器,就會對用戶發(fā)起的

SQL語句進行解析,如果屬于寫操作,就直接發(fā)送到主庫,如果是讀操作,就會被均衡地發(fā)送到主庫和從庫上執(zhí)行。

3.分庫分表

UMP支持對用戶透明的分庫分表(Shard/HorizontalPartition)?但是,用戶在創(chuàng)建賬號的時候需要指定類型為多實例,并且設置實例的

個數(shù),系統(tǒng)會根據(jù)用戶設置來創(chuàng)建多組MySQL實例。除此以外,用戶還需要自己設定分庫分表規(guī)則,如需要確定分區(qū)字段,也就是根據(jù)哪

個字段進行分庫分表,還要確定分區(qū)字段里的值如何映射到不同的MySQL實例上。

4.資源管理

UMP系統(tǒng)采用資源池機制來管理數(shù)據(jù)庫服務器上的CPU、內(nèi)存、磁盤等計算資源,所有的計算資源都放在資源池內(nèi)進行統(tǒng)一分配,資源池

是為MySQL實例分配資源的基本單位。整個集群中的所有服務器會根據(jù)其機型、所在機房等因素被劃分為多個資源池,每臺服務器會被加

人到相應的資源池。在資源池劃分的基礎上,UMP還在每臺服務器內(nèi)部采用Cgroup將資源進一步地細化,從而可以限制每個進程組使用資

源的上限,同時保證進程組之間相互隔離。

5.資源調度

UMP系統(tǒng)中有3種規(guī)格的用戶,分別是數(shù)據(jù)量和流量比較小的用戶、中等規(guī)模用戶以及需要分庫分表的用戶。多個小規(guī)模用戶可以共享同

一個MySQL實例。對于中等規(guī)模的用戶,每個用戶獨占個MySQL實例。用戶可以根據(jù)自己的需求來調整內(nèi)存空間和磁盤空間,如果用戶

需要更多的資源,就可以遷移到資源有空閑或者具有更高配置的服務器上對于分庫分表的用戶,會占有多個獨立的MySQL實例,這些實例

既可以共存在同一臺物理機上,也可以每個實例獨占一臺物理機。

UMP通過MySQL實例的遷移來實現(xiàn)資源調度。借助于阿里集團中間件團隊開發(fā)的愚公系統(tǒng),UMP可以實現(xiàn)在不停機的情況下動態(tài)擴

容、縮容和遷移。

6.資源隔后

當多個用戶共享同一個MySQL實例或者多個MySQL實例共存在同一個物理機上時,為了保護用戶應用和數(shù)據(jù)的安全,必須實現(xiàn)資源隔

離,否則,某個用戶過多消耗系統(tǒng)資源會嚴重影響到其他用戶的操作性能。

7.數(shù)據(jù)安全

數(shù)據(jù)安全是讓用戶放心使用云數(shù)據(jù)庫產(chǎn)品的關鍵,尤其是企業(yè)用戶,數(shù)據(jù)庫中存放了很多業(yè)務數(shù)據(jù),有些屬于商業(yè)機密,一旦泄露,會給企

業(yè)造成損失。UMP系統(tǒng)設計了多種機制來保證數(shù)據(jù)安全。

1.SSL數(shù)據(jù)庫連接。

2.數(shù)據(jù)訪問IP白名單。

3.記錄用戶操作日志。

4.SQL攔截。

13.UMP系統(tǒng)是如何保障數(shù)據(jù)安全的?

答:

1.SSL數(shù)據(jù)庫連接。SSL(SecureSocketsLayer)是為網(wǎng)絡通信提供安全及數(shù)據(jù)完整性的一種安全協(xié)議,它在傳輸層對網(wǎng)絡連接進

行加密。Proxy服務器實現(xiàn)了完整的MySQL客戶端服務器協(xié)議,可以與客戶端之間建立SSL數(shù)據(jù)庫連接。

2.數(shù)據(jù)訪問1P白名單。可以把允許訪問云數(shù)據(jù)庫的1P地址放入“白名單”,只有白名單內(nèi)的IP地址才能訪問,其他1P地址的訪問都會被

拒絕,從而進一步保證賬戶安全。

3.記錄用戶操作日志。用戶的所有操作記錄都會被記錄到日志分析服務器,通過檢查用戶操作記錄,可以發(fā)現(xiàn)隱藏的安全漏洞。

4.SQL攔截。Proxy服務器可以根據(jù)要求攔截多種類型的SQL語句,比如全表掃描語句"select*"。

15.簡述RDS中實例與數(shù)據(jù)庫的概念。

答:RDS實例或簡稱“實例”,是用戶購買RDS服務的基本單位。在實例中可以創(chuàng)建多個數(shù)據(jù)庫,可以使用常見的數(shù)據(jù)庫客戶端連接、管

理及使用數(shù)據(jù)庫??梢酝ㄟ^RDS管理控制臺或OPENAPI來創(chuàng)建、修改和刪除數(shù)據(jù)庫。各實例之間相互獨立、資源隔離,相互之間不存在

CPU、內(nèi)存、IOPS等搶占問題。但是,同一實例中的不同數(shù)據(jù)庫之間是資源共享的。每個實例擁有其自己的特性,如數(shù)據(jù)庫類型、版本

等,系統(tǒng)有相應的參數(shù)來控制實例行為。用戶所購買RDS實例的性能,取決于購買RDS實例時所選擇的配置,可供用戶選擇的硬件配置項

為內(nèi)存和磁盤容量。

RDS數(shù)據(jù)庫或簡稱“數(shù)據(jù)庫”,是用戶在一個實例下創(chuàng)建的邏輯單元,一個實例可以創(chuàng)建多個數(shù)據(jù)庫,在實例內(nèi)數(shù)據(jù)庫命名唯一,所有數(shù)據(jù)

庫都會共享該實例下的資源,如CPU、內(nèi)存、磁盤容量等。RDS不支持使用標準的SQL語句或客戶端工具創(chuàng)建數(shù)據(jù)庫,必須使用

OPENAPI或RDS管理控制臺進行操作。

16.列舉連接RDSforMySQL數(shù)據(jù)庫的4種方法。

答:方法1:使用客戶端MySQL-Front訪問。使用客戶端MySQL-Front,在連接Host框中輸人數(shù)據(jù)實例鏈接地址、端口(默認3306)、數(shù)

據(jù)庫用戶名和數(shù)據(jù)庫密碼后,單擊“確定”按鈕即可。

方法2:使用數(shù)據(jù)庫管理T具NavicatMySQLoNavicat_MySQL是一套專為MySQL設計的強大的數(shù)據(jù)庫管理及開發(fā)工具,可以在連接

輸人框中輸人數(shù)據(jù)實例地址、端口(默認3306)、數(shù)據(jù)庫用戶名和數(shù)據(jù)庫密碼后,單擊“確定”按鈕即可。

方法3:使用MySQL命令登錄。用戶安裝MySQL客戶端后,可進人命令行方式連接數(shù)據(jù)庫。命令格式如下。

mysql-uuser__name-h-P3306-pxxxx

其中,-u指定的是用戶名,-h指定的是主機名,-P指定的是端口,-p指定的是密碼。

方法4:使用阿里云控制臺iDBCloud訪問。阿里云控制臺iDBCloud的頁面如圖6-7所示,RDS連接地址以及端口不需要再輸人,只需

在“用戶名”中輸人數(shù)據(jù)庫的賬號,在“密碼”欄中輸人數(shù)據(jù)庫賬號的密碼,便可以登錄RDS進行數(shù)據(jù)操作了。

第七章

1.試述MapReduce和Hadoop的關系。

答:谷歌公司最先提出了分布式并行編程模型MapReduce,HadoopMapReduce是它的開源實現(xiàn)。谷歌的MapReduce運行在分布式文

件系統(tǒng)GFS上,與谷歌類似,HadoopMapReduce運行在分布式文件系統(tǒng)HDFS上。相對而言,HadoopMapReduce要比谷歌

MapReduce的使用門檻低很多,程序員即使沒有任何分布式程序開發(fā)經(jīng)驗,也可以很輕松地開發(fā)出分布式程序并部署到計算機集群中。

2.MapReduce是處理大數(shù)據(jù)的有力工具,但不是每個任務都可以使用MapReduce來進行處理。試述適合用MapReduce來處理的任務或

者數(shù)據(jù)集需滿足怎樣的要求。

答:適合用MapReduce來處理的數(shù)據(jù)集,需要滿足一個前提條件:待處理的數(shù)據(jù)集可以分解成許多小的數(shù)據(jù)集,而且每一個小數(shù)據(jù)集都可

以完全并行地進行處理。

3.MapReduce模型采用Master(JobTracker)-Slave(TaskTracker)結構,試描述JobTracker和TasKTracker的功能。

答:MapReduce框架采用了Master/Slave架構,包括一個Master和若干個Slave。Master上運行JobTracker,Slave上運行

TaskTrackero用戶提交的每個計算作業(yè),會被劃分成若千個任務。JobTracker負責作業(yè)和任務的調度,監(jiān)

溫馨提示

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

評論

0/150

提交評論