Spark大数据分析与实战 正版二手书
¥
7.5
1.5折
¥
49
九品
库存18件
作者黑马程序员
出版社清华大学出版社
ISBN9787302534327
出版时间2019-09
装帧平装
开本16开
定价49元
货号9787302534327
上书时间2024-02-16
商品详情
- 品相描述:九品
- 商品描述
-
导语摘要
《Spark大数据分析与实战》由传智播客教育科技公司编写,实用性强,案例翔实,配套数字资源丰富。
针对具有Hadoop基础的读者,帮助读者掌握Spark的基础知识和应用。不仅介绍了Spark基础使用方法,而且还深入浅出讲解了Spark的编程模型、运行机制、存储原理和运行架构等内容。
内容的编写致力于原理与实践并进,让读者不会因为枯燥的原理而厌烦,穿插真实企业级项目,让读者具有开发项目的基础能力。
目录
第1章Scala语言基础1
1.1初识Scala1
1.1.1Scala概述1
1.1.2Scala的下载安装2
1.1.3在IDEA开发工具中下载安装
Scala插件4
1.1.4开发个Scala程序6
1.2Scala的基础语法9
1.2.1声明值和变量9
1.2.2数据类型9
1.2.3算术和操作符重载10
1.2.4控制结构语句10
1.2.5方法和函数13
1.3Scala的数据结构15
1.3.1数组15
1.3.2元组18
1.3.3集合19
1.4Scala面向对象的特性24
1.4.1类与对象24
1.4.2继承25
1.4.3单例对象和伴生对象26
1.4.4特质28
1.5Scala的模式匹配与样例类29
1.5.1模式匹配30
1.5.2样例类31
1.6本章小结31
1.7课后习题32
第2章Spark基础33
2.1初识Spark33目录Spark大数据分析与实战
2.1.1Spark概述33
2.1.2Spark的特点34
2.1.3Spark应用场景35
2.1.4Spark与Hadoop对比36
2.2搭建Spark开发环境37
2.2.1环境准备37
2.2.2Spark的部署方式37
2.2.3Spark集群安装部署38
2.2.4Spark HA集群部署41
2.3Spark运行架构与原理45
2.3.1基本概念45
2.3.2Spark集群运行架构45
2.3.3Spark运行基本流程46
2.4体验个Spark程序47
2.5启动Spark Shell49
2.5.1运行Spark Shell命令49
2.5.2运行Spark Shell读取HDFS文件50
2.6IDEA开发WordCount程序52
2.6.1以本地模式执行Spark程序52
2.6.2集群模式执行Spark程序54
2.7本章小结58
2.8课后习题59
第3章Spark RDD弹性分布式数据集60
3.1RDD简介60
3.2RDD的创建方式61
3.2.1从文件系统加载数据创建RDD61
3.2.2通过并行集合创建RDD62
3.3RDD的处理过程63
3.3.1转换算子63
3.3.2行动算子67
3.3.3编写WordCount词频统计案例70
3.4RDD的分区71
3.5RDD的依赖关系71
3.6RDD机制73
3.6.1持久化机制73
3.6.2容错机制75
3.7Spark的任务调度76
3.7.1DAG的概念76
3.7.2RDD在Spark中的运行流程76
3.8本章小结78
3.9课后习题78
第4章Spark SQL结构化数据文件处理80
4.1Spark SQL的基础知识80
4.1.1Spark SQL的简介80
4.1.2Spark SQL架构81
4.2DataFrame的基础知识82
4.2.1DataFrame简介82
4.2.2DataFrame的创建83
4.2.3DataFrame的常用操作86
4.3Dataset的基础知识89
4.3.1Dataset简介89
4.3.2Dataset对象的创建89
4.4RDD转换为DataFrame90
4.4.1反射机制推断Schema90
4.4.2编程方式定义Schema92
4.5Spark SQL操作数据源94
4.5.1操作MySQL94
4.5.2操作Hive数据集96
4.6本章小结99
4.7课后习题99
第5章HBase分布式数据库101
5.1HBase的基础知识101
5.1.1HBase的简介101
5.1.2HBase的数据模型102
5.2HBase的集群部署103
5.3HBase的基本操作107
5.3.1HBase的Shell操作107
5.3.2HBase的Java API操作112
5.4深入学习HBase原理120
5.4.1HBase架构121
5.4.2物理存储122
5.4.3寻址机制123
5.4.4HBase读写数据流程124
5.5HBase和Hive的整合125
5.6本章小结130
5.7课后习题130
第6章Kafka分布式发布订阅消息系统132
6.1Kafka的基础知识132
6.1.1消息传递模式简介132
6.1.2Kafka简介133
6.2Kafka工作原理134
6.2.1Kafka核心组件介绍134
6.2.2Kafka工作流程分析136
6.3Kafka集群部署与测试138
6.3.1安装Kafka138
6.3.2启动Kafka服务140
6.4Kafka生产者和消费者实例141
6.4.1基于命令行方式使用Kafka141
6.4.2基于Java API方式使用Kafka143
6.5Kafka Streams148
6.5.1Kafka Streams概述149
6.5.2Kafka Streams开发单词计数应用149
6.6本章小结153
6.7课后习题153
第7章Spark Streaming实时计算框架155
7.1实时计算的基础知识155
7.1.1什么是实时计算155
7.1.2常用的实时计算框架155
7.2Spark Streaming的基础知识156
7.2.1Spark Streaming简介156
7.2.2Spark Streaming工作原理157
7.3Spark的DStream157
7.3.1DStream简介157
7.3.2DStream编程模型158
7.3.3DStream转换操作158
7.3.4DStream窗口操作164
7.3.5DStream输出操作168
7.3.6DStream实例——实现网站热词排序170
7.4Spark Streaming整合Kafka实战173
7.4.1KafkaUtils.createDstream方式173
7.4.2KafkaUtils.createDirectStream方式177
7.5本章小结180
7.6课后习题180
第8章Spark MLlib 机器学习算法库182
8.1初识机器学习182
8.1.1什么是机器学习182
8.1.2机器学习的应用183
8.2Spark机器学习库MLlib的概述184
8.2.1MLlib的简介184
8.2.2Spark机器学习工作流程185
8.3数据类型186
8.3.1本地向量186
8.3.2标注点186
8.3.3本地矩阵187
8.4Spark MLlib基本统计188
8.4.1摘要统计188
8.4.2相关统计189
8.4.3分层抽样190
8.5分类191
8.5.1线性支持向量机191
8.5.2逻辑回归192
8.6案例——构建推荐系统193
8.6.1推荐模型分类194
8.6.2利用MLlib实现电影推荐194
8.7本章小结200
8.8课后习题200
第9章综合案例——Spark实时交易数据统计202
9.1系统概述202
9.1.1系统背景介绍202
9.1.2系统架构设计202
9.1.3系统预览203
9.2Redis数据库203
9.2.1Redis介绍204
9.2.2Redis部署与启动204
9.2.3Redis操作及命令205
9.3模块开发——构建工程结构206
9.4模块开发——构建订单系统211
9.4.1模拟订单数据211
9.4.2向Kafka集群发送订单数据212
9.5模块开发——分析订单数据215
9.6模块开发——数据展示219
9.6.1搭建Web开发环境219
9.6.2实现数据展示功能221
9.6.3可视化平台展示227
9.7本章小结228
内容摘要
本书从初学者角度详细介绍了Spark应用程序体系架构的核心技术,全书共9章。第1章详细介绍开发Spark框架的Scala编程语言;第2~4、7~8章主要讲解Spark核心基础、SparkRDD弹性分布式数据集、Spark SQL处理结构化数据、Spark Streaming实时计算框架、Spark MLlib机器学习库,并包含了搭建Spark集群、Spark集群的操作方式、利用Spark解决大数据工作中遇到的基本问题。第5~6章主要讲解大数据环境中常见的辅助系统,HBase数据库以及Kafka流处理平台,包含辅助系统的搭建方式、使用方法以及相关底层实现的基本原理;第9章是一个综合项目,利用Spark框架开发流式计算系统。掌握Spark相关技术,能够很好地适应企业开发的技术需要,为离线、实时数据处理平台的开发奠定基础。
本书附有配套源代码、教学PPT、题库、教学视频、教学补充案例、教学设计等资源。为了帮助初学者更好地学习本书中的内容,还提供了在线答疑,欢迎读者关注。
本书可作为高等院校本、专科计算机相关专业,大数据课程的专用教材,是一本适合广大计算机编程爱好者的很好读物。
精彩内容
第3章SparkRDD弹性分布式数据集学习目标理解RDD的五大特征。
掌握RDD的创建方法。
掌握RDD的转换算子和行动算子的操作方法。
了解RDD之间的依赖关系。
了解RDD的持久化和容错机制。
理解Spark的任务调度。传统的MapReduce虽然具有自动容错、平衡负载和可拓展性强的优点,但是其最大缺点是采用非循环式的数据流模型,使得在迭代计算时要进行大量的磁盘I/O操作。Spark中的RDD可以很好地解决这一缺点。RDD是Spark提供的最重要的抽象概
念,可以将RDD理解为一个分布式存储在集群中的大型数据集合,不同RDD之间可以通过转换操作形成依赖关系实现管道化,从而避免了中间结果的I/O操作,提高数据处理的速度和性能。接下来,本章将针对RDD进行详细讲解。
3.1RDD简介RDD(ResilientDistributedDataset,弹性分布式数据集),是一个容错的、并行的数据结构,可以让用户显式地将数据存储到磁盘和内存中,并且还能控制数据的分区。对于迭代式计算和交互式数据挖掘,RDD可以将中间计算的数据结果保存在内存中,若是后面需
要中间结果参与计算时,则可以直接从内存中读取,从而可以极大地提高计算速度。
每个RDD都具有五大特征,具体如下。
1.分区列表(alistofpartitions)每个RDD被分为多个分区(Partitions),这些分区运行在集群中的不同节点,每个分区都会被一个计算任务处理,分区数决定了并行计算的数量,创建RDD时可以指定RDD分区的个数。如果不指定分区数量,当RDD从集合创建时,默认分区数量为该程序所分配到的资源的CPU核数(每个Core可以承载2~4个Partition),如果是从HDFS文件创建,默认为文件的Block数。
2.每个分区都有一个计算函数(afunctionforcomputingeachsplit)Spark的RDD的计算函数是以分片为基本单位的,每个RDD都会实现compute函数,对具体的分片进行计算。
第3章SparkRDD弹性分布式数据集Spark大数据分析与实战3.依赖于其他RDD(alistofdependenciesonotherRDDs)RDD的每次转换都会生成一个新的RDD,所以RDD之间就会形成类似于流水线一样的前后依赖关系。在部分分区数据丢失时,Spark可以通过这个依赖关系重新计算丢失的分区数据,而不是对RDD的所有分区进行重新计算。
4.(Key,Value)数据类型的RDD分区器(aPartitionerforKeyValueRDDS)当前Spark中实现了两种类型的分区函数,一个是基于哈希的HashPartitioner,另外一个是基于范围的RangePartitioner。只有对于(Key,Value)的RDD,才
— 没有更多了 —
以下为对购买帮助不大的评价