1 引言:为什么要超越Hadoop Map-Reduce 1
Hadoop的适用范围 3
大数据分析之机器学习实现的革命 10
第一代机器学习工具/范式 11
第二代机器学习工具/范式 11
第三代机器学习工具/范式 14
小结 18
参考文献 19
2 何为伯克利数据分析栈(BDAS) 23
实现BDAS的动机 24
Spark:动机 25
Shark:动机 26
Mesos:动机 28
BDAS的设计及架构 29
Spark:高效的集群数据处理的范式 34
Spark的弹性分布式数据集 36
Spark的实现 40
Spark VS.分布式共享内存系统 42
RDD的表达性 44
类似Spark的系统 45
Shark:分布式系统上的SQL接口 46
Spark为Shark提供的扩展 47
列内存存储 49
分布式数据加载 50
完全分区智能连接 50
分区修剪 50
机器学习的支持 51
Mesos:集群调度及管理系统 51
Mesos组件 52
资源分配 54
隔离 55
容错性 57
小结 58
参考文献 59
3 使用Spark实现机器学习算法 66
机器学习基础知识 66
机器学习:随机森林示例 68
逻辑回归:概述 72
二元形式的逻辑回归 73
逻辑回归估计 75
多元逻辑回归 76
Spark中的逻辑回归算法 77
支持向量机 80
复杂决策面 81
支持向量机背后的数学原理 82
Spark中的支持向量机 84
Spark对PMML的支持 85
PMML结构 87
PMML的生产者及消费者 92
Spark对朴素贝叶斯的PMML支持 94
Spark对线性回归的PMML支持 95
在Spark中使用MLbase进行机器学习 97
参考文献 99
4 实现实时的机器学习算法 101
Storm简介 101
数据流 103
拓扑 104
Storm集群 105
简单的实时计算例子 106
数据流组 108
Storm的消息处理担保 109
基于Storm的设计模式 111
分布式远程过程调用 111
Trident:基于Storm的实时聚合 115
实现基于Storm的逻辑回归算法 116
实现基于Storm的支持向量机算法 120
Storm对朴素贝叶斯PMML的支持 122
实时分析的应用 126
工业日志分类 126
互联网流量过滤器 130
Storm的替代品 131
Spark流 133
DStreams的动机 133
参考文献 135
5 图处理范式 138
Pregel:基于BSP的图处理框架 139
类似的做法 141
开源的Pregel实现 143
Giraph 143
GoldenORB 145
Phoebus 145
Apache Hama 146
Stanford GPS 146
GraphLab 147
GraphLab:多核版本 148
分布式的GraphLab 150
PowerGraph 152
通过GraphLab实现网页排名算法 156
顶点程序 158
基于GraphLab实现随机梯度下降算法 163
参考文献 167
6 结论:超越Hadoop Map-Reduce的大数据分析 171
Hadoop YARN概览 172
Hadoop YARN的动机 172
作为资源调度器的YARN 174
YARN上的其他框架 175
大数据分析的未来是怎样的 177
参考文献 180
附录A 代码笔记 182