- 博客(0)
- 资源 (16)
- 收藏
- 关注
Spark大数据分析核心概念技术及实践
译者序
目 rj §
致谢
第 1 章大数据技术一览 ……….. . I
I.I Hadoop …………………..............…........... 2
I. I. I HDFS ……………..............….. 3
I.1.2 MapReduce ………… ……........ 5
1.1.3 Hive····…·····……….........…·-…·5
1.2 数据序列化…..... . ....……………·· ···· ··· 6
,bro
SI
l
且vol
rs
’ AT vh
l 吨,L
qJ但气 L
ll
1.2.3 Protocol Buffers …………… 7
I 2.4 SequenceFile ·…… ........….. 7
1.3 列存储 .. .. . ..……
0000
ρ··
日 C
E RO CR
- 7
-
1d 句J
I 3 3 Parquet ……………………………… ·9
1.4 消息系统.. . . . .. .. …… . . ... ..………….......… · 9
I 4.1 Kafka ········….........………….. 10
I 4 2 ZeroMQ…..........……··-……….. 11
1.5 NoSQL ·········· …......…........……........ 12
。阶/的 目录
1.5 I Cassandra ……………………········· 13
1.5 .2 HBase ··….. ................ . ..... 13
1.6 分布式 SQL 查询引擎.....……….... 14
I 6 I Impala …….....................……. 14
1.6 2 Presto ………………….........……… 14
I 6.3 Apache Drill……·-…......……... 15
I.7 总结……………………………. 15
第 2 章 Scala 编程 … · … 16
2.1 函数式编程…………-…·· -…….. 16
2.1.1 函数…·…………..... . .… . . .. ....…. 17
2.1.2 不可变数据结构………… 18
2.1.3 一切皆表达式…………·… 19
2.2 Scala 基础………….. . ...……………….. 19
2.2.1 起步…………………… 20
2.2.2 基础类型………………… 20
2.2.3 变量··…………………. 21
2.2.4 函数…………… …….......……. 21
2.2.5 类……··……..... . ...... . .. ... . . . .. ....... . 24
2.2 . 6 单例………· · …………….. 24
2.2.7 样本类…….. . .... . …………….. 25
2.2 .8 模式民配……… ....... .. ………… 25
更多大数据学习资料请访问:http://www.86mhz.com/VIII
2 . 2.9 操作符…. ..... . . .…… … …… . .... .. . . . 26
2.2.10 特质 ……………………… . . 26
2.2 11 元组… ·· … ………….. 27
2.2.12 Option 类型..... . .. .… .... . ... . . ...... 27
2.2. 13 集合… . . .. .... .... ....................... . 28
2.3 一个单独的 Scala 应用程序…......... 32
2.4 总结.. . . . .. ... .. ....... ..… ………………… . . 32
第 3 章 Spark Core -…… 33
3.1 概述 . ... ......… …· · ················· · · ···· ··· ·….. 33
3.1.1 主要特点····· ·· ………. . .. .....…… 33
3.1.2 理想的应用程序…………… 36
3.2 总体架构…………. . ......………… 37
3.2.1 worker ········…........... .…............ 37
3.2.2 集群管理员 ………··………… 38
3 2 3 驱动程序………………… 38
3 . 2.4 执行者…·…..... .. ... . . . . .. .. .. ... .. . ..... 38
3.2.5 任务……-…-… · - ………………. 38
3 .3 应用运行....... ..... . . . .. ..…… .. ... . ..…… .. 38
3.3.1 术语…………………………. 38
3.3.2 应用运行过程... . . .. . ...….. ...... . … 39
3.4 数据源…··-- -……… … . ....…… ……. 39
3.5 API··… ……………………….. 40
3.5.1 SparkContext …- ··-………. 40
3.5.2 RDD··….........……………………… 41
3.5.3 创建 RDD …… .. ... .. ...… ...... . ... 42
3.5.4 RDD 操作 …….........……… 43
3.5.5 保存 RDD … .........……………… 52
3 .6 惰性操作.......……· ·· · · · ········…·············· 53
3 .7 缓存 …..... . .…………… .. . .....……… . . 54
3.7.3 缓存内存管理………… … · 56
3.8 Spark 作业……… u ……..... . . ..……… 56
3 .9 共享变量…·· … ··-….................... 57
3.9.1 广播变量..... . .. ...…………… 57
3.9.2 累加器…………· ……… ….. 58
3.10 总结………………… ……….. 59
第 4 章 、 使用 Spark shell 进行
交互式数据分析 ... .60
4.1 起步………………………… · ω
4.1.1 下载 ……....... ........ …..... .... 60
4 I 2 解压....... . ... . ..……… ………… 61
4 I 3 运行………. . .. . .. .…………… . 61
4.2 REPL 命令……· … …….......… 62
4.3 把 Spark shell 当成 Scala shell
使用. .. .. . ... .. ....…….. . ... . ...……… …. 62
4.4 数值分析…………………… …….. 63
4.5 日志分析…... . .. ........... .. .... ... . ... .. .…. 64
4.6 总结………… . .. .. . . …………….. . .. . ..… . . 68
第 5 章编写 Spark 应用 .... .69
5.1 Spark 中的 Hello World …… …….. 69
5.2 编译井运行应用……………… 72
5.2.1 sbt ……....... .…………........ 72
5.2.2 编译代码…………………. . 73
5.2.3 运行应用 …… …....... ..... .. . ..… 73
5.3 监控应用…· … …….................. 75
5.4 调试应用· ········ ··· · · ·· ·· · ·· ·· ·· ····· · ··…… . . 75
5.5 总结… · -… · · · ··· ·· · … …………… 76
3.7.1 RDD 的缓存方法…….... . .. . .…… 55 第 6 章 Spark Streaming -………….. 77
3.7.2 RDD 缓存是可容错的.........…·· 56 6.1 Spark Streaming 简介…………… .. . . ... . 78
更多大数据学习资料请访问:http://www.86mhz.com/6.1.1 Spark Streaming 是一个
Spark 类!车…….........….. .... .. 78
6.1.2 总体架构…………………· 78
6.1.3 数据流来源………………. 78
6.1.4 接收器…………·········· · ········· ··· ·· 79
6 1 5 目的地……………··· · · · ·………… 79
6.2 API ……………………….........….......…. 79
0000 02
闻、民
44·
口 基
HH -
rr
!’’
J-
,“
tJK
-
h
-
FK 旧唱 H
tnH· 川川『-
iO 町
「」 a
Eb 它
川 nhu
03U
aIL 二民 Tg
F3UP可 口a3-士口创儿γrP
ta 句ι
丁J但匀,“
KOLO
6 2 3 DStream …- ··-·· …-··--’.... 82
6.2.4 创建 DStream· ……… ….... 83
6.2.5 处理数据流-.... . . ... . . .. . … 84
6.2.6 输出操作………········…………… 88
6.2.7 窗口操作………………… 91
6.3 一个完整的 Spark Streaming
应用. ...... ..,… .. ............. 93
6.4 总结................. .. ...... . ........... . .... . ... . .. .. 98
第 7 章 Spark SQL……... 99
7.1 Spark SQL 简介.........………..........…. 99
7. 1.1 和IJ才~{ti!. Spark 库集成 …· ·100
7.1.2 可用性 … … … ···100
7.1.3 数据沥1 … ..... ... . ........ ·····100
7.1.4 数据处理-接 j] … •• … l 00
7.1.5 与 Hive 的互操作性 .... ········101
7.2 性能…………..........................…......… ·101
7.2. 1 破缸 110 ········……..............… 101
7 2 2 分区- ………………··102
7.2.3 列存储……………………… ··102
7.2.4 内存巾的列式缓存……····· · … ··102
7.2.5 行跳过 ……………… 102
IX
7.2.6 谓词下推…...…· · ····……… ··102
7.2.7 查询优化………… · ·· · ··· · ·············103
7.3 应用…..……........…..... .. .....… ... ... . … ·104
7.3.1 ETL ………………….......…·104
7.3.2 数据可视化,........……………… ··104
7.3.3 分布式 JDBC/ODBC SQL
查询引擎…... ......... ....... .... .… ·· 105
7.3.4 数据仓库........ . .. . .. . .. . .. . .. .…… 105
7.4 API …..........…-……………………··106
7.4.1 关键抽象………… · · ·· · ········ ······106
7.4.2 创建 Dataframe ·····················109
7.4.3 在程序中使用 SQL/HiveQL
处理数据…………….... . ...…·· 114
7.4.4 使用 DataFrame AP!处理
数据……………........…… l 15
7.4.5 保存 DataFrame ………·········131
7.5 内置函数……............... . .. . . . . ... ......… 133
7.5.1 聚合操作.............. . ..……… 134
7.5.2 集合操作 .........,......…··134
7.5.3 日期/时间………….............. 134
7.5.4 数学….......….... . ................… . 135
7.5.5 字符串····· · · ·……… . ..,.…... 135
7.5.6 窗口…… …·-··-··-……………·135
7.6 UDF 和 UDAF········ · ·· …………… 135
7.7 一个交互式分析的例子……··· 135
7.8 使用 Spark SQL JDBC 服务器
进行交互式分析.... . ...........…·.....-.,目 ··142
7.9 总结…………...............……………… · · 145
第 8 章使用 Spark 进行机器学习 ·146
8.1 机器学习简介………………… 146
8.1 . 1 特征,. .. .. . .... . ...... .. ..........…. ·147
更多大数据学习资料请访问:http://www.86mhz.com/x
8.1.2 标签 … ………. ... .. . .…... . . . … ···· ··147
8.1 . 3 模型.. .... .… . ... ... …… .... .. .……… 148
8.1.4 训练数据…. . . ... . ...... .. . . . .. .. . ...… ·148
8.1.5 测试数据……·-… …..... . .……… 149
8.1.6 机器学习应用.. . .. .... .. ... .. . .…… 149
8.7 I 数据集………………….. . .....…·· 190
8.7.2 目 标… · · -… ……… … · ·……… · · 190
8.7.3 代码……… ... .....…………· · ···… 190
8.8 总结… ……..................…………… · 195
8 . 1 . 7 机器学习算法……… … · · ·· · · 151 第 9 章 使用 Spark 进行图处理 ·196
8.1.8 超参数……… …··· · ·· ·· ·· · · …… … · ·160 9.1 图简介 ……….. . . .. .. ………… …… · ……. 196
8.1.9 模型评价 . .. .. . . . . .... .... .. ...…… · ·160
8.1.10 机器学习的主要步骤……… 162
8.2 Spark 机器学习库…··……· ····· ··… · ··162
8.3 MLlib 概览…...... .……·…… · ····· ···· ·· ·163
8.3.1 与其他 Spark 库集成……… ·163
8.3.2 统计工具…….. .. . . . .. . . . .. . ……… · 163
8.3.3 机器学习算法…… · · ·· ··· · ·· ·· ·· · · ·163
8.4 MLltb API …····················…............…164
8.4.1 数据类型……. . .. . .. …. .... . .. .… … 164
8.4.2 算法和模型……. . .....…………… 166
8.4.3 模型评价……··…… .... . .. … … … ·· 181
8.5 MLlib 示例应用……… ... .. ..... . ... . . .… ·184
8.5.1 数据集…·· · · · ·· · ·· ········· · ·· ··…… ·· 184
8.5.2 目标…… . ...... ·········…………·184
8.5 3 代码 …·…………… · ··· · · · · · · ··· · ···· · 184
8 6 Spark ML······················ ……………·186
8.6.1 ML 数据集·· ··· ······· · ······· ··· · ····· · 187
8.6.2 Transformer ·········….............. ·187
8 6 3 Estimator··…… …….......……… 187
8 6 4 Pipeline …….......….......……··188
8.6.5 P1pelineModel ………………… 188
8.6.6 Evaluator ………………………·188
8.6.7 网格搜索…………. .. . ...… …… ··189
8.6.8 CrossValidator ········ ···…··-……189
8.7 Spark ML 示例应用………... ......… ·189
9 I‘ l 无 向 l到 …· ·· · · ··· · ·· ·· ·· · ….........… ··197
9.1.2 有 向罔………· ……………·197
9.1.3 有 向 多边图... . .. ...………… ·· 197
9.1.4 属 性除!······…..... .. .……… ··… · · 197
9.2 GraphX 简介- ……··························198
9.3 GraphX API … …···········…··············199
9.3 .I 数据抽象 ………… …… ·· · ······· ·199
9.3.2 创建罔…… . .. ... . . ........ ... .. ..…… · 200
9.3.3 图属性… ·………… ..... . ... ..... . … . . 202
9.3.4 图操作符………… . . ... .. .……… ·204
9.4 总结… . .. . ...…. ... . .... ………. ... .. . .. ………217
第 10 章集群管理员 … ·218
10.I 独立集群管理员 ·· · · · · ····· · ·· · ·· · ·· ···…218
10.l.I 架构… …… ……· ……·219
10.1.2 建立一个独立集群…· … · 219
10.1.3 在独立集群中运行 Spark
应用……………·· … 221
I0.2 Apache Mesos ………··..,.....…·223
10.2.1 架构 ...... .. ... ...…… . ... . .. . … …. 223
10.2.2 建立一个 Mesos 集群 ·· · · ·· ····224
10.2.3 在 Me sos 集群上运行 Spark
应用 ·· -… · · . .. .... . .. ........ ..………224
10.3 YARN···················· …...... ...………··226
10.3.I 架构…·· · ······ · ··· · ··…. . .... . …226
更多大数据学习资料请访问:http://www.86mhz.com/10.3.2 在 YARN 集群上运行 Spa rk
应月1 ………………. ·228
10.4 总结…·… ········ ··· ·· · ·············· · ···· · ··· · · · 228
第 11 章监控…· ...... ... ····229
I I. I 监控独立集 f,f ………-…--…… ···229
11. I. I 监控 Spark master········……·229
I I. 1.2 监控 Spark worker……·232
11.2 监控 Spark 应用………………1 ····233
川 .2.1 监控一个应用所运行的
XI
11 .2.3 l\'.t控一个阶段中的任务…… · 236
11.2.4 监控 ROD 存储,... ..………238
11 .2.5 监控环境……………… ·243
11.2.6 \l'.i控执行者…………… ···244
川 . 2.7 监控 Spark 流应用……… ····· · 244
11 . 2.8 监 控 Spark SQL 查询 … · · · 246
11 .2.9 j监控 Spark SQL JDBC/
ODBC 服务部…………… 246
11.3 总结…………………… 247
作业 …… 234 参考文献 ……… ……… 248
11.2.2 监控一个作业的不同阶段 ·· 235
2018-08-25
Spark大数据处理_原理算法与实例
Spark最好的书之一;
第 1 章从 Hadoop 到 Spark
1. 1 Hadoop一一大数据时代的火种··
1. 1. 1 大数据的由来
1. 1. 2 Google 解决大数据计算问题的方法 ……................…........... 5
1. 1. 3 Hadoop 的由来与发展………................. .. ......................…. 10
1. 2 Hadoop 的局限性·················…….........….........................……… 12
1. 2. 1 Hadoop 运行机制…….....….........…..................... . ....……. . 13
1. 2. 2 Hadoop 的性能问题……………………........ ......…..... . ...…… . 15
1. 2. 3 针对 Hadoop 的改进………………··························…....... 20
1. 3 大数据技术新星一-Spark …·…………………………………………….. 21
1. 3. 1 Spark 的出现与发展……........…………………... ......………. 21
1. 3. 2 Spark 协议族……………………………………………………… 24
1. 3. 3 Spark 的应用及优势……....... .…………………·· ·······………. 25
第 2 章体验 Spark ……….....……........…··························…………………28
2. 1 安装和使用 Spark ··············……..................………………………….28
2. 1. 1 安装 Spark ·································································· 28
2. 1. 2 了解 Spark 目录结构................ . .. .. ........... ................. .. . .. 31
2. 1. 3 使用 Spark Shell ·· · · · · · · · · ·· · · · · · · · · ······· ····· ··· · ··· · ···· · · · · ·· · · ··· ·· ·· 32
2.2 编写和运行 Spark 程序................................................ ...... ......... 35
2.2. 1 安装 Scala 插件 .... .. ............. ...... ....................... ............ 35
2.2.2 编写 Spark 程序......... ................. .................................. 37
2.2.3 运行 Spark 程序········ ············ · ··········· ·············· ········ ······ 42
2. 3 Spark Web UI ··························· ······························ ··············· 45
2.3. 1 访问实时 Web UI ························································· 45
2.3.2 从实时 UI 查看作业信息、....... .. .................. . ....... ............. 46IV 目录
第 3 章 Spark 原理……………………….................……………………………. 50
3. 1 Spark 工作原理…………………………….......…………………........… 50
3. 2 Spark 架构及运行机制………………….............……………………….. 54
3. 2. 1 Spark 系统架构与节点角色………………………........………. 54
3. 2. 2 Spark 作业执行过程……··…...............…......................... 57
3.2.3 应用初始化…·…………………………………………………….. 59
3.2.4 构建 RDD 有向无环图 ………........……………........……….. 62
3.2.5 RDD 有向无环图拆分……..................................………….. 64
3. 2. 6 Task 调度………………………………………………………...... 68
3. 2. 7 Task 执行…………………………………………………………… 71
2018-08-24
linux常用的一些命令详解
最好用的linux常用的命令详解,包含了很多性能诊断的命令;Introduction
Chapter 1: 性能诊断入门
Linux 性能诊断: Linux入门命令100条
Linux 性能诊断: 单机负载评估
Linux 性能诊断: 快速检查单(Netflix版)
全栈架构技术视野: 以 Stack Overflow 为例
Chapter 2: 应用监控与可视化
应用程序的日志管理
基于 Ganglia 实现计算集群性能态势感知
新一代 Ntopng 网络流量监控
Graphite 体系结构详解
部署和配置管理工具简介
2018 Docker 用户报告 - Sysdig Edition
开源监控框架: LinkedIn Kafka Monitor
开源地理信息系统简史
Chapter 3: 操作系统原理与内核追踪
How Linux Works: 内核空间和启动顺序
How Linux Works: 内存管理
动态追踪技术(一): DTrace
动态追踪技术(二): 基于 strace+gdb 发现 Nginx 模块性能问题
动态追踪技术(三): Trace Your Functions!
动态追踪技术(四): 基于 Linux bcc/BPF 实现 Go 程序动态追踪
Chapter 4: 分布式系统架构与挑战
基于 LVS 的 AAA 负载均衡架构实践
PostgreSQL 的时代到来了吗 ?
计算机远程通信协议: 从 CORBA 到 gRPC
案例: 基于 Kafka 的事件溯源型微服务
分布式追踪系统体系概要
开源分布式跟踪系统 OpenCensus
Chapter 5: Cyber-Security|网络与信息安全篇
11.31
1.32
1.33
1.34
1.35
1.36
1.37
1.38
1.39
1.40
1.41
1.42
1.43
1.44
1.45
1.46
1.47
1.48
1.49
1.50
1.51
1.52
1.53
1.54
1.55
黑客入侵导致的性能问题
基于数据分析的网络态势感知
网络数据包的捕获、 过滤与分析
WEB 应用安全、 攻击、 防护和检测
警惕 Wi-Fi 漏洞 KRACK
Cyber-Security & IPv6
Linux 容器安全的十重境界
美国网络安全立法策略
香港警务处网络安全与科技罪案调查科
Chapter 6: 工程管理篇
Oracle 数据库迁移与割接实践
珠海航展交通管控实践经验借鉴
基于看板( Kanban) 的管理实践
DevOps 漫谈:从作坊到工厂的寓言故事
工程师的自我修养: 全英文技术学习实践
Chapter 7: 社区文化篇
谁是王者: macOS vs Linux Kernels ?
Linus Torvalds: The mind behind Linux
Linus Torvalds: 人生在世, Just for Fun
DTrace 软件许可证演变简史
IT 工程师养生指南
附录
附录1: 推荐书单
附录2: 创作历史
附录4: 版权声明
2018-08-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人