Spark快速大數據分析

《Spark快速大數據分析》是2015年人民郵電出版社出版的圖書,作者是[美] 卡勞 ( HoldenKarau ) [美] 肯維尼斯科 ( Andy Konwinski )[美] 溫德爾 ( PatrickWendell ) [加] 扎哈里亞 ( Matei Zaharia )。

基本信息,圖書簡介,目錄,

基本信息

【作者】
[美]卡勞HoldenKarau)[美]肯維尼斯科(AndyKonwinski)[美]溫德爾PatrickWendell)[加]扎哈里亞(MateiZaharia)
【編輯】
岳新欣
【ISBN】
978-7-115-40309-4
【日期】
2015-09
【版次】
1
【印次】
1
【頁數】
210頁
【字數】
343千字
【開本】
16
【定價】
59元

圖書簡介

本書由 Spark 開發者及核心成員共同打造,講解了網路大數據時代應運而生的、能高效迅捷地分析處理數據的工具——Spark,它帶領讀者快速掌握用 Spark 收集、計算、簡化和保存海量數據的方法,學會互動、疊代和增量式分析,解決分區、數據本地化和自定義序列化等問題。

目錄

1.1 Spark是什麼 1
1.2 一個大一統的軟體棧 2
1.2.1 Spark Core 2
1.2.2 Spark SQL 3
1.2.3 Spark Streaming 3
1.2.4 MLlib 3
1.2.5 GraphX 3
1.2.6 集群管理器 4
1.3 Spark的用戶和用途 4
1.3.1 數據科學任務 4
1.3.2 數據處理套用 5
1.4 Spark簡史 5
1.5 Spark的版本和發布 6
1.6 Spark的存儲層次 6
第2章 Spark下載與入門 7
2.1 下載Spark 7
2.2 Spark中Python和Scala的shell 9
2.3 Spark 核心概念簡介 12
2.4 獨立套用 14
2.4.1 初始化SparkContext 15
2.4.2 構建獨立套用 16
2.5 總結 19
第3章 RDD編程 21
3.1 RDD基礎 21
3.2 創建RDD 23
3.3 RDD操作 24
3.3.1 轉化操作 24
3.3.2 行動操作 26
3.3.3 惰性求值 27
3.4 向Spark傳遞函式 27
3.4.1 Python 27
3.4.2 Scala 28
3.4.3 Java 29
3.5 常見的轉化操作和行動操作 30
3.5.1 基本RDD 30
3.5.2 在不同RDD類型間轉換 37
3.6 持久化( 快取) 39
3.7 總結 40
第4章 鍵值對操作 41
4.1 動機 41
4.2 創建Pair RDD 42
4.3 Pair RDD的轉化操作 42
4.3.1 聚合操作 45
4.3.2 數據分組 49
4.3.3 連線 50
4.3.4 數據排序 51
4.4 Pair RDD的行動操作 52
4.5 數據分區(進階) 52
4.5.1 獲取RDD的分區方式 55
4.5.2 從分區中獲益的操作 56
4.5.3 影響分區方式的操作 57
4.5.4 示例:PageRank 57
4.5.5 自定義分區方式 59
4.6 總結 61
第5章 數據讀取與保存 63
5.1 動機 63
5.2 檔案格式 64
5.2.1 文本檔案 64
5.2.2 JSON 66
5.2.3 逗號分隔值與制表符分隔值 68
5.2.4 SequenceFile 71
5.2.5 對象檔案 73
5.2.6 Hadoop輸入輸出格式 73
5.2.7 檔案壓縮 77
5.3 檔案系統 78
5.3.1 本地/“常規”檔案系統 78
5.3.2 Amazon S3 78
5.3.3 HDFS 79
5.4 Spark SQL中的結構化數據 79
5.4.1 Apache Hive 80
5.4.2 JSON 80
5.5 資料庫 81
5.5.1 Java資料庫連線 81
5.5.2 Cassandra 82
5.5.3 HBase 84
5.5.4 Elasticsearch 85
5.6 總結 86
第6章 Spark編程進階 87
6.1 簡介 87
6.2 累加器 88
6.2.1 累加器與容錯性 90
6.2.2 自定義累加器 91
6.3 廣播變數 91
6.4 基於分區進行操作 94
6.5 與外部程式間的管道 96
6.6 數值RDD 的操作 99
6.7 總結 100
第7章 在集群上運行Spark 101
7.1 簡介 101
7.2 Spark運行時架構 101
7.2.1 驅動器節點 102
7.2.2 執行器節點 103
7.2.3 集群管理器 103
7.2.4 啟動一個程式 104
7.2.5 小結 104
7.3 使用spark-submit 部署套用 105
7.4 打包代碼與依賴 107
7.4.1 使用Maven構建的用Java編寫的Spark套用 108
7.4.2 使用sbt構建的用Scala編寫的Spark套用 109
7.4.3 依賴衝突  111
7.5 Spark套用內與套用間調度 111
7.6 集群管理器 112
7.6.1 獨立集群管理器 112
7.6.2 Hadoop YARN 115
7.6.3 Apache Mesos 116
7.6.4 Amazon EC2 117
7.7 選擇合適的集群管理器 120
7.8 總結 121
第8章 Spark調優與調試 123
8.1 使用SparkConf配置Spark 123
8.2 Spark執行的組成部分:作業、任務和步驟 127
8.3 查找信息 131
8.3.1 Spark網頁用戶界面 131
8.3.2 驅動器進程和執行器進程的日誌 134
8.4 關鍵性能考量 135
8.4.1 並行度 135
8.4.2 序列化格式 136
8.4.3 記憶體管理 137
8.4.4 硬體供給 138
8.5 總結 139
第9章 Spark SQL 141
9.1 連線Spark SQL 142
9.2 在套用中使用Spark SQL 144
9.2.1 初始化Spark SQL 144
9.2.2 基本查詢示例 145
9.2.3 SchemaRDD 146
9.2.4 快取 148
9.3 讀取和存儲數據 149
9.3.1 Apache Hive 149
9.3.2 Parquet 150
9.3.3 JSON 150
9.3.4 基於RDD 152
9.4 JDBC/ODBC伺服器 153
9.4.1 使用Beeline 155
9.4.2 長生命周期的表與查詢 156
9.5 用戶自定義函式 156
9.5.1 Spark SQL UDF 156
9.5.2 Hive UDF 157
9.6 Spark SQL性能 158
9.7 總結 159
第10章 Spark Streaming 161
10.1 一個簡單的例子 162
10.2 架構與抽象 164
10.3 轉化操作 167
10.3.1 無狀態轉化操作 167
10.3.2 有狀態轉化操作 169
10.4 輸出操作 173
10.5 輸入源 175
10.5.1 核心數據源 175
10.5.2 附加數據源 176
10.5.3 多數據源與集群規模 179
10.6 24/7不間斷運行 180
10.6.1 檢查點機制 180
10.6.2 驅動器程式容錯 181
10.6.3 工作節點容錯 182
10.6.4 接收器容錯 182
10.6.5 處理保證 183
10.7 Streaming用戶界面 183
10.8 性能考量 184
10.8.1 批次和視窗大小 184
10.8.2 並行度 184
10.8.3 垃圾回收和記憶體使用 185
10.9 總結 185
第11章 基於MLlib的機器學習 187
11.1 概述 187
11.2 系統要求 188
11.3 機器學習基礎 189
11.4 數據類型 192
11.5 算法 194
11.5.1 特徵提取 194
11.5.2 統計 196
11.5.3 分類與回歸 197
11.5.4 聚類 202
11.5.5 協同過濾與推薦 203
11.5.6 降維 204
11.5.7 模型評估 206
11.6 一些提示與性能考量 206
11.6.1 準備特徵 206
11.6.2 配置算法 207
11.6.3 快取RDD以重複使用 207
11.6.4 識別稀疏程度 207
11.6.5 並行度 207
11.7 流水線API 208
11.8 總結 209
作者簡介 210
封面介紹 210

相關詞條

熱門詞條

聯絡我們