關(guān)于我們
書單推薦
新書推薦
|
Hadoop大數(shù)據(jù)原理與應(yīng)用實(shí)驗(yàn)教程
本書作為《Hadoop大數(shù)據(jù)原理與應(yīng)用》(本書作者編寫,西安電子科技大學(xué)出版社出版)的配套實(shí)驗(yàn)教程,系統(tǒng)介紹了Hadoop生態(tài)系統(tǒng)中各個(gè)開源組件的相關(guān)知識(shí)和實(shí)踐技能。全書分為“基礎(chǔ)實(shí)驗(yàn)篇”和“拓展實(shí)驗(yàn)篇”兩篇,共10章,涉及數(shù)據(jù)采集、數(shù)據(jù)存儲(chǔ)與管理、數(shù)據(jù)處理與分析等大數(shù)據(jù)應(yīng)用生命周期中各階段典型組件的部署、使用和基礎(chǔ)編程方法!盎A(chǔ)實(shí)驗(yàn)篇”內(nèi)容包括部署全分布模式Hadoop集群、實(shí)戰(zhàn)HDFS、MapReduce編程、部署ZooKeeper集群和實(shí)戰(zhàn)ZooKeeper、部署全分布模式HBase集群和實(shí)戰(zhàn)HBase、部署本地模式Hive和實(shí)戰(zhàn)Hive;“拓展實(shí)驗(yàn)篇”內(nèi)容包括部署Spark集群和Spark編程、實(shí)戰(zhàn)Sqoop、實(shí)戰(zhàn)Flume、實(shí)戰(zhàn)Kafka。
本書內(nèi)容翔實(shí),案例豐富,操作過程詳盡,并配有完整的立體化資源,既可作為高等院校研究生、本科生的大數(shù)據(jù)技術(shù)原理與應(yīng)用課程的實(shí)驗(yàn)指導(dǎo)書,也可作為教師參考書,同時(shí)也可供相關(guān)技術(shù)人員參考。(相關(guān)資源可在西安電子科技大學(xué)出版社網(wǎng)站下載。)
大數(shù)據(jù)時(shí)代的到來,帶來了信息技術(shù)發(fā)展的巨大變革,并深刻影響著社會(huì)生產(chǎn)和人民生活的方方面面。全球范圍內(nèi),世界各國(guó)政府均高度重視大數(shù)據(jù)技術(shù)的研究與產(chǎn)業(yè)發(fā)展,紛紛把大數(shù)據(jù)上升為國(guó)家戰(zhàn)略加以重點(diǎn)推進(jìn)。大數(shù)據(jù)已經(jīng)成為企業(yè)和社會(huì)關(guān)注的重要戰(zhàn)略資源,越來越多的行業(yè)面臨著海量數(shù)據(jù)存儲(chǔ)和分析的挑戰(zhàn)。
Hadoop由道格·卡丁(Doug Cutting)創(chuàng)建,起源于開源項(xiàng)目網(wǎng)絡(luò)搜索引擎Apache Nutch,于2008年1月成為Apache頂級(jí)項(xiàng)目。Hadoop是一個(gè)開源的、可運(yùn)行于大規(guī)模集群上的分布式存儲(chǔ)和計(jì)算的軟件框架,它具有高可靠、彈性可擴(kuò)展等特點(diǎn),非常適合處理海量數(shù)據(jù)。Hadoop實(shí)現(xiàn)了分布式文件系統(tǒng)HDFS和分布式計(jì)算框架MapReduce等功能,允許用戶可以在不了解分布式系統(tǒng)底層細(xì)節(jié)的情況下,使用簡(jiǎn)單的編程模型輕松編寫出分布式程序,將其運(yùn)行于計(jì)算機(jī)集群上,完成對(duì)大規(guī)模數(shù)據(jù)集的存儲(chǔ)和分析。目前,Hadoop在業(yè)內(nèi)得到了廣泛應(yīng)用,已經(jīng)是公認(rèn)的大數(shù)據(jù)通用存儲(chǔ)和分析平臺(tái),許多廠商都圍繞Hadoop提供開發(fā)工具、開源軟件、商業(yè)化工具和技術(shù)服務(wù),例如谷歌、雅虎、微軟、淘寶等都支持Hadoop。另外,還有一些專注于Hadoop的公司,例如Cloudera、Hortonworks和MapR都可以提供商業(yè)化的Hadoop支持。
未來5~10年,我國(guó)大數(shù)據(jù)產(chǎn)業(yè)將會(huì)處于高速發(fā)展時(shí)期,社會(huì)亟需高校培養(yǎng)一大批大數(shù)據(jù)相關(guān)專業(yè)人才。自2016年以來,我國(guó)新增的大數(shù)據(jù)類專業(yè)包括“數(shù)據(jù)科學(xué)與大數(shù)據(jù)技術(shù)”本科專業(yè)(080910T)、“數(shù)據(jù)管理與應(yīng)用”本科專業(yè)(120108T)、“大數(shù)據(jù)技術(shù)與應(yīng)用”?茖I(yè)(610215),以適應(yīng)地方產(chǎn)業(yè)發(fā)展對(duì)戰(zhàn)略性新興產(chǎn)業(yè)的人才需求。因此,學(xué)會(huì)使用大數(shù)據(jù)通用存儲(chǔ)和分析平臺(tái)Hadoop及其生態(tài)系統(tǒng)對(duì)于未來適應(yīng)新一代信息技術(shù)產(chǎn)業(yè)的發(fā)展具有重要的意義。
實(shí)踐教學(xué)是高等院校知識(shí)創(chuàng)新和人才培養(yǎng)的重要環(huán)節(jié),因此,實(shí)驗(yàn)實(shí)訓(xùn)類教材建設(shè)在學(xué)生能力培養(yǎng)中發(fā)揮著不可或缺的重要作用。本書面向Hadoop生態(tài)系統(tǒng),以企業(yè)需求為導(dǎo)向,緊緊圍繞大數(shù)據(jù)應(yīng)用的閉環(huán)流程展開講述,引導(dǎo)學(xué)生進(jìn)行大數(shù)據(jù)技術(shù)的初級(jí)實(shí)踐,旨在使讀者掌握Hadoop的架構(gòu)設(shè)計(jì)和Hadoop的運(yùn)用能力。
本書分為上篇“基礎(chǔ)實(shí)驗(yàn)篇”和下篇“拓展實(shí)驗(yàn)篇”,共10章,涉及數(shù)據(jù)采集、數(shù)據(jù)存儲(chǔ)與管理、數(shù)據(jù)處理與分析等大數(shù)據(jù)應(yīng)用生命周期中各階段典型組件的部署、使用和基礎(chǔ)編程方法。在“基礎(chǔ)實(shí)驗(yàn)篇”中,實(shí)驗(yàn)1介紹了Linux基本命令、vim編輯器、Java基本命令、SSH安全通信協(xié)議、Hadoop基礎(chǔ)知識(shí)等先修技能,然后詳細(xì)講述了部署全分布模式Hadoop集群的全過程,并附加了偽分布模式Hadoop集群的部署過程;實(shí)驗(yàn)2介紹了分布式文件系統(tǒng)HDFS的體系架構(gòu)、文件存儲(chǔ)原理、接口等基礎(chǔ)知識(shí),詳細(xì)演示了如何通過HDFS Web UI和HDFS Shell命令使用HDFS以及HDFS Java API編程,并附加了如何搭建HDFS NameNode HA環(huán)境;實(shí)驗(yàn)3在介紹了分布式計(jì)算框架MapReduce編程思想、作業(yè)執(zhí)行流程的基礎(chǔ)上,講述了如何編寫MapReduce程序,并附加了在Windows平臺(tái)上開發(fā)MapReduce程序和使用MapReduce統(tǒng)計(jì)對(duì)象中某些屬性的案例;實(shí)驗(yàn)4介紹了分布式協(xié)調(diào)框架ZooKeeper的系統(tǒng)模型、工作原理等基本知識(shí),詳細(xì)演示了如何部署ZooKeeper集群以及通過ZooKeeper Shell命令使用ZooKeeper,并附加了ZooKeeper編程實(shí)踐;實(shí)驗(yàn)5介紹了分布式數(shù)據(jù)庫(kù)HBase的數(shù)據(jù)模型、體系架構(gòu)、接口等基礎(chǔ)知識(shí),詳細(xì)演示了如何部署全分布模式HBase集群以及通過HBase Web UI和HBase Shell使用HBase,并附加了HBase編程實(shí)踐;實(shí)驗(yàn)6介紹了數(shù)據(jù)倉(cāng)庫(kù)Hive的體系架構(gòu)、數(shù)據(jù)類型、文件格式、數(shù)據(jù)模型、函數(shù)、接口等基礎(chǔ)知識(shí),詳細(xì)演示了如何部署本地模式Hive以及通過Hive Shell使用Hive,并附加了Hive編程實(shí)踐。在“拓展實(shí)驗(yàn)篇”中,實(shí)驗(yàn)7介紹了內(nèi)存型計(jì)算框架Spark的生態(tài)系統(tǒng)、體系架構(gòu)、計(jì)算模型、RDD原理等基礎(chǔ)知識(shí),詳細(xì)演示了如何部署SparkStandalone集群以及Spark簡(jiǎn)單編程;實(shí)驗(yàn)8介紹了數(shù)據(jù)遷移工具Sqoop的功能、體系架構(gòu)、接口等基礎(chǔ)知識(shí),詳細(xì)演示了如何安裝Sqoop和使用Sqoop Shell完成數(shù)據(jù)的導(dǎo)入導(dǎo)出操作;實(shí)驗(yàn)9介紹了日志采集工具Flume的功能、體系架構(gòu)、接口等基礎(chǔ)知識(shí),詳細(xì)演示了如何安裝、配置Flume以及使用Flume高效進(jìn)行海量日志的收集、聚合和移動(dòng);實(shí)驗(yàn)10介紹了分布式流平臺(tái)Kafka的功能、體系架構(gòu)、Kafka Shell、Kafka API,詳細(xì)演示了如何部署Kafka集群以及通過Kafka Shell使用Kafka進(jìn)行生產(chǎn)和消費(fèi)消息。
為了方便讀者整體把握各個(gè)實(shí)驗(yàn),本書在每個(gè)實(shí)驗(yàn)的一開始先給出該實(shí)驗(yàn)的知識(shí)地圖。根據(jù)我們近幾年的教學(xué)實(shí)踐,建議根據(jù)本書為大數(shù)據(jù)技術(shù)原理與應(yīng)用課程增加16學(xué)時(shí)的上機(jī)實(shí)踐課,可根據(jù)具體情況靈活安排本書實(shí)驗(yàn)項(xiàng)目。
本書面向高等院校計(jì)算機(jī)、大數(shù)據(jù)、人工智能等相關(guān)專業(yè)的研究生、本科生,可以作為專業(yè)核心課程大數(shù)據(jù)技術(shù)原理與應(yīng)用的輔助實(shí)驗(yàn)教材。本書是《Hadoop大數(shù)據(jù)原理與應(yīng)用》教材的配套實(shí)驗(yàn)教程,兩本書配套使用,可以達(dá)到更好的學(xué)習(xí)效果。此外,本書也可以作為現(xiàn)有其他大數(shù)據(jù)教材的實(shí)驗(yàn)教材或輔助教材。
本書由校企聯(lián)合完成,實(shí)驗(yàn)1由安徽信息工程學(xué)院李月軍編寫,實(shí)驗(yàn)2由鄭州升達(dá)經(jīng)貿(mào)管理學(xué)院周湘貞編寫,實(shí)驗(yàn)3由國(guó)信藍(lán)橋教育科技(北京)股份有限公司顏群工程師編寫,實(shí)驗(yàn)4~10由西京學(xué)院徐魯輝編寫。此外,李月軍和周湘貞還參與了本書全部架構(gòu)設(shè)計(jì)和部分審閱工作。全書由國(guó)信藍(lán)橋教育科技(北京)股份有限公司大數(shù)據(jù)專家唐友剛主審,由西京學(xué)院徐魯輝負(fù)責(zé)策劃、審校和定稿。
本書與配套教材《Hadoop大數(shù)據(jù)原理與應(yīng)用》擁有完整的立體化資源,包括教學(xué)大綱、授課計(jì)劃、教案、PPT、源代碼、在線題庫(kù)、實(shí)驗(yàn)大綱、實(shí)驗(yàn)指導(dǎo)書、實(shí)驗(yàn)視頻、項(xiàng)目案例庫(kù)等教學(xué)資源,提供全方位的免費(fèi)服務(wù)。讀者可通過以下三種方式免費(fèi)在線瀏覽或下載全部配套資源:教材官方網(wǎng)站https://dzxxgcx.xijing.edu.cn/xkzy/zxkc.htm/pabigdata/ index.asp,教材官方云班課“Hadoop大數(shù)據(jù)原理與應(yīng)用教材云班課”(邀請(qǐng)碼5962412),教材官方GitHub網(wǎng)站https://github.com/xuluhuixijing/pabigdata。
本書中關(guān)于圖形界面元素代替符號(hào)的約定如表1所示。
表1 本書圖形界面元素代替符號(hào)約定
文字描述 代替符號(hào) 舉 例
按鈕 邊框+陰影+底紋 “確定”按鈕可簡(jiǎn)化為確定
菜單項(xiàng) 『 』 菜單項(xiàng)“文件”可簡(jiǎn)化為『File』
連續(xù)選擇菜單項(xiàng)及子菜單項(xiàng) → 選擇『File』→『New』→『Java Project』
下拉框、單選框、復(fù)選框選項(xiàng) [ ] 復(fù)選框選項(xiàng)“啟用用戶”可簡(jiǎn)化為[啟用用戶]
窗口名 【 】 例如,進(jìn)入窗口【Properties for HDFSExample】
提示信息 “ ” 例如,否則會(huì)出現(xiàn)錯(cuò)誤信息“bash: ****: command not found...”
本書中各實(shí)驗(yàn)所使用軟件的名稱、版本、發(fā)布日期及下載地址如表2所示。
表2 本書使用軟件的名稱、版本、發(fā)布日期及下載地址
序號(hào) 軟件名稱 軟件版本 發(fā)布日期 下載地址 安裝文件名
1 VMware Workstation Pro VMware Workstation 12.5.7 Pro
for Windows 2017.6.22 https://www.vmware.com/products
/workstationpro.html VMwareworkstation
full12.5.75813279.
exe
2 CentOS CentOS 7.6.1810 2018.11.26 https://www.centos.org/download/ CentOS7x86_64
DVD1810.iso
3 Java Oracle
JDK 8u191 2018.10.16 http://www.oracle.com/technetwork
/java/javase/downloads/index.html jdk8u191linuxx64.
tar.gz
4 Hadoop Hadoop 2.9.2 2018.11.19 http://hadoop.apache.org
/releases.html hadoop2.9.2.tar.gz
5 Eclipse Eclipse IDE 201809 for Java evelopers 2018.9 https://www.eclipse.org/downloads
/packages eclipsejava201809
linuxgtkx86_64.
tar.gz
6 ZooKeeper ZooKeeper 3.4.13 2018.7.15 http://zookeeper.apache.org
/releases.html zookeeper3.4.13.
tar.gz
7 HBase HBase 1.4.10 2019.6.10 https://hbase.apache.org
/downloads.html hbase1.4.10bin.tar.gz
8 MySQL Connector
/J MySQL Connector/J 5.1.48 2019.7.29 https://dev.mysql.com/downloads
/connector/j/ mysqlconnectorjava
5.1.48.tar.gz
續(xù)表
序號(hào) 軟件名稱 軟件版本 發(fā)布日期 下載地址 安裝文件名
9 MySQL Community Server MySQL Community 5.7.27 2019.7.22 http://dev.mysql.com/get/mysql57
communityreleaseel711.noarch.
rpm mysql57community
releaseel711.noarch.
rpm(Yum Repository)
10 Hive Hive 2.3.4 2018.11.7 https://hive.apache.org
/downloads.html apachehive2.3.4
bin.tar.gz
11 Spark Spark 2.3.3 2019.2.15 https://spark.apache.org
/downloads.html spark2.3.3binhaoop
2.7.tgz
12 Sqoop Sqoop 1.4.7 2017.12 http://www.apache.org
/dyn/closer.lua/sqoop/ sqoop1.4.7.bin_
hadoop2.6.0.tar.gz
13 Flume Flume 1.9.0 2019.1.8 http://flume.apache.org
/download.html apacheflume1.9.0
bin.tar.gz
14 Kafka Kafka 2.1.1 2019.2.15 http://kafka.apache.org
/downloads kafka_2.122.1.1.tgz
本書在編寫過程中得到了很多人的幫助。國(guó)信藍(lán)橋教育科技(北京)股份有限公司高校合作部項(xiàng)目經(jīng)理單寶軍在教材編寫方面提供了幫助,西京學(xué)院校長(zhǎng)黃文準(zhǔn)、西京學(xué)院信息工程學(xué)院院長(zhǎng)郭建新、副院長(zhǎng)烏偉在學(xué)院政策方面提供了支持,西安電子科技大學(xué)出版社李惠萍編輯對(duì)本書的出版提出了很多意見和建議,在此一并表示衷心感謝。
本書在撰寫的過程中參考了部分國(guó)內(nèi)外教材、專著、論文和開源社區(qū)資源,在此也向這些文獻(xiàn)作者一并致謝。由于作者水平和能力有限,書中難免有疏漏與不足之處,衷心希望廣大同行和讀者批評(píng)指正。
上篇 基礎(chǔ)實(shí)驗(yàn)篇
實(shí)驗(yàn)1 部署全分布模式Hadoop集群 2
1.1 實(shí)驗(yàn)?zāi)康、?shí)驗(yàn)環(huán)境和實(shí)驗(yàn)內(nèi)容 3
1.2 實(shí)驗(yàn)原理 3
1.2.1 Linux基本命令 3
1.2.2 vim編輯器 6
1.2.3 Java基本命令 7
1.2.4 SSH安全通信協(xié)議 8
1.2.5 Hadoop 8
1.3 實(shí)驗(yàn)步驟 12
1.3.1 規(guī)劃部署 12
1.3.2 準(zhǔn)備機(jī)器 14
1.3.3 準(zhǔn)備軟件環(huán)境 14
1.3.4 獲取和安裝Hadoop 22
1.3.5 配置全分布模式Hadoop集群 22
1.3.6 關(guān)閉防火墻 30
1.3.7 格式化文件系統(tǒng) 31
1.3.8 啟動(dòng)和驗(yàn)證Hadoop 32
1.3.9 關(guān)閉Hadoop 41
1.3.10 實(shí)驗(yàn)報(bào)告要求 42
1.4 拓展訓(xùn)練——部署偽分布模式
?Hadoop集群 42
1.4.1 規(guī)劃部署 43
1.4.2 準(zhǔn)備機(jī)器 43
1.4.3 準(zhǔn)備軟件環(huán)境 44
1.4.4 下載和安裝Hadoop 47
1.4.5 配置Hadoop 47
1.4.6 格式化文件系統(tǒng) 49
1.4.7 啟動(dòng)和驗(yàn)證偽分布模式
Hadoop集群 49
1.4.8 關(guān)閉偽分布模式Hadoop集群 54
思考與練習(xí)題 55
參考文獻(xiàn) 55
實(shí)驗(yàn)2 實(shí)戰(zhàn)HDFS 57
2.1 實(shí)驗(yàn)?zāi)康摹?shí)驗(yàn)環(huán)境和實(shí)驗(yàn)內(nèi)容 57
2.2 實(shí)驗(yàn)原理 58
2.2.1 初識(shí)HDFS 58
2.2.2 HDFS的體系架構(gòu) 58
2.2.3 HDFS文件的存儲(chǔ)原理 60
2.2.4 HDFS接口 64
2.3 實(shí)驗(yàn)步驟 70
2.3.1 啟動(dòng)Hadoop集群 70
2.3.2 使用 HDFS Shell 71
2.3.3 使用HDFS Web UI 72
2.3.4 搭建HDFS的開發(fā)環(huán)境Eclipse 73
2.3.5 使用HDFS Java API編程 75
2.3.6 關(guān)閉Hadoop集群 87
2.3.7 實(shí)驗(yàn)報(bào)告要求 87
2.4 拓展訓(xùn)練——?搭建HDFS
NameNode HA 88
思考與練習(xí)題 92
參考文獻(xiàn) 92
實(shí)驗(yàn)3 MapReduce編程 94
3.1 實(shí)驗(yàn)?zāi)康、?shí)驗(yàn)環(huán)境和實(shí)驗(yàn)內(nèi)容 94
3.2 實(shí)驗(yàn)原理 95
3.2.1 MapReduce的編程思想 95
3.2.2 MapReduce的作業(yè)執(zhí)行流程 97
3.2.3 MapReduce Web 98
3.2.4 MapReduce Shell 98
3.2.5 MapReduce Java API 99
3.3 實(shí)驗(yàn)步驟 99
3.3.1 啟動(dòng)Hadoop集群 99
3.3.2 搭建MapReduce的
開發(fā)環(huán)境Eclipse 100
3.3.3 編寫并運(yùn)行MapReduce程序
WordCount 100
3.3.4 練習(xí)使用MapReduce Shell命令 111
3.3.5 練習(xí)使用MapReduce Web UI
界面 112
3.3.6 關(guān)閉Hadoop集群 113
3.3.7 實(shí)驗(yàn)報(bào)告要求 113
3.4 拓展訓(xùn)練 113
3.4.1 在Windows平臺(tái)上開發(fā)
MapReduce程序 113
3.4.2 MapReduce編程實(shí)踐:使用
MapReduce統(tǒng)計(jì)對(duì)象中的
某些屬性 117
思考與練習(xí)題 122
參考文獻(xiàn) 122
實(shí)驗(yàn)4 部署ZooKeeper集群和實(shí)戰(zhàn)
ZooKeeper 123
4.1 實(shí)驗(yàn)?zāi)康摹?shí)驗(yàn)環(huán)境和實(shí)驗(yàn)內(nèi)容 123
4.2 實(shí)驗(yàn)原理 124
4.2.1 ZooKeeper的系統(tǒng)模型 124
4.2.2 ZooKeeper的工作原理 128
4.2.3 部署ZooKeeper 131
4.2.4 ZooKeeper的四字命令 134
4.2.5 ZooKeeper Shell 135
4.2.6 ZooKeeper Java API 137
4.3 實(shí)驗(yàn)步驟 139
4.3.1 規(guī)劃ZooKeeper集群 139
4.3.2 部署ZooKeeper集群 140
4.3.3 啟動(dòng)ZooKeeper集群 143
4.3.4 驗(yàn)證ZooKeeper集群 144
4.3.5 使用ZooKeeper的四字命令 144
4.3.6 使用ZooKeeper Shell的
常用命令 146
4.3.7 關(guān)閉ZooKeeper集群 151
4.3.8 實(shí)驗(yàn)報(bào)告要求 151
4.4 拓展訓(xùn)練 152
4.4.1 搭建ZooKeeper的
開發(fā)環(huán)境Eclipse 152
4.4.2 ZooKeeper編程實(shí)踐——
ZooKeeper文件系統(tǒng)的增刪改查 152
4.4.3 ZooKeeper編程實(shí)踐——
循環(huán)監(jiān)聽 160
思考與練習(xí)題 162
參考文獻(xiàn) 163
實(shí)驗(yàn)5 部署全分布模式HBase集群和
實(shí)戰(zhàn)HBase 164
5.1 實(shí)驗(yàn)?zāi)康、?shí)驗(yàn)環(huán)境和實(shí)驗(yàn)內(nèi)容 164
5.2 實(shí)驗(yàn)原理 165
5.2.1 初識(shí)HBase 165
5.2.2 HBase的數(shù)據(jù)模型 165
5.2.3 HBase的體系架構(gòu) 169
5.2.4 部署HBase 172
5.2.5 HBase接口 174
5.3 實(shí)驗(yàn)步驟 178
5.3.1 規(guī)劃全分布模式HBase集群 178
5.3.2 部署全分布模式HBase集群 179
5.3.3 啟動(dòng)全分布模式HBase集群 183
5.3.4 驗(yàn)證全分布模式HBase集群 184
5.3.5 使用HBase Shell和HBase
Web UI 186
5.3.6 關(guān)閉全分布模式HBase集群 189
5.3.7 實(shí)驗(yàn)報(bào)告要求 189
5.4 拓展訓(xùn)練 190
5.4.1 搭建HBase的開發(fā)環(huán)境Eclipse 190
5.4.2 HBase編程實(shí)踐:HBase表的
增刪改 190
思考與練習(xí)題 192
參考文獻(xiàn) 192
實(shí)驗(yàn)6 部署本地模式Hive和實(shí)戰(zhàn)Hive 194
6.1 實(shí)驗(yàn)?zāi)康摹?shí)驗(yàn)環(huán)境和實(shí)驗(yàn)內(nèi)容 194
6.2 實(shí)驗(yàn)原理 195
6.2.1 初識(shí)Hive 195
6.2.2 Hive的體系架構(gòu) 196
6.2.3 Hive的數(shù)據(jù)類型 198
6.2.4 Hive的文件格式 199
6.2.5 Hive的數(shù)據(jù)模型 200
6.2.6 Hive函數(shù) 201
6.2.7 部署Hive 205
6.2.8 Hive接口 208
6.3 實(shí)驗(yàn)步驟 211
6.3.1 規(guī)劃Hive 211
6.3.2 部署本地模式Hive 213
6.3.3 驗(yàn)證Hive 223
6.3.4 使用Hive Shell 224
6.3.5 實(shí)驗(yàn)報(bào)告要求 227
6.4 拓展訓(xùn)練 228
6.4.1 搭建Hive的開發(fā)環(huán)境Eclipse 228
6.4.2 Hive編程實(shí)踐:操縱Hive
數(shù)據(jù)庫(kù)和表 228
思考與練習(xí)題 235
參考文獻(xiàn) 236
下篇 拓展實(shí)驗(yàn)篇
實(shí)驗(yàn)7 部署Spark集群和Spark編程 238
7.1 實(shí)驗(yàn)?zāi)康、?shí)驗(yàn)環(huán)境和實(shí)驗(yàn)內(nèi)容 238
7.2 實(shí)驗(yàn)原理 239
7.2.1 初識(shí)Spark 239
7.2.2 Spark的體系架構(gòu) 241
7.2.3 Spark的計(jì)算模型 246
7.2.4 RDD的設(shè)計(jì)與運(yùn)行原理 247
7.2.5 Spark集群部署 250
7.2.6 Spark接口 252
7.3 實(shí)驗(yàn)步驟 255
7.3.1 規(guī)劃SparkStandalone集群 255
7.3.2 手工部署SparkStandalone集群 257
7.3.3 啟動(dòng)SparkStandalone集群 261
7.3.4 驗(yàn)證SparkStandalone集群 261
7.3.5 使用Spark Web UI、Spark Shell和
Spark API 261
7.3.6 關(guān)閉SparkStandalone集群 267
思考與練習(xí)題 268
參考文獻(xiàn) 268
實(shí)驗(yàn)8 實(shí)戰(zhàn)Sqoop 269
8.1 實(shí)驗(yàn)?zāi)康、?shí)驗(yàn)環(huán)境和實(shí)驗(yàn)內(nèi)容 269
8.2 實(shí)驗(yàn)原理 270
8.2.1 初識(shí)Sqoop 270
8.2.2 Sqoop的體系架構(gòu) 271
8.2.3 安裝Sqoop 272
8.2.4 Sqoop Shell 273
8.2.5 Sqoop API 277
8.3 實(shí)驗(yàn)步驟 277
8.3.1 規(guī)劃安裝 277
8.3.2 安裝和配置Sqoop 279
8.3.3 驗(yàn)證Sqoop 281
8.3.4 使用Sqoop Shell 281
思考與練習(xí)題 301
參考文獻(xiàn) 301
實(shí)驗(yàn)9 實(shí)戰(zhàn)Flume 302
9.1 實(shí)驗(yàn)?zāi)康、?shí)驗(yàn)環(huán)境和實(shí)驗(yàn)內(nèi)容 302
9.2 實(shí)驗(yàn)原理 303
9.2.1 初識(shí)Flume 303
9.2.2 Flume的體系架構(gòu) 304
9.2.3 安裝Flume 306
9.2.4 Flume Shell 307
9.2.5 Flume API 309
9.3 實(shí)驗(yàn)步驟 309
9.3.1 規(guī)劃安裝 309
9.3.2 安裝和配置Flume 310
9.3.3 驗(yàn)證Flume 311
9.3.4 使用Flume 311
思考與練習(xí)題 318
參考文獻(xiàn) 318
實(shí)驗(yàn)10 實(shí)戰(zhàn)Kafka 319
10.1 實(shí)驗(yàn)?zāi)康、?shí)驗(yàn)環(huán)境和實(shí)驗(yàn)內(nèi)容 319
10.2 實(shí)驗(yàn)原理 320
10.2.1 初識(shí)Kafka 320
10.2.2 Kafka的體系架構(gòu) 321
10.2.3 安裝Kafka 323
10.2.4 Kafka Shell 325
10.2.5 Kafka API 326
10.3 實(shí)驗(yàn)步驟 326
10.3.1 規(guī)劃Kafka集群 326
10.3.2 部署Kafka集群 327
10.3.3 啟動(dòng)Kafka集群 329
10.3.4 驗(yàn)證Kafka集群 330
10.3.5 使用Kafka Shell 330
10.3.6 關(guān)閉Kafka集群 334
思考與練習(xí)題 334
參考文獻(xiàn) 334
你還可能感興趣
我要評(píng)論
|