由于云計(jì)算的發(fā)展十分迅猛,自《云計(jì)算及其實(shí)踐教程》出版以來,新的Hadoop 2.0平臺(tái)及YARN框架的出現(xiàn)、新的云平臺(tái)Spark的出現(xiàn)及迅速被廣泛接受,促使我們下決心更新教材內(nèi)容,趕上時(shí)代發(fā)展。
根據(jù)教學(xué)反饋,學(xué)生對(duì)云計(jì)算實(shí)踐很關(guān)注。原有教材主要關(guān)注在Windows平臺(tái)的云開發(fā),少量涉及Linux平臺(tái),修訂版增加了Linux平臺(tái)的云開發(fā),并在宏觀意義上給出了幾條不同的加強(qiáng)云平臺(tái)實(shí)踐和開發(fā)的學(xué)習(xí)路徑。
本書共分11章。第1章云計(jì)算概論,介紹了云計(jì)算的定義和特征、云計(jì)算的SPI服務(wù)模型;第2章主流云平臺(tái),介紹了Amazon云平臺(tái)、Google云平臺(tái)、OpenStack云平臺(tái)等;第3章Windows Azure云平臺(tái),介紹了微軟的云服務(wù)、Windows Azure云平臺(tái)及其組成;第4章虛擬化,介紹了虛擬化的概念、功能、產(chǎn)品和應(yīng)用方案;第5章Hadoop云平臺(tái),介紹了并行計(jì)算的概念、Hadoop的各個(gè)組件構(gòu)成和原理、Hadoop程序?qū)嵗\(yùn)行;第6章Spark平臺(tái),介紹Spark產(chǎn)生背景、生態(tài)系統(tǒng)、核心概念RDD、程序設(shè)計(jì)實(shí)例;第7章云存儲(chǔ),介紹了云存儲(chǔ)的概念、FCoE接口、NoSQL的概念和實(shí)例、云存儲(chǔ)方案設(shè)計(jì)和存儲(chǔ)虛擬化;第8章云安全,介紹了云安全的概念、技術(shù)和應(yīng)用方案;第9章云標(biāo)準(zhǔn),介紹了云計(jì)算的各種標(biāo)準(zhǔn)化組織;第10章云計(jì)算與物聯(lián)網(wǎng)通信,介紹了物聯(lián)網(wǎng)三層體系結(jié)構(gòu)、物聯(lián)網(wǎng)通信的概念、WPAN、WLAN、WMAN和WWAN等;第11章云計(jì)算實(shí)踐,介紹了基于Windows Azure和Hadoop、Spark平臺(tái)的九個(gè)實(shí)驗(yàn)的實(shí)驗(yàn)指導(dǎo),其實(shí)驗(yàn)步驟詳細(xì),初學(xué)者也可以參照學(xué)習(xí)和實(shí)踐。本書包括三個(gè)附錄:附錄1為各章習(xí)題答案;附錄2為增補(bǔ)習(xí)題及其答案;附錄3為中英文術(shù)語對(duì)照表。本書提供教學(xué)用的PPT課件、實(shí)驗(yàn)源程序和實(shí)驗(yàn)用的素材等,可在出版社網(wǎng)站下載。
與第一版相比,第二版修訂的內(nèi)容包括:
第一,新增了云計(jì)算平臺(tái)Spark的基本理論,包括產(chǎn)生背景、生態(tài)系統(tǒng)、核心概念RDD、程序設(shè)計(jì)實(shí)例。新增YARN的核心概念以及架構(gòu)。
第二,補(bǔ)充完善了虛擬機(jī)的遷移、網(wǎng)絡(luò)虛擬化、桌面虛擬化等方面的內(nèi)容。
第三,NoSQL技術(shù)目前應(yīng)用越來越廣泛,包括阿里云等國內(nèi)廠商也在迅速跟進(jìn)使用MongoDB等NoSQL數(shù)據(jù)庫,學(xué)生畢業(yè)設(shè)計(jì)和就業(yè)已開始涉及這些新知識(shí)。更新原有教材,加強(qiáng)NoSQL的實(shí)例和分類以及FCoE接口、集群存儲(chǔ)的概念和方案。
第四,在實(shí)踐方面,增加了Linux平臺(tái)的云開發(fā),包括支持YARN的Hadoop分布式安裝和部署、Spark安裝、編寫和運(yùn)行Hadoop和Spark程序、Spark Shell程序命令執(zhí)行等,并給出加強(qiáng)云平臺(tái)實(shí)踐和開發(fā)的學(xué)習(xí)路徑建議。
第五,各章中更新和增加了溫馨提示部分,幫助讀者理解易混淆的相關(guān)概念。
第六,增加了一些計(jì)算題和設(shè)計(jì)題,并集中放置到附錄2中,這些題目關(guān)注并行計(jì)算和分布式計(jì)算、資源管理和調(diào)度等基本理論問題,有助于學(xué)生深入思考云計(jì)算背后的科學(xué)問題。
與現(xiàn)有的云計(jì)算圖書比較,本書的特點(diǎn)在于:
第一,面向物聯(lián)網(wǎng)加以闡述,切合專業(yè)。云計(jì)算是物聯(lián)網(wǎng)的重要基礎(chǔ),物聯(lián)網(wǎng)是云計(jì)算的應(yīng)用之一。本書在內(nèi)容上包括云計(jì)算與物聯(lián)網(wǎng)的關(guān)系、云計(jì)算與物聯(lián)網(wǎng)通信、可以用于物聯(lián)網(wǎng)領(lǐng)域中的數(shù)據(jù)挖掘和數(shù)據(jù)分析的Mahout開源平臺(tái)、Spark MLlib開源平臺(tái)等內(nèi)容。
第二,注重基礎(chǔ)知識(shí)和基本理論,形成體系,便于教學(xué)。本書每個(gè)章節(jié)都有溫馨提示部分,以使讀者理解易混淆的概念。
第三,從實(shí)踐入手,使讀者有獲得感。例如,聽視頻、看電子書、自學(xué)課件中簡(jiǎn)單的非關(guān)鍵部分;在網(wǎng)上申請(qǐng)阿里云、百度云、Amazon云等賬號(hào)(這三個(gè)都易于申請(qǐng)且有免費(fèi)的時(shí)間段贈(zèng)送);自己動(dòng)手安裝Hadoop、Spark運(yùn)行環(huán)境并用Java或Scala語言開發(fā)Linux平臺(tái)下的云程序;自己動(dòng)手安裝Windows Azure運(yùn)行環(huán)境并用C#語言開發(fā)Windows平臺(tái)下的云程序;自己動(dòng)手安裝VMware Workstation虛擬化軟件或OpenStack開源虛擬化管理平臺(tái),創(chuàng)建自己的虛擬機(jī)。
第四,關(guān)注云計(jì)算領(lǐng)域的熱點(diǎn)。本書不僅關(guān)注Mahout、Spark、MLlib等大數(shù)據(jù)和機(jī)器學(xué)習(xí)方面的內(nèi)容,也關(guān)注網(wǎng)絡(luò)虛擬化、桌面虛擬化等云網(wǎng)絡(luò)方面的內(nèi)容,并創(chuàng)新性地以習(xí)題形式關(guān)注并行計(jì)算和分布式計(jì)算、資源管理和資源調(diào)度等基本理論問題。
本書的初稿在北京科技大學(xué)計(jì)算機(jī)與通信工程學(xué)院物聯(lián)網(wǎng)專業(yè)進(jìn)行了多次試講,并指導(dǎo)學(xué)生做了書中的全部實(shí)驗(yàn),收到了良好的效果。本書的出版得到了教育部本科教學(xué)工程、專業(yè)綜合改革試點(diǎn)項(xiàng)目經(jīng)費(fèi)和北京科技大學(xué)教材建設(shè)基金的資助,在此表示感謝。
本書可作為高等學(xué)校物聯(lián)網(wǎng)工程、通信與信息系統(tǒng)、電子科學(xué)與技術(shù)、電子工程、計(jì)算機(jī)等專業(yè)的本科生教材,也可作為相近專業(yè)的教學(xué)參考書。
郝衛(wèi)東編寫了本書第3、4、5、6、11章,王志良編寫了第1、10章,劉宏嵐編寫了第7、8、9章和附錄1、2、3,王寧編寫了第2章。
感謝劉宏嵐整理了全書所有的圖片。感謝王志良教授對(duì)本書的指導(dǎo)意見,讓我們重視習(xí)題和實(shí)驗(yàn),并聯(lián)系了微軟公司對(duì)我們進(jìn)行指導(dǎo)。感謝西安電子科技大學(xué)出版社毛紅兵編輯和王斌編輯的大力支持和認(rèn)真細(xì)致的工作。本書部分引用了相關(guān)參考文獻(xiàn)和網(wǎng)絡(luò)資源,在此,我們對(duì)這些資料的作者們表示衷心感謝。
由于編者水平有限,書中難免存在不妥之處,懇請(qǐng)廣大讀者批評(píng)指正。
作者聯(lián)系方式:郝衛(wèi)東,E-mail:Wed@ustb.edu.cn。
編 者
2017年5月