編輯推薦
通過提供分布式數據存儲和並行計算框架,Hadoop已經從集群計算的抽象演變成瞭大數據操作係統。本書從數據科學的視角,介紹Hadoop集群計算和分析,重點關注可構建的具體分析、數據倉儲技術和高階數據流。
書中主要內容如下:
.Hadoop和集群計算背後的核心概念
.使用設計模式和並行分析算法創建分布式數據分析作業
.在分布式環境下使用Apache Hive和HBase進行數據管理、數據挖掘和數據倉儲
.使用Sqoop和Apache Flume從關係數據庫采集數據
.使用Apache Pig和Spark DataFrame編寫復雜的Hadoop和Spark應用程序
.通過Spark MLlib運用分類、聚類和協同過濾等機器學習技術
“我還未見過比本書更好的Hadoop框架講解。”
——Marck Vaisman,博思艾倫谘詢公司數據科學傢、喬治?華盛頓大學兼職教授、數據社區DC聯閤創始人
“每個概念都得以清晰明瞭的解讀,在容易忽略細節的部分又都有補充資源,供讀者深入學習,這對於專業人員和初學者都非常友好。本書中的講解總是與示例相輔相成,讓讀者在學習之後又能投入實戰,深入瞭解係統功能——我認為這纔是熟悉新領域的關鍵所在。”
——讀者
內容簡介
通過提供分布式數據存儲和並行計算框架,Hadoop已經從一個集群計算的抽象演化成瞭一個大數據的操作係統。本書旨在通過以可讀且直觀的方式提供集群計算和分析的概覽,為數據科學傢深入瞭解特定主題領域鋪平道路,從數據科學傢的視角介紹Hadoop集群計算和分析。本書分為兩大部分,* 一部分從非常高的層次介紹分布式計算,討論如何在集群上運行計算;* 二部分則重點關注數據科學傢應該瞭解的工具和技術,意在為各種分析和大規模數據管理提供動力。
作者簡介
Benjamin Bengfort,數據科學傢,目前正在馬裏蘭大學攻讀博士學位,方嚮為機器學習和分布式計算;熟悉自然語言處理、Python數據科學、Hadoop和Spark分析等。
Jenny Kim,經驗豐富的大數據工程師,不僅進行商業軟件的開發,在學術界也有所建樹,在海量數據、機器學習以及生産和研究環境的Hadoop實施方麵有深入研究。目前任職於Cloudera的Hue團隊。
目錄
前言 ix
* 一部分 分布式計算入門
* 1章 數據産品時代 2
1.1 什麼是數據産品 2
1.2 使用Hadoop構建大規模數據産品 4
1.2.1 利用大型數據集 4
1.2.2 數據産品中的Hadoop 5
1.3 數據科學流水綫和Hadoop生態係統 6
1.4 小結 8
* 2 章 大數據操作係統 9
2.1 基本概念 10
2.2 Hadoop架構 11
2.2.1 Hadoop集群 12
2.2.2 HDFS 14
2.2.3 YARN 15
2.3 使用分布式文件係統 16
2.3.1 基本的文件係統操作 16
2.3.2 HDFS文件權限 18
2.3.3 其他HDFS接口 19
2.4 使用分布式計算 20
2.4.1 MapReduce:函數式編程模型 20
2.4.2 MapReduce:集群上的實現 22
2.4.3 不止一個MapReduce:作業鏈 27
2.5 嚮YARN 提交MapReduce 作業 28
2.6 小結 30
第3 章 Python 框架和Hadoop Streaming 31
3.1 Hadoop Streaming 32
3.1.1 使用Streaming在CSV 數據上運行計算 34
3.1.2 執行Streaming作業 38
3.2 Python 的MapReduce框架 39
3.2.1 短語計數 42
3.2.2 其他框架 45
3.3 MapReduce進階 46
3.3.1 combiner 46
3.3.2 partitioner 47
3.3.3 作業鏈 47
3.4 小結 50
第4 章 Spark內存計算 52
4.1 Spark基礎 53
4.1.1 Spark棧 54
4.1.2 RDD 55
4.1.3 使用RDD 編程 56
4.2 基於PySpark的交互性Spark 59
4.3 編寫Spark應用程序 61
4.4 小結 67
第5 章 分布式分析和模式 69
5.1 鍵計算 70
5.1.1 復閤鍵 71
5.1.2 鍵空間模式 74
5.1.3 pair與stripe 78
5.2 設計模式 80
5.2.1 概要 81
5.2.2 索引 85
5.2.3 過濾 90
5.3 邁嚮* 後一英裏分析 95
5.3.1 模型擬閤 96
5.3.2 模型驗證 97
5.4 小結 98
* 二部分 大數據科學的工作流和工具
第6 章 數據挖掘和數據倉 102
6.1 Hive 結構化數據查詢 103
6.1.1 Hive 命令行接口(CLI) 103
6.1.2 Hive 查詢語言 104
6.1.3 Hive 數據分析 108
6.2 HBase 113
6.2.1 NoSQL 與列式數據庫 114
6.2.2 HBase 實時分析 116
6.3 小結 122
第7 章 數據采集 123
7.1 使用Sqoop 導入關係數據 124
7.1.1 從MySQL 導入HDFS 124
7.1.2 從MySQL 導入Hive 126
7.1.3 從MySQL 導入HBase 128
7.2 使用Flume 獲取流式數據 130
7.2.1 Flume 數據流 130
7.2.2 使用Flume 獲取産品印象數據 133
7.3 小結 136
第8 章 使用高 級API 進行分析 137
8.1 Pig 137
8.1.1 Pig Latin 138
8.1.2 數據類型 142
8.1.3 關係運算符 142
8.1.4 用戶定義函數 143
8.1.5 Pig 小結 144
8.2 Spark 高 級API 144
8.2.1 Spark SQL 146
8.2.2 DataFrame 148
8.3 小結 153
第9 章 機器學習 154
9.1 使用Spark 進行可擴展的機器學習 154
9.1.1 協同過濾 156
9.1.2 分類 161
9.1.3 聚類 163
9.2 小結 166
* 10 章 總結:分布式數據科學實戰 167
10.1 數據産品生命周期 168
10.1.1 數據湖泊 169
10.1.2 數據采集 171
10.1.3 計算數據存儲 172
10.2 機器學習生命周期 173
10.3 小結 175
附錄A 創建Hadoop 僞分布式開發環境 176
附錄B 安裝Hadoop 生態係統産品 184
術語錶 193
關於作者 211
關於封麵 211
Hadoop數據分析 下載 mobi epub pdf txt 電子書 格式