内容简介
bm266255 9787115404749 9787115422286 9787115399830 9787115403094
Spark数据分析
Cloudera公司数据科学家团队携手打造,教你用Spark进行大规模数据分析 基本信息
- 作者:
- 译者:
- 出版社:
- ISBN:9787115404749
- 上架时间:2015-10-23
- 出版日期:2015 年8月
- 开本:16开
- 页码:244
- 版次:1-1
- 所属分类:
内容简介
本书是使用Spark进行大规模数据分析的实战宝典,由大数据公司Cloudera的数据科学家撰写。四位作者首先结合数据科学和大数据分析的广阔背景讲解了Spark,然后介绍了用Spark和Scala进行数据处理的基础知识,接着讨论了如何将Spark用于机器学习,同时介绍了常见应用中几个常用的算法。此外还收集了一些更加新颖的应用,比如通过文本隐含语义关系来查询Wikipedia或分析基因数据。
本书适合从事大数据分析的各类专业人员阅读。
目录
推荐序 ix
译者序 xi
序 xiii
前言 xv
第1章 大数据分析 1
1.1 数据科学面临的挑战 2
1.2 认识Apache Spark 4
1.3 关于本书 5
第2章 用Scala和Spark进行数据分析 7
2.1 数据科学家的Scala 8
2.2 Spark 编程模型 9
2.3 记录关联问题 9
2.4 小试牛刀:Spark shell和SparkContext 10
2.5 把数据从集群上获取到客户端 15
2.6 把代码从客户端发送到集群 18
2.7 用元组和case class对数据进行结构化 19
2.8 聚合 23
2.9 创建直方图 24
2.10 连续变量的概要统计 25
2.11 为计算概要信息创建可重用的代码 26
2.12 变量的选择和评分简介 30
2.13 小结 31
第3章 音乐推荐和Audioscrobbler数据集 33
3.1 数据集 34
3.2 交替小二乘推荐算法 35
3.3 准备数据 37
3.4 构建一个模型 39
3.5 逐个检查推荐结果 42
3.6 评价推荐质量 43
3.7 计算AUC 44
3.8 选择超参数 46
3.9 产生推荐 48
3.10 小结 49
第4章 用决策树算法预测森林植被 51
4.1 回归简介 52
4.2 向量和特征 52
4.3 样本训练 53
4.4 决策树和决策森林 54
4.5 Covtype数据集 56
4.6 准备数据 57
4.7 第决策树 58
4.8 决策树的超参数 62
4.9 决策树调优 63
4.10 重谈类别型特征 65
4.11 随机决策森林 67
4.12 进行预测 69
4.13 小结 69
第5章 基于K均值聚类的网络流量异常检测 71
5.1 异常检测 72
5.2 K均值聚类 72
5.3 网络入侵 73
5.4 KDD Cup 1999数据集 73
5.5 初步尝试聚类 74
5.6 K 的选择 76
5.7 基于R的可视化 79
5.8 特征的规范化 81
5.9 类别型变量 83
5.10 利用标号的熵信息 84
5.11 聚类实战 85
5.12 小结 86
第6章 基于潜在语义分析算法分析维基百科 89
6.1 词项-文档矩阵 90
6.2 获取数据 91
6.3 分析和准备数据 92
6.4 词形归并 93
6.5 计算TF-IDF 94
6.6 奇异值分解 97
6.7 找出重要的概念 98
6.8 基于低维近似的查询和评分 101
6.9 词项-词项相关度 102
6.10 文档-文档相关度 103
6.11 词项-文档相关度 105
6.12 多词项查询 106
6.13 小结 107
第7章 用GraphX分析伴生网络 109
7.1 对MEDLINE文献引用索引的网络分析 110
7.2 获取数据 111
7.3 用Scala XML工具解析XML文档 113
7.4 分析MeSH主要主题及其伴生关系 114
7.5 用GraphX来建立一个伴生网络 116
7.6 理解网络结构 119
7.6.1 连通组件 119
7.6.2 度的分布 122
7.7 过滤噪声边 124
7.7.1 处理EdgeTriplet 125
7.7.2 分析去掉噪声边的子图 126
7.8 小世界网络 127
7.8.1 系和聚类系数 128
7.8.2 用Pregel计算平均路径长度 129
7.9 小结 133
第8章 纽约出租车轨迹的空间和时间数据分析 135
8.1 数据的获取 136
8.2 基于Spark的时间和空间数据分析 136
8.3 基于JodaTime和NScalaTime的时间数据处理 137
8.4 基于Esri Geometry API和Spray的地理空间数据处理 138
8.4.1 认识Esri Geometry API 139
8.4.2 GeoJSON简介 140
8.5 纽约市出租车客运数据的预处理 142
8.5.1 大规模数据中的非法记录处理 143
8.5.2 地理空间分析 147
8.6 基于Spark的会话分析 149
8.7 小结 153
第9章 基于蒙特卡罗模拟的金融风险评估 155
9.1 术语 156
9.2 VaR计算方法 157
9.2.1 方差-协方差法 157
9.2.2 历史模拟法 157
9.2.3 蒙特卡罗模拟法 157
9.3 我们的模型 158
9.4 获取数据 158
9.5 数据预处理 159
9.6 确定市场因素的权重 162
9.7 采样 164
9.8 运行试验 167
9.9 回报分布的可视化 170
9.10 结果的评估 171
9.11 小结 173
第10章 基因数据分析和BDG项目 175
10.1 分离存储与模型 176
10.2 用ADAM CLI导入基因学数据 178
10.3 从ENCODE数据预测转录因子结合位点 185
10.4 查询1000 Genomes项目中的基因型 191
10.5 小结 193
第11章 基于PySpark和Thunder的神经图像数据分析 195
11.1 PySpark简介 196
11.2 Thunder工具包概况和安装 199
11.3 用Thunder加载数据 200
11.4 用Thunder对神经元进行分类 207
11.5 小结 211
附录A Spark进阶 213
附录B 即将发布的MLlib Pipelines API 221
作者介绍 226
封面介绍 226
译者序
Spark·佳实践
腾讯专家传授实战经验
本书是Spark实战指南,全书共分8章。前4章介绍Spark的部署、工作机制和内核,后4章分别通过实战项目介绍SparkSQL、SparkStreaming、SparkGraphX和SparkMLib功能模块。此外,本书详细介绍了常见的实战问题,比如大数据环境下的配置设置、程序调优等。本书附带的一键安装脚本,更能为初学者提供很大帮助。
第1 章 Spark 与大数据 1
1.1 大数据的发展及现状 1
1.1.1 大数据时代所面临的问题 1
1.1.2 谷歌的大数据解决方案 2
1.1.3 Hadoop 生态系统 3
1.2 Spark 应时而生 4
1.2.1 Spark 的起源 4
1.2.2 Spark 的特点 5
1.2.3 Spark 的未来发展 6
第2 章 Spark 基础 8
2.1 Spark 本地单机模式体验 8
2.1.1 安装虚拟机 8
2.1.2 安装JDK 19..
内容简介
Spark是不断壮大的大数据分析解决方案家族中备受关注的新成员。它不仅为分布式数据集的处理提供了一个有效框架,而且以高效的方式处理分布式数据集。它支持实时处理、流处理和批处理,提供了统一的解决方案,因此极具竞争力。本书以源码为基础,深入分析spark内核的设计理念和架构实现,系统讲解各个核心模块的实现,为性能调优、二次开发和系统运维提供理论支持,为更好地使用Spark Streaming、MLlib、Spark SQL和GraphX等奠定基础。
目录
序
前言
第1章 Spark简介1
1.1Spark的技术背景1
1.2Spark的优点2
1.3Spark架构综述4
1.4Spark核心组件概述5
1.4.1Spark Streaming5
1.4.2MLlib6
1.4.3Spark SQL7
1.4.4 GraphX8
1.5Spark的整体代码结构规模8
第2章 Spark学习环境的搭建9
2.1源码的获取与编译9
2.1.1源码获取9
2.1.2源码编译10
2.2构建Spark的源码阅读环境11
2.3小结15
第3章 RDD实现详解16
3.1概述16
Spark机器学习
当机器学习遇上非常流行的并行计算框架Spark.... 基本信息
- 作者:
- 译者:
- 丛书名:
- 出版社:
- ISBN:9787115399830
- 上架时间:2015-8-17
- 出版日期:2015 年9月
- 开本:16开
- 页码:224
- 版次:1-1
- 所属分类: > >
编辑推荐
Apache Spark是一个分布式计算框架,专为满足低延迟任务和内存数据存储的需求而优化。现有并行计算框架中,鲜有能兼顾速度、可扩展性、内存处理以及容错性,同时还能简化编程,提供灵活、表达力丰富的强大API的,Apache Spark就是这样一个难得的框架。
本书介绍了Spark的基础知识,从利用Spark API来载入和处理数据,到将数据作为多种机器学习模型的输入。此外还通过详细的例子和现实应用讲解了常见的机器学习模型,包括推荐系统、分类、回归、聚类和降维。另外还介绍了一些高阶内容,如大规模文本数据的处理,以及Spark Streaming下的在线机器学习和模型评估方法。
如果你是一名Scala、Java或Python开发者,对机器学习和数据分析感兴趣,并想借助Spark框架来实现常见机器学习技术的大规模应用,那么本书便是为你而写。有Spark的基础知识,但并不要求你有实践经验。
通过学习本书,你将能够:
用Scala、Java或Python语言编写你的一个Spark程序;
在你的本机和Amon EC2上创建和配置Spark开发环境;
获取公开的机器学习数据集,以及使用Spark对数据进行载入、处理、清理和转换;
借助Spark机器学习库,利用协同过滤、分类、回归、聚类和降维等常见的机器学习模型来编写程序;
编写Spark函数来评估你的机器学习模型的性能;
了解大规模文本数据的处理方法,包括特征提取和将文本数据作为机器学习模型的输入;
探索在线学习方法,利用Spark Streaming来进行在线学习和模型评估。
内容简介
Spark快速大数据分析
基本信息
- 作者:
- 译者:
- 出版社:
- ISBN:9787115403094
- 上架时间:2015-9-16
- 出版日期:2015 年9月
- 开本:16开
- 页码:210
- 版次:1-1
- 所属分类: > >
编辑推荐
国内第本Spark图书!
Spark开发者出品!
《Spark快速大数据分析》是一本为Spark初学者准备的书,它没有过多深入实现细节,而是更多关注上层用户的具体用法。不过,本书绝不仅仅限于Spark的用法,它对Spark的核心概念和基本原理也有较为全面的介绍,让读者能够知其然且知其所以然。
内容简介
本书由 Spark 开发者及核心成员共同打造,讲解了网络大数据时代应运而生的、能高效迅捷地分析处理数据的工具——Spark,它带领读者快速掌握用 Spark 收集、计算、简化和保存海量数据的方法,学会交互、迭代和增量式分析,解决分区、数据本地化和自定义序列化等问题。
本书适合大数据时代所有需要进行数据分析的人员阅读。
作译者
Holden Karau是Databricks的软件开发工程师,活跃于开源社区。她还著有《Spark快速数据处理》。
Andy Konwinski是Databricks联合创始人,Apache Spark项目技术专家,还是Apache Mesos项目的联合发起人。
Patrick Wendell是Databricks联合创始人,也是Apache Spark项目技术专家。他还负责维护Spark核心引擎的几个子系统。
Matei Zaharia是Databricks的CTO,同时也是Apache Spark项目发起人以及Apache基金会副主席。
目录
推荐序 xi
《深入探索:海量数据处理与智能决策的新纪元》 在数字浪潮汹涌澎湃的今天,数据已然成为驱动现代社会发展的核心引擎。海量数据如同未经雕琢的钻石,蕴含着巨大的商业价值和洞察力,但要从中提炼出金子,则需要强大的工具和精湛的技艺。本书正是为应对这一挑战而生,它将带领您穿越数据的迷雾,抵达智能决策的新彼岸。 本书并非市面上常见的技术入门手册,它更像是一位经验丰富的向导,将引导您深入理解构建高效、可扩展大数据处理与分析系统的底层逻辑与精髓。我们将避开那些泛泛而谈的初级概念,直接聚焦于那些能够真正决定系统性能、稳定性和应用前景的关键环节。 第一篇:分布式计算的基石——性能优化与容错机制的精微之道 分布式计算是处理海量数据的必然选择,而Spark作为当今最炙手可热的分布式计算框架,其强大的能力离不开精妙的设计。然而,仅仅了解Spark的基本API是远远不够的。在本篇中,我们将深入剖析Spark的执行引擎,揭示其任务调度、数据分区、Shuffle过程等核心机制的运行原理。我们会详细探讨如何通过精细化的参数调优,例如调整Executor的内存分配、Core数量,以及Stage与Task的划分策略,来最大限度地提升作业的执行效率。 您将了解到,仅仅依靠Spark默认的配置往往无法在真实生产环境中发挥其最佳性能。我们将分享一系列经过实践检验的优化技巧,包括但不限于:如何有效管理内存,避免OOM(Out of Memory)错误;如何优化Shuffle过程,减少网络I/O和磁盘I/O的开销,例如通过Broadcast Join、Sort-Merge Join的策略选择,以及Skew Join的处理方法。我们会深入分析数据倾斜的成因,并提供多种行之有效的解决方案,如数据重分区、局部聚合等。 容错机制是分布式系统稳定运行的生命线。Spark的RDD(Resilient Distributed Datasets)设计天然具备容错能力,但其背后的容错原理,如Lineage(血缘关系)的构建与恢复机制,以及Checkpoint(检查点)的应用场景与最佳实践,需要深刻理解。我们将详细讲解在不同故障场景下,Spark如何实现故障转移和数据恢复,并探讨如何设计更具弹性的应用程序,以应对网络抖动、节点失效等不可预见的挑战。 此外,我们还将探讨Spark Streaming和Structured Streaming在处理实时数据流时的复杂性。如何保证数据的一致性(Exactly-Once, At-Least-Once)、如何管理状态(State Management)、如何应对高峰流量的涌入,这些都是需要深入研究的课题。我们将深入分析其背后的机制,并提供相应的优化策略,例如窗口函数的选择、触发器的设置,以及水源(Source)和汇(Sink)的配置优化。 第二篇:机器学习模型在Spark生态下的融合与实践 机器学习是释放数据潜力的关键技术,而Spark凭借其强大的计算能力和丰富的生态系统,已成为构建和部署大规模机器学习模型的理想平台。本篇将聚焦于如何在Spark框架下,高效、大规模地进行机器学习模型的训练、评估和推理。 我们将跳过基础的机器学习算法介绍,直接探讨在分布式环境下实现这些算法的挑战与解决方案。例如,在并行化训练大规模模型时,如何有效地管理模型参数的同步(Parameter Server、All-Reduce),如何选择合适的分布式训练策略,以及如何针对特定算法(如深度学习中的反向传播)进行优化。 我们将详细介绍Spark MLlib库的高级特性,并不仅仅停留在API的调用层面。我们会深入理解其底层实现,例如分布式矩阵运算的优化、特征工程的并行化处理,以及模型评估的分布式统计计算。您将学习如何针对不同的数据特性和业务需求,选择最优的特征提取和特征选择方法,以及如何有效地处理高维稀疏数据。 对于复杂的模型,例如深度学习模型,我们将探讨如何利用Spark与其他深度学习框架(如TensorFlow、PyTorch)进行集成,实现分布式训练。我们将介绍Spark on Kubernetes、Spark on YARN等部署模式如何为深度学习提供强大的算力支持,以及如何利用Spark来管理和调度大规模的深度学习训练任务。 更重要的是,我们将关注模型在生产环境中的部署与推理。如何将训练好的模型高效地集成到Spark Streaming或Structured Streaming管道中,实现实时预测?如何对模型进行优化,以应对低延迟的推理需求?我们将探讨模型量化、模型剪枝等技术,以及如何在Spark集群上实现高吞吐量的模型推理服务。 第三篇:企业级Spark应用架构与性能调优的深度洞察 将Spark技术成功应用于企业级生产环境,需要超越技术的层面,深入理解系统架构、部署策略和运维管理。本篇将为您提供企业级Spark应用开发的深度洞察。 我们首先会深入分析Spark与其他大数据组件(如HDFS、Hive、Kafka、HBase)的集成之道。理解它们之间的协作原理,以及如何构建一个高效、稳定的数据管道。我们将探讨数据湖(Data Lake)和数据仓库(Data Warehouse)的架构设计,以及Spark在其中的作用。 在集群部署方面,我们将详细介绍Spark在不同环境下的部署策略,包括Standalone模式、YARN模式、Mesos模式以及Kubernetes模式。我们将深入分析每种模式的优劣势,以及在不同场景下的适用性。您将学会如何进行集群的资源规划、配置优化,以及如何应对大规模集群的管理挑战。 性能调优并非一蹴而就,而是持续的工程实践。我们将在本篇中分享一套完整的性能调优方法论,从指标监控、瓶颈分析到问题定位和解决方案实施。您将学习如何利用Spark UI、Ganglia、Prometheus等工具来监控集群和作业的运行状态,如何识别性能瓶颈(CPU、内存、I/O、网络),以及如何采取有针对性的调优措施。 此外,我们还将探讨Spark应用程序的安全加固,包括数据加密、访问控制、认证授权等。以及在大数据环境下,如何进行有效的日志管理、告警机制的建立,以及故障排查的标准化流程。 最后,我们将分享一些企业级Spark应用的最佳实践案例,涵盖金融、电商、物联网等不同行业。通过分析这些实际案例,您可以更直观地理解本书中的技术概念如何在真实世界中落地,并从中汲取宝贵的经验。 本书的目标是培养具备“工匠精神”的大数据技术专家,让您不仅能够熟练运用Spark,更能深入理解其内在机制,成为解决复杂大数据挑战的行家里手。我们相信,通过本书的学习,您将能够构建出更强大、更智能、更具竞争力的海量数据处理与分析系统,开启属于您的智能决策新纪元。