關(guān)于hadoop開題報告參考

學人智庫 時間:2018-02-10 我要投稿
【m.clearvueentertainment.com - 學人智庫】

  1 選題的目的和意義

  1.1 設(shè)計的背景

  Hadoop作為Apache基金會資助的開源項目,由Doug Cutting帶領(lǐng)的團隊進行開發(fā),基于Lucene和Nutch等開源項目,實現(xiàn)了Google的GFS和Hadoop能夠穩(wěn)定運行在20個節(jié)點的集群;2006年1月,Doug Cutting加入雅虎公司,同年2月Apache Hadoop項目正式支持HDFS和MapReduce的獨立開發(fā)。同時,新興公司Cloudera為Hadoop提供了商業(yè)支持,幫助企業(yè)實現(xiàn)標準化安裝,并志愿貢獻社區(qū)。

  1.1 選題的現(xiàn)狀

  1.1.1 海量數(shù)據(jù)時代的現(xiàn)狀

  我們生活在數(shù)據(jù)的時代,很難估計全球的數(shù)據(jù)有多少,“數(shù)字宇宙”項目統(tǒng)計得出,2006年的數(shù)據(jù)總量為0.18zb,也就是10億TB。

  問題1:數(shù)據(jù)處理速度不夠,以100mb每秒計算,讀取1tb的數(shù)據(jù)需要2個半小時。一個比較好的方案就是把數(shù)據(jù)放在100個磁盤中每個磁盤中存放1%的數(shù)據(jù)并行讀取,不到2min就能讀取所有數(shù)據(jù)。經(jīng)過統(tǒng)計用戶的分析工作會在不同的時間點進行,所以用戶相互間的干擾不會太大。但是一旦硬件發(fā)生故障,用戶的數(shù)據(jù)就會丟失,所以要準備多份。(HDFS)

  問題2:需要從100個磁盤中取出數(shù)據(jù)結(jié)合使用。Mapreduce將這個問題抽象,轉(zhuǎn)化為對一個數(shù)據(jù)集合的計算。這個計算模型分為map和reduce兩個階段,只有這兩個部分對外提供接口。

  舉例 Rackspace的一個部門Mailtrust:mapreduce是一種比較蠻力的辦法,每個查詢幾乎需要處理整個數(shù)據(jù)集,至少是數(shù)據(jù)集的很大一部分。在合理的時間內(nèi)對整個數(shù)據(jù)集合的數(shù)據(jù)即時查詢,是對數(shù)據(jù)的一種創(chuàng)新。rackspace的mailtrust部門,使用hadoop處理郵件日志,他們做用戶地理分布查詢!斑@些數(shù)據(jù)非常有用,每個月運行一次決定哪些rackspace數(shù)據(jù)中心需要添加新的郵件服務(wù)器“。通過整合數(shù)百GB的數(shù)據(jù),并分析,可以通過這些數(shù)據(jù)改善現(xiàn)有服務(wù)。

  1.1.2 Hadoop的發(fā)展史

  Hadoop起源于Nutch網(wǎng)絡(luò)搜索引擎,Nutch是Lucene(一個文本搜索系統(tǒng)庫)的一部分,創(chuàng)始人為Doug Cutting。

  Nutch項目開始于2002年

  2004年開始開發(fā)GFS的開源版本NDFS,谷歌發(fā)表論文向全世界介紹它的mapreduce系統(tǒng)。

  2005年實現(xiàn)了mapreduce的開源版本。

  2006年將hadoop移出Nutch獨立成為一個項目,hadoop創(chuàng)始人進入雅虎

  2008年Hadoop成為apache頂級項目,證明了其成功。209S 完成1tb數(shù)據(jù)排序 2009年4月 59秒排序500GB 1400節(jié)點 173分鐘排序100T的數(shù)據(jù)3400節(jié)點 典型案例 紐約時報 facebook last.fm

  1.1.3 Hadoop生態(tài)系統(tǒng)

  Common:IO組件于接口(序列化,javaRPC,持久化數(shù)據(jù)結(jié)構(gòu))

  Pig: 數(shù)據(jù)流語言和運行環(huán)境,檢索非常大的數(shù)據(jù)集

  Hive: 管理HDFS中的數(shù)據(jù),提供sql查詢

  Hbase: 安列存儲數(shù)據(jù)庫,支持批量式計算和點查詢

  ZooKeeper: 一個分布式、可用性高的協(xié)調(diào)系統(tǒng)。ZooKeeper提供分布式鎖之類的基本服務(wù)用于構(gòu)建分布式應(yīng)用。

  Sqoop: 在數(shù)據(jù)庫和HDFS之間高效傳輸?shù)臄?shù)據(jù)工具。

  Kerberos:實現(xiàn)的是機器級別的安全認證,也就是前面提到的服務(wù)到服務(wù)的認證問題。防止了用戶偽裝成Datanode,Tasktracker,去接受JobTracker,Namenode的任務(wù)指派。Kerberos對可信任的客戶端提供認證,確保他們可以執(zhí)行作業(yè)的相關(guān)操作。防止用戶惡意冒充client提交作業(yè)的情況。用戶無法偽裝成其他用戶入侵到一個HDFS或者MapReduce集群上。用戶即使知道datanode的相關(guān)信息,也無法讀取HDFS上的數(shù)據(jù),用戶無法發(fā)送對于作業(yè)的操作到JobTracker上。

  2 主要研究的內(nèi)容

  2.1 系統(tǒng)概述

  2.1.1 功能與作用

  眾所周知,現(xiàn)代社會的信息量增長速度極快,這些信息里又積累著大量的數(shù)據(jù),其中包括個人數(shù)據(jù)和工業(yè)數(shù)據(jù)。預(yù)計到2020年,每年產(chǎn)生的數(shù)字信息將會有超過1/3的內(nèi)容駐留在云平臺中或借助云平臺處理。我們需要對這些數(shù)據(jù)進行分析和處理,以獲取更多有價值的信息。那么我們?nèi)绾胃咝У卮鎯凸芾磉@些數(shù)據(jù),如何分析這些數(shù)據(jù)呢?這時可以選用Hadoop系統(tǒng),它在處理這類問題時,采用了分布式存儲方式,提高了讀寫速度,并擴大了存儲容量。采用MapReduce來整合分布式文件系統(tǒng)上的數(shù)據(jù),可保證分析和處理數(shù)據(jù)的高效。與此同時,Hadoop還采用存儲冗余數(shù)據(jù)的方式保證了數(shù)據(jù)的安全性。

  Hadoop中HDFS的高容錯特性,以及它是基于Java語言開發(fā)的,這使得Hadoop可以部署在低廉的計算機集群中,同時不限于某個操作系統(tǒng)。Hadoop中HDFS的數(shù)據(jù)管理能力,MapReduce處理任務(wù)時的高效率,以及它的開源特性,使其在同類的分布式系統(tǒng)中大放異彩,并在眾多行業(yè)和科研領(lǐng)域中被廣泛采用。

  2.1.2 具體任務(wù)

  對本系統(tǒng)分析后,系統(tǒng)的具體任務(wù)主要如下:

  1) 調(diào)研該項目的狀況和成果。

  2) 對所選題目進行可行性分析,從技術(shù)和可操作性上進行分析

  3) 根據(jù)目前掌握和了解的技術(shù)選擇最適合的開發(fā)工具和開發(fā)語言,對所用到的

  技術(shù)及語言相關(guān)知識進行學習鞏固

  4) 配置,部署hadoop

  5) 測試,使用hadoop

  2.1.3 設(shè)備要求

  1) 操作系統(tǒng)

  CentOS6.2

  2) Hadoop-1.0.4-1

  3) JDK1.6.0_04

  2.2 系統(tǒng)設(shè)計

  2.2.1 體系結(jié)構(gòu)

  Hadoop的核心框架包括兩個部分:HDFS 和Mapreduce;HDFS(即Hadoop Distributed System的縮寫)是分布式計算的基石,而Mapreduce是任務(wù)的分解和結(jié)果的匯總。簡單的說,Map就是 將一個任務(wù)分解成 為多個任務(wù),而Reduce就是將分解后多任務(wù)處理的結(jié)果匯總起來得出最后的結(jié)果;HDFS是一個與其它文件系統(tǒng)類似的,對于整個集群有單一的命名空間,文件被分割為多塊分配存儲到數(shù)據(jù)節(jié)點上的一個系統(tǒng)。

  圖2.1 數(shù)據(jù)處理流程圖

  3 設(shè)計的預(yù)期結(jié)果

  1) 部署和測試hadoop

  隨時掌控工作的全面情況。

  2) 使用hadoop

  用來實現(xiàn)諸如統(tǒng)計單詞出現(xiàn)次數(shù)的mapreduce程序

1.開題報告寫作內(nèi)容參考

2.壓鑄開題報告參考案例

3.開題報告范例參考

4.開題報告范本參考

5.開題報告的范文參考

6.論文開題報告的大綱參考

7.關(guān)于ofdm的開題報告

8.關(guān)于課題開題的報告

9.關(guān)于華工的開題報告

10.關(guān)于課題開題報告格式