《Hadoop大數(shù)據(jù)技術(shù)基礎(chǔ)(Python版)微課視頻版》從初學者角度出發(fā),通過豐富的示例和實戰(zhàn)項目,詳細講解大數(shù)據(jù)開發(fā)環(huán)境、關(guān)鍵技術(shù)及其應(yīng)用。全書共分10章,第1~9章的內(nèi)容分別為大數(shù)據(jù)概述、Linux系統(tǒng)的安裝與使用、Python 3語言基礎(chǔ)、Hadoop開發(fā)環(huán)境、HDFS技術(shù)、MapReduce技術(shù)、Hive數(shù)據(jù)倉庫、HBase分布式數(shù)據(jù)庫、Sqoop工具,第10章詳細解析了實戰(zhàn)項目貨運車分布分析平臺,幫助初學者快速入門。本書所有知識點都結(jié)合具體的編程示例,對于重要知識點提供視頻講解,還設(shè)計了多個實訓,使讀者通過實踐環(huán)節(jié)加強對知識點的理解和掌握。 本書適合作為高等院校計算機應(yīng)用、大數(shù)據(jù)技術(shù)及相關(guān)專業(yè)的教材,也適合作為大數(shù)據(jù)技術(shù)相關(guān)培訓的教材和大數(shù)據(jù)技術(shù)初學者的自學資料。
1. 《Hadoop大數(shù)據(jù)技術(shù)基礎(chǔ)(Python版)微課視頻版》從初學者角度出發(fā),通過豐富的實操示例和實戰(zhàn)項目解析,詳細講解大數(shù)據(jù)開發(fā)環(huán)境、關(guān)鍵技術(shù)及其應(yīng)用。
2. 本書基于Python環(huán)境編寫,幫助讀者在較短時間內(nèi)同時掌握Python基本語法與大數(shù)據(jù)入門技術(shù),對大數(shù)據(jù)技術(shù)入門者具有較高價值。
3. 本書設(shè)計了豐富的實訓內(nèi)容,提供300分鐘微課視頻、PPT課件、教學大綱、實例源碼、習題答案等資源,適合作為大專院校數(shù)據(jù)科學與大數(shù)據(jù)技術(shù)、大數(shù)據(jù)管理與應(yīng)用及相關(guān)專業(yè)的教材,也適合作為大數(shù)據(jù)技術(shù)初學者自學用書。
1. 為什么要學習本書
隨著5G、工業(yè)互聯(lián)網(wǎng)、人工智能等前沿科技的發(fā)展,工業(yè)大數(shù)據(jù)將從探索起步階段邁入縱深發(fā)展階段,迎來快速發(fā)展的機遇期,全球工業(yè)大數(shù)據(jù)行業(yè)的競爭也將變得更為激烈。隨著市場數(shù)據(jù)增長的加劇,國家對數(shù)據(jù)服務(wù)的要求也越來越多樣化、專業(yè)化、快速化,大數(shù)據(jù)的存儲和分析無疑對所有數(shù)據(jù)企業(yè)是一個挑戰(zhàn)。
Apache Hadoop是用于大規(guī)模數(shù)據(jù)存儲及處理的分析引擎,具有高可靠性、高效性、高擴展性、高容錯性、低成本等特點,并且在Hadoop生態(tài)體系中,包含了分布式文件存儲系統(tǒng)、分布式計算系統(tǒng)、分布式列存儲數(shù)據(jù)庫、分布式協(xié)作服務(wù)、數(shù)據(jù)倉庫等多方面的解決方案,深受廣大軟件開發(fā)工程師的喜愛。對于想從事大數(shù)據(jù)行業(yè)的開發(fā)人員來說,學好Hadoop尤為重要。
Hadoop技術(shù)功能強大,涉及知識面較廣,沒有基礎(chǔ)的讀者很難深入Hadoop體系架構(gòu)之中,因此本書采用理論和案例相結(jié)合的講解方式,將知識點由淺入深、由易到難地進行解析,讓初學者能夠在逐漸深入的學習過程中掌握Hadoop的生態(tài)體系。
2. 本書內(nèi)容
本書共分10章,各章內(nèi)容簡介如下。
第1章主要介紹大數(shù)據(jù)的產(chǎn)生與發(fā)展,以及大數(shù)據(jù)技術(shù)的生態(tài)工具。通過本章的學習,讀者應(yīng)了解為什么要學習大數(shù)據(jù)、大數(shù)據(jù)生態(tài)系統(tǒng)有哪些成員。
第2章主要介紹Linux系統(tǒng)的安裝、基本命令操作、權(quán)限與目錄管理、文件操作及網(wǎng)絡(luò)配置。通過本章的學習,讀者應(yīng)掌握Linux系統(tǒng)的常用操作。
第3章主要介紹Python 3語言的基礎(chǔ)語法。通過本章的學習,讀者應(yīng)掌握Python 3環(huán)境的安裝與配置,熟悉Python 3的基礎(chǔ)語法。
第4章主要介紹Hadoop生態(tài)圈常用工具和Hadoop大數(shù)據(jù)集群環(huán)境的搭建。通過本章的學習,讀者應(yīng)掌握Hadoop大數(shù)據(jù)集群環(huán)境的搭建及Hadoop大數(shù)據(jù)集群常見問題的處理。
第5章主要介紹HDFS的工作原理及HDFS的操作。通過本章的學習,讀者應(yīng)掌握HDFS的工作原理、HDFS命令與HDFS API的常用操作,并且能夠使用API解決實際問題。
第6章主要介紹MapReduce的工作原理及API的操作。通過本章的學習,讀者應(yīng)掌握MapReduce的工作原理和API的常用操作,并且能夠使用MRJob模型編程解決實際問題。
第7章主要介紹Hive數(shù)據(jù)倉庫的工作原理、Hive環(huán)境的搭建和HiveQL的使用。通過本章的學習,讀者應(yīng)掌握Hive環(huán)境的安裝與配置,熟悉HiveQL的基礎(chǔ)語法,并且能夠使用HiveQL解決實際問題。
第8章主要介紹HBase分布式數(shù)據(jù)庫的數(shù)據(jù)模型以及操作方式。通過本章的學習,讀者應(yīng)掌握部署HBase集群的方法,了解HBase存儲數(shù)據(jù)的架構(gòu)原理,并且能夠使用HBase分布式數(shù)據(jù)庫解決實際問題。
第9章主要介紹Sqoop工具的環(huán)境搭建及Sqoop工具的使用。通過本章的學習,讀者應(yīng)掌握Sqoop工具的安裝和操作,并且能夠使用Sqoop工具實現(xiàn)ETL操作。
第10章主要介紹貨運車分布分析平臺的構(gòu)建、開發(fā)和部署,該平臺是基于HDFS的離線分析項目,使用Python語言對分析結(jié)果進行了可視化展示。通過本章的學習,讀者應(yīng)掌握如何基于Python語言開發(fā)Hadoop程序。
3. 作者與致謝
本書由劉彬斌著,參與本書的編寫、資料整理、書稿校對、課件制作等工作的有周磊、廖云華、胡涵等。感謝清華大學出版社專業(yè)嚴謹?shù)墓ぷ鲬B(tài)度,為本書的順利出版提供了寶貴的意見,并付出了辛勤的勞動。
4. 配套資源
讀者在學習本書時,可以配合與本書配套的講解視頻、教學大綱、PPT課件、習題和實例源碼等資源,快速提升編程水平和解決實際問題的能力。
讀者掃描本書封底文泉云盤涂層下的二維碼,綁定微信后,即可掃描書中的二維碼觀看對應(yīng)視頻來進行學習(配有視頻的章節(jié)已在目錄中標出)。
教學大綱、PPT課件、習題答案和實例源碼等資源可以從清華大學出版社官方微信公眾號書圈(見封底)下載。關(guān)于本書及資源使用中的問題,請聯(lián)系404905510@qq.com。
編者2022年1月
第1章大數(shù)據(jù)概述
1.1大數(shù)據(jù)的產(chǎn)生與發(fā)展
1.2大數(shù)據(jù)的基礎(chǔ)知識
1.3大數(shù)據(jù)架構(gòu)
1.4本章小結(jié)
1.5課后習題
第2章Linux系統(tǒng)的安裝與使用
2.1系統(tǒng)安裝
2.1.1安裝 CentOS 7.x
2.1.2安裝步驟
2.2基本命令
2.2.1cd命令
2.2.2打包和解壓命令
2.2.3其他常用命令
2.3權(quán)限與目錄
2.3.1權(quán)限
2.3.2目錄
2.4文件操作
2.4.1文件與目錄管理
2.4.2用戶和用戶組管理
2.5網(wǎng)絡(luò)配置
2.6本章小結(jié)
2.7課后習題
第3章Python 3語言基礎(chǔ)
3.1Python 3簡介
3.1.1Python 的發(fā)展歷史
3.1.2Python的應(yīng)用
3.2環(huán)境搭建
3.2.1Python 3環(huán)境的搭建
3.2.2PyCharm
3.3基礎(chǔ)語法
3.3.1語法規(guī)范
3.3.2數(shù)據(jù)類型
3.3.3Number數(shù)據(jù)類型
3.3.4字符串
3.3.5列表
3.3.6元組
3.3.7字典
3.3.8集合
3.3.9函數(shù)
3.3.10模塊
3.3.11類和對象
3.3.12封裝
3.3.13構(gòu)造函數(shù)
3.3.14繼承
3.3.15異常
3.3.16操作MySQL
3.4本章小結(jié)
3.5課后習題
3.6實訓
第4章Hadoop開發(fā)環(huán)境
4.1Hadoop生態(tài)圈工具
4.2環(huán)境搭建
4.2.1Linux虛擬機基礎(chǔ)配置
4.2.2Xshell工具
4.2.3安裝JDK
4.2.4安裝Hadoop
4.2.5安裝SSH
4.2.6復制虛擬機
4.2.7修改其他虛擬機
4.2.8設(shè)置免密
4.2.9啟動Hadoop集群
4.3常見問題匯總
4.4本章小結(jié)
4.5課后習題
第5章HDFS技術(shù)
5.1HDFS架構(gòu)
5.2HDFS命令
5.2.1version命令
5.2.2dfsadmin命令
5.2.3jar命令
5.2.4fs命令
5.3API的使用
5.3.1hdfs模塊
5.3.2pyhdfs模塊
5.4本章小結(jié)
5.5課后習題
5.6實訓
第6章MapReduce技術(shù)
6.1MapReduce工作原理
6.1.1MapReduce作業(yè)流程
6.1.2早期MapReduce架構(gòu)存在的問題
6.2YARN運行概述
6.2.1yarn模塊介紹
6.2.2YARN的工作流程
6.3利用Python進行MapReduce編程
6.3.1Hadoop Streaming概述
6.3.2Hadoop Streaming原理
6.3.3Hadoop Streaming用法
6.3.4Python編寫MapReduce環(huán)境搭建
6.3.5用Python編寫MapReduce代碼入門程序(詞頻統(tǒng)計)
6.3.6清洗數(shù)據(jù)
6.4mrjob模塊
6.4.1mrjob模塊概述
6.4.2安裝mrjob模塊
6.4.3mrjob模塊的第一個例子(詞頻統(tǒng)計)
6.4.4mrjob模塊的運行方式
6.4.5MRJob類的工作原理
6.4.6mrjob模塊的數(shù)據(jù)清洗
6.4.7mrjob模塊的兩表合并
6.5本章小結(jié)
6.6課后習題
6.7實訓
第7章Hive數(shù)據(jù)倉庫
7.1Hive模型
7.1.1Hive的架構(gòu)與基本組成
7.1.2Hive的數(shù)據(jù)模型
7.2Hive安裝
7.2.1Hive的基本安裝
7.2.2MySQL的安裝
7.2.3Hive的配置
7.3HiveQL詳解
7.3.1元數(shù)據(jù)存儲
7.3.2數(shù)據(jù)存儲
7.3.2HQL操作
7.4本章小結(jié)
7.5課后習題
7.6實訓
第8章HBase分布式數(shù)據(jù)庫
8.1HBase工作原理
8.1.1HBase的表結(jié)構(gòu)
8.1.2體系結(jié)構(gòu)
8.1.3物理模型
8.1.4HBase讀寫流程
8.2HBase完全分布式
8.2.1安裝前準備
8.2.2配置文件
8.2.3集群啟動
8.3HBase Shell
8.3.1DDL操作
8.3.2DML操作
8.4本章小結(jié)
8.5課后習題
第9章Sqoop工具
9.1Sqoop的安裝
9.2Sqoop的使用
9.2.1MySQL數(shù)據(jù)的導入導出
9.2.2Oracle數(shù)據(jù)的導入導出
9.3本章小結(jié)
9.4課后習題
第10章Hadoop實戰(zhàn)貨運車分布分析平臺
10.1需求分析
10.2案例1: 各個城市中各種貨運車的數(shù)量
10.2.1業(yè)務(wù)簡介
10.2.2業(yè)務(wù)模型
10.2.3業(yè)務(wù)邏輯
10.2.4數(shù)據(jù)呈現(xiàn)
10.3案例2: 報廢貨運車占比
10.3.1業(yè)務(wù)簡介
10.3.2業(yè)務(wù)模型
10.3.3業(yè)務(wù)邏輯
10.3.4數(shù)據(jù)呈現(xiàn)
10.4案例3: 各種貨運車的總量
10.4.1業(yè)務(wù)簡介
10.4.2業(yè)務(wù)模型
10.4.3業(yè)務(wù)邏輯
10.4.4數(shù)據(jù)呈現(xiàn)