本書是將大數(shù)據(jù)這一計算機前沿科學(xué)和基本應(yīng)用有機結(jié)合的典范教材,全面介紹大數(shù)據(jù)和相關(guān)的基礎(chǔ)知識,由淺入深地剖析大數(shù)據(jù)的分析處理方法和技術(shù)手段,突出介紹大數(shù)據(jù)*的發(fā)展趨勢和技術(shù)成果。
本書的一大亮點是每章中都使用圖表對大數(shù)據(jù)與傳統(tǒng)數(shù)據(jù)處理方式進行對比。另外,本書注重啟發(fā)式的學(xué)習(xí)策略,便于讀者理解和掌握。全書每章均包括實際應(yīng)用案例與關(guān)鍵詞注釋,方便讀者查閱和自學(xué),同時配備習(xí)題和參考答案。
本書體系完整、內(nèi)容豐富、注重應(yīng)用、前瞻性強、適用性好,并有開放式的課程教學(xué)網(wǎng)站(http://www.cmu.edu.cn/computer)提供技術(shù)支持。
本書既可以作為普通高校大數(shù)據(jù)技術(shù)的基礎(chǔ)教材,也可以作為職業(yè)培訓(xùn)教育及相關(guān)技術(shù)人員的參考用書。
1.本書圍繞大數(shù)據(jù)及其相關(guān)技術(shù)這一主題,采用深入淺出的敘述方式,簡明扼要地闡述了大數(shù)據(jù)和云計算等新興技術(shù)的基本理論、知識內(nèi)容、關(guān)鍵技術(shù)和實際應(yīng)用,為廣大高校師生提供大數(shù)據(jù)方向計算機公共基礎(chǔ)課程的基礎(chǔ)知識和大數(shù)據(jù)的應(yīng)用方法、案例剖析。2.在編寫原則上,本書既維持了大數(shù)據(jù)相關(guān)信息技術(shù)本身應(yīng)有的系統(tǒng)性和理論性,又著重體現(xiàn)應(yīng)用性與針對性。本書可以用于啟發(fā)式教學(xué)模式,同時適合混合式教學(xué)模式,且便于學(xué)生理解和掌握。IT產(chǎn)業(yè)在過去50多年的發(fā)展歷程中,已經(jīng)經(jīng)歷過幾輪技術(shù)浪潮。如今,新的一股浪潮正在迅速朝我們涌來,并將觸及IT行業(yè)的許多方面,這就是大數(shù)據(jù)浪潮。其將比之前發(fā)生過的浪潮更大、觸及面更廣,并將對人們的工作和生活產(chǎn)生新的影響。因此,在面對大數(shù)據(jù)之際,各個專業(yè)的在校大學(xué)生迫切需要充實自己原有的IT知識結(jié)構(gòu),掌握兩個本領(lǐng),一是掌握大數(shù)據(jù)基本技術(shù)與應(yīng)用,使大數(shù)據(jù)為我們所用的本領(lǐng);二是掌握挖掘數(shù)據(jù)之間隱藏的規(guī)律與關(guān)系,使大數(shù)據(jù)更好地服務(wù)于社會發(fā)展的本領(lǐng)。
前言
IT產(chǎn)業(yè)在其發(fā)展歷程中,經(jīng)歷過幾輪技術(shù)浪潮。如今,大數(shù)據(jù)浪潮正在迅速地朝人們涌來,并將觸及到各個行業(yè)和生活的許多方面。大數(shù)據(jù)浪潮將比之前發(fā)生過的浪潮更大、觸及面更廣,給人們的工作和生活帶來的變化和影響更深刻。大數(shù)據(jù)的應(yīng)用激發(fā)了一場思想風(fēng)暴,也悄然地改變了人們的生活方式和思維習(xí)慣。大數(shù)據(jù)正以前所未有的速度顛覆人們探索世界的方法,引起工業(yè)、商業(yè)、醫(yī)學(xué)、軍事等領(lǐng)域的深刻變革。因此,在當前大數(shù)據(jù)浪潮的猛烈沖擊下,各個專業(yè)的高校大學(xué)生迫切需要充實和完善自己原有的IT知識結(jié)構(gòu),掌握兩個本領(lǐng): 一是掌握大數(shù)據(jù)基本技術(shù)與應(yīng)用,使大數(shù)據(jù)能夠為我所用; 二是挖掘數(shù)據(jù)之間隱藏的規(guī)律與關(guān)系,使大數(shù)據(jù)更好地服務(wù)于社會發(fā)展。為此,本書圍繞大數(shù)據(jù)及其相關(guān)技術(shù)這一主題,采用深入淺出的敘述方式,簡明扼要地闡述大數(shù)據(jù)及其相關(guān)最新技術(shù)的基本理論、關(guān)鍵技術(shù)和實際應(yīng)用,目的是讓廣大師生以計算機公共基礎(chǔ)課程為知識載體,對大數(shù)據(jù)在各個領(lǐng)域的應(yīng)用方法和相關(guān)知識有所了解。將大數(shù)據(jù)相關(guān)課程納入大學(xué)基礎(chǔ)教育中,必將引領(lǐng)學(xué)生更好地把握時代科學(xué)發(fā)展的脈搏和歷史賦予的機遇。在編寫原則上,本書既維持了大數(shù)據(jù)技術(shù)本身應(yīng)有的系統(tǒng)性和理論性,又著重體現(xiàn)其在各個領(lǐng)域內(nèi)的應(yīng)用性與針對性。本書的一大亮點是每章都使用圖表對大數(shù)據(jù)與傳統(tǒng)數(shù)據(jù)處理方式進行對比。另外,本書注重啟發(fā)式的學(xué)習(xí)策略,便于讀者理解和掌握。全書每章均包括實際應(yīng)用案例與關(guān)鍵詞注釋,方便讀者查閱和自學(xué),同時配備習(xí)題和參考答案。全書在內(nèi)容上共分成11章: 第1章大數(shù)據(jù)概論由婁巖編寫,第2章大數(shù)據(jù)采集及預(yù)處理由鄭琳琳編寫,第3章大數(shù)據(jù)分析概論由劉尚輝編寫,第4章大數(shù)據(jù)可視化由李靜編寫,第5章Hadoop概論由馬瑾編寫,第6章HDFS和Common概論由丁林編寫,第7章MapReduce概論由徐東雨編寫,第8章NoSQL概論由曹陽編寫,第9章Spark概論由龐東興編寫,第10章云計算與大數(shù)據(jù)由張志常編寫,第11章典型大數(shù)據(jù)解決方案由霍妍編寫。清華大學(xué)出版社對本書的出版做了精心策劃,充分論證,在此向所有參加編寫的同事們及幫助和指導(dǎo)過我們工作的朋友們表示衷心的感謝!由于編者水平有限,加之時間倉促,書中難免存在疏漏之處,懇請廣大讀者批評斧正。
婁巖2016年9月
目錄
前言Ⅰ
第1章大數(shù)據(jù)概論
1.1大數(shù)據(jù)技術(shù)簡介
1.1.1IT產(chǎn)業(yè)的發(fā)展簡史
1.1.2大數(shù)據(jù)的主要來源
1.1.3數(shù)據(jù)生成的3種主要方式
1.1.4大數(shù)據(jù)的特點
1.1.5大數(shù)據(jù)的處理流程
1.1.6大數(shù)據(jù)的數(shù)據(jù)格式
1.1.7大數(shù)據(jù)的基本特征
1.1.8大數(shù)據(jù)的應(yīng)用領(lǐng)域
1.2大數(shù)據(jù)的技術(shù)架構(gòu)
1.3大數(shù)據(jù)的整體技術(shù)
1.4大數(shù)據(jù)分析的4種典型工具簡介
1.5大數(shù)據(jù)未來發(fā)展趨勢
1.5.1數(shù)據(jù)資源化
1.5.2數(shù)據(jù)科學(xué)和數(shù)據(jù)聯(lián)盟的成立
1.5.3大數(shù)據(jù)隱私和安全問題
1.5.4開源軟件成為推動大數(shù)據(jù)發(fā)展的動力
1.5.5大數(shù)據(jù)在多方位改善人們的生活
本章小結(jié)
習(xí)題1
第2章大數(shù)據(jù)采集及預(yù)處理
2.1數(shù)據(jù)采集簡介
2.1.1數(shù)據(jù)采集
2.1.2數(shù)據(jù)采集的數(shù)據(jù)來源
2.1.3數(shù)據(jù)采集的技術(shù)方法
2.2大數(shù)據(jù)的預(yù)處理
2.3大數(shù)據(jù)采集及預(yù)處理的主要工具
本章小結(jié)
習(xí)題2
第3章大數(shù)據(jù)分析概論
3.1大數(shù)據(jù)分析簡介
3.1.1大數(shù)據(jù)分析
3.1.2大數(shù)據(jù)分析的基本方法
3.1.3大數(shù)據(jù)處理流程
3.2大數(shù)據(jù)分析的主要技術(shù)
3.2.1深度學(xué)習(xí)
3.2.2知識計算
3.3大數(shù)據(jù)分析處理系統(tǒng)簡介
3.3.1批量數(shù)據(jù)及處理系統(tǒng)
3.3.2流式數(shù)據(jù)及處理系統(tǒng)
3.3.3交互式數(shù)據(jù)及處理系統(tǒng)
3.3.4圖數(shù)據(jù)及處理系統(tǒng)
3.4大數(shù)據(jù)分析的應(yīng)用
本章小結(jié)
習(xí)題3
第4章大數(shù)據(jù)可視化
4.1大數(shù)據(jù)可視化簡介
4.2大數(shù)據(jù)可視化工具Tableau
本章小結(jié)
習(xí)題4
第5章Hadoop概論
5.1Hadoop簡介
5.1.1Hadoop簡史
5.1.2Hadoop應(yīng)用和發(fā)展趨勢
5.2Hadoop的架構(gòu)與組成
5.2.1Hadoop架構(gòu)介紹
5.2.2Hadoop組成模塊
5.3Hadoop應(yīng)用分析
本章小結(jié)
習(xí)題5
第6章HDFS和Common概論
6.1HDFS簡介
6.1.1HDFS的相關(guān)概念
6.1.2HDFS特性
6.1.3HDFS體系結(jié)構(gòu)
6.1.4HDFS的工作原理
6.1.5HDFS的相關(guān)技術(shù)
6.2Common簡介
本章小結(jié)
習(xí)題6
第7章MapReduce概論
7.1MapReduce簡介
7.1.1MapReduce
7.1.2MapReduce功能、特征和局限性
7.2Map和Reduce任務(wù)
7.3MapReduce架構(gòu)和工作流程
7.3.1MapReduce的架構(gòu)
7.3.2MapReduce的工作流程
本章小結(jié)
習(xí)題7
第8章NoSQL概論
8.1NoSQL簡介
8.1.1NoSQL的含義
8.1.2NoSQL的產(chǎn)生
8.1.3NoSQL的特點
8.2NoSQL技術(shù)基礎(chǔ)
8.2.1大數(shù)據(jù)的一致性策略
8.2.2大數(shù)據(jù)的分區(qū)與放置策略
8.2.3大數(shù)據(jù)的復(fù)制與容錯技術(shù)
8.2.4大數(shù)據(jù)的緩存技術(shù)
8.3NoSQL的類型
8.3.1鍵值存儲
8.3.2列存儲
8.3.3面向文檔存儲
8.3.4圖形存儲
8.4典型的NoSQL工具
8.4.1Redis
8.4.2Bigtable
8.4.3CouchDB
本章小結(jié)
習(xí)題8
第9章Spark概論
9.1Spark平臺
9.1.1Spark簡介
9.1.2Spark發(fā)展
9.1.3Scala語言
9.2Spark與Hadoop
9.2.1Hadoop的局限與不足
9.2.2Spark的優(yōu)點
9.2.3Spark速度比Hadoop快的原因分解
9.3Spark處理框架及其生態(tài)系統(tǒng)
9.3.1底層的Cluster Manager和Data Manager
9.3.2中間層的Spark Runtime
9.3.3高層的應(yīng)用模塊
9.4Spark的應(yīng)用
9.4.1Spark的應(yīng)用場景
9.4.2應(yīng)用Spark的成功案例
本章小結(jié)
習(xí)題9
第10章云計算與大數(shù)據(jù)
10.1云計算簡介
10.1.1云計算
10.1.2云計算與大數(shù)據(jù)的關(guān)系
10.1.3云計算基本特征
10.1.4云計算服務(wù)模式
10.2云計算核心技術(shù)
10.2.1虛擬化技術(shù)
10.2.2虛擬化軟件及應(yīng)用
10.2.3資源池化技術(shù)
10.2.4云計算部署模式
10.3云計算應(yīng)用案例
本章小結(jié)
習(xí)題10
第11章典型大數(shù)據(jù)解決方案
11.1Intel大數(shù)據(jù)
11.1.1Intel大數(shù)據(jù)解決方案
11.1.2Intel大數(shù)據(jù)相關(guān)案例
11.2百度大數(shù)據(jù)
11.2.1百度大數(shù)據(jù)引擎
11.2.2百度大數(shù)據(jù) 平臺
11.2.3相關(guān)應(yīng)用
11.2.4百度預(yù)測的使用方法
11.3騰訊大數(shù)據(jù)
11.3.1騰訊大數(shù)據(jù)解決方案
11.3.2相關(guān)實例
本章小結(jié)
習(xí)題11
附錄A習(xí)題答案
參考文獻