內容簡介

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

Holden Karau是Databricks的軟件開發工程師,活躍於開源社區。她還着有《Spark快速數據處理》。 王道遠,英特爾亞太研發有限公司軟件工程師,GitHub ID:adrian-wang。自Spark 1.0起致力TSpark項目的開發與測試工作,為Spark社區貢獻了許多重要特性和改進。
 

目錄

推薦序
譯者序

前言

第1章 Spark數據分析導論
1.1 Spark是什麼
1.2 一個大一統的軟件棧
1.2.1 Spark Core
1.2.2 Spark SQL
1.2.3 Spark Streaming
1.2.4 MLib
1.2.5 GraphX
1.2.6 集群管理器
1.3 Spark的用戶和用途
1.3.1 數據科學任務
1.3.2 數據處理應用
1.4 Spark簡史
1.5 Spark的版本和發布
1.6 Spark的存儲層次

第2章 Spark下載與入門
2.1 下載Spark
2.2 Spark中Python和Scala的shell
2.3 Spark核心概念簡介
2.4 獨立應用
2.4.1 初始化SparkContext
2.4.2 構建獨立應用
2.5 總結

第3章 RDD編程
3.1 RDD基礎
3.2 創建RDD
3.3 RDD操作
3.3.1 轉化操作
3.3.2 行動操作
3.3.3 惰性求值
3.4 向Spark傳遞函數
3.4.1 Python
3.4.2 ScaLa
3.4.3 Java
3.5 常見的轉化操作和行動操作
3.5.1 基本RDD
3.5.2 在不同RDD類型間轉換
3.6 持久化(緩存)
3.7 總結

第4章 鍵值對操作
4.1 動機
4.2 創建Pair RDD
4.3 Pair RDD的轉化操作
4.3.1 聚合操作
4.3.2 數據分組
4.3.3 連接
4.3.4 數據排序
4.4 Pair RDD的行動操作
4.5 數據分區(進階)
4.5.1 獲取RDD的分區方式
4.5.2 從分區中獲益的操作
4.5.3 影響分區方式的操作
4.5.4 示例:PageRank
4.5.5 自定義分區方式
4.6 總結

第5章 數據讀取與保存
5.1 動機
5.2 文件格式
5.2.1 文本文件
5.2.2 JSON
5.2.3 逗號分隔值與制表符分隔值
5.2.4 SequenceFile
5.2.5 對象文件
5.2.6 Hadoop輸入輸出格式
5.2.7 文件壓縮
5.3 文件系統
5.3.1 本地/「常規」文件系統
5.3.2 Amazon S3
5.3.3 HDFS
5.4 Spark SQL中的結構化數據
5.4.1 Apache Hive
5.4.2 JSON
5.5 數據庫
5.5.1 Java數據庫連接
5.5.2 Cassandra
5.5.3 HBase
5.5.4 Elasticsearch
5.6 總結

第6章 Spark編程進階
6.1 簡介
6.2 累加器
6.2.1 累加器與容錯性
6.2.2 自定義累加器
6.3 廣播變量
6.4 基於分區進行操作
6.5 與外部程序間的管道
6.6 數值RDD的操作
6.7 總結

第7章 在集群上運行Spark
7.1 簡介
7.2 Spark運行時架構
7.2.1 驅動器節點
7.2.2 執行器節點
7.2.3 集群管理器
7.2.4 啟動一個程序
7.2.5 小結
7.3 使用spark-submit 部署應用
7.4 打包代碼與依賴
7.4.1 使用Maven構建的用Java編寫的Spark應用
7.4.2 使用sbt構建的用Scala編寫的Spark應用
7.4.3 依賴沖突
7.5 Spark應用內與應用間調度
7.6 集群管理器
7.6.1 獨立集群管理器
7.6.2 Hadoop YARN
7.6.3 Apache Mesos
7.6.4 Amazon EC2
7.7 選擇合適的集群管理器
7.8 總結

第8章 Spark調優與調試
8.1 使用SparkConf配置Spark
8.2 Spark執行的組成部分:作業、任務和步驟
8.3 查找信息
8.3.1 Spark網頁用戶界面
8.3.2 驅動器進程和執行器進程的日志
8.4 關鍵性能考量
8.4.1 並行度
8.4.2 序列化格式
8.4.3 內存管理
8.4.4 硬件供給
8.5 總結

第9章 Spark SQL
9.1 連接Spark SQL
9.2 在應用中使用Spark SQL
9.2.1 初始化Spark SQL
9.2.2 基本查詢示例
9.2.3 SchemaRDD
9.2.4 緩存
9.3 讀取和存儲數據
9.3.1 Apache Hive
9.3.2 Parquet
9.3.3 JSON
9.3.4 基於RDD
9.4 JDBC/ODBC服務器
9.4.1 使用Beeline
9.4.2 長生命周期的表與查詢
9.5 用戶自定義函數
9.5.1 Spark SQL UDF
9.5.2 Hive UDF
9.6 Spark SQL性能
9.7 總結

第10章 Spark Streaming
10.1 一個簡單的例子
10.2 架構與抽象
10.3 轉化操作
10.3.1 無狀態轉化操作
10.3.2 有狀態轉化操作
10.4 輸出操作
10.5 輸入源
10.5.1 核心數據源
10.5.2 附加數據源
10.5.3 多數據源與集群規模
10.6 24/7不間斷運行
10.6.1 檢查點機制
10.6.2 驅動器程序容錯
10.6.3 工作節點容錯
10.6.4 接收器容錯
10.6.5 處理保證
10.7 Streaming用戶界面
10.8 性能考量
10.8.1 批次和窗口大小
10.8.2 並行度
10.8.3 垃圾回收和內存使用
10.9 總結

第11章 基於MLlib的機器學習
11.1 概述
11.2 系統要求
11.3 機器學習基礎
11.4 數據類型
11.5 算法
11.5.1 特征提取
11.5.2 統計
11.5.3 分類與回歸
11.5.4 聚類
11.5.5 協同過濾與推薦
11.5.6 降維
11.5.7 模型評估
11.6 一些提示與性能考量
11.6.1 准備特征
11.6.2 配置算法
11.6.3 緩存RDD以重復使用
11.6.4 識別稀疏程度
11.6.5 並行度
11.7 流水線API
11.8 總結

作者簡介
封面介紹
網路書店 類別 折扣 價格
  1. 新書
    87
    $308