新書推薦:
《
宠物革命:动物与现代英国生活的形成
》
售價:NT$
360.0
《
世界杂货店:罗伯特·谢克里科幻小说集(新版)
》
售價:NT$
340.0
《
(棱镜精装人文译丛)蔑视大众:现代社会文化斗争的实验
》
售價:NT$
275.0
《
皇家宫廷中的保健秘方 中小学课外阅读
》
售價:NT$
290.0
《
《诗经》十五讲 十五堂《诗经》历史文化与文学课 丹曾人文通识丛书
》
售價:NT$
395.0
《
述异记汇笺及情节单元分类研究(上下册)
》
售價:NT$
475.0
《
环境、社会、治理(ESG)信息披露操作手册
》
售價:NT$
1190.0
《
桑德拉销售原则 伍杰 [美]大卫·马特森
》
售價:NT$
440.0
|
編輯推薦: |
《Spark大数据分析与实战》由传智播客教育科技公司编写,实用性强,案例翔实,配套数字资源丰富。
针对具有Hadoop基础的读者,帮助读者掌握Spark的基础知识和应用。不仅介绍了Spark基础使用方法,而且还深入浅出讲解了Spark的编程模型、运行机制、存储原理和运行架构等内容。
内容的编写致力于原理与实践并进,让读者不会因为枯燥的原理而厌烦,穿插真实企业级项目,让读者具有开发项目的基础能力。
|
內容簡介: |
本书从初学者角度详细介绍了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、题库、教学视频、教学补充案例、教学设计等资源。为了帮助初学者更好地学习本书中的内容,还提供了在线答疑,欢迎读者关注。 本书可作为高等院校本、专科计算机相关专业,大数据课程的专用教材,是一本适合广大计算机编程爱好者的优秀读物。
|
目錄:
|
目录
第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启动SparkShell49
2.5.1运行SparkShell命令49
2.5.2运行SparkShell读取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
|
內容試閱:
|
序言
江苏传智播客教育科技股份有限公司(简称传智播客)是一家致力于培养高素质软件开发人才的科技公司,黑马程序员是传智播客旗下高端IT教育品牌。
黑马程序员的学员多为大学毕业后,想从事IT行业,但各方面条件还不成熟的年轻人。黑马程序员的学员筛选制度非常严格,包括了严格的技术测试、自学能力测试,还包括性格测试、压力测试、品德测试等。百里挑一的残酷筛选制度确保学员质量,并降低企业的用人风险。
自黑马程序员成立以来,教学研发团队一直致力于打造精品课程资源,不断在产、学、研三个层面创新自己的执教理念与教学方针,并集中黑马程序员的优势力量,有针对性地出版了计算机系列教材80多种,制作教学视频数十套,发表各类技术文章数百篇。
黑马程序员不仅斥资研发IT系列教材,还为高校师生提供以下配套学习资源与服务。
为大学生提供的配套服务
1. 请登录高校学习平台http:yx.ityxb.com,免费获取海量学习资源,帮助高校学生解决学习问题。
2. 针对高校学生在学习过程中存在的压力等问题,我们还面向大学生量身打造了IT技术女神播妞学姐,可提供教材配套源码和习题答案,以及更多IT学习资源,同学们快来关注播妞学姐的微信公众号:boniu1024。
播妞学姐微信公众号
为教师提供的配套服务
针对高校教学,黑马程序员为IT系列教材精心设计了教案 授课资源 考试系统 题库 教学辅助案例的系列教学资源,高校老师请登录高校教辅平台http:yx.ityxb.com或关注码大牛老师微信QQ:2011168841,获取教材配套资源,也可以扫描下方二维码,加入专为IT教师打造的师资服务平台教学好助手,获取最新教师教学辅助资源的相关动态。
Spark大数据分析与实战
为什么要学习本书
Apache Spark是用于大规模数据处理的统一分析引擎,具有高效性、易用性、通用性、兼容性四大特性,并且在Spark生态体系中,包含了离线数据、流式数据、图计算、机器学习、NoSQL查询等多个方面的解决方案,深受广大大数据工程师及算法工程师的喜爱。对于想从事大数据行业的开发人员来说,学好Spark尤为重要。
Spark技术功能强大,涉及知识面较广,零基础的同学很难踏入Spark体系架构之中,因此本书采用理论和案例相结合的编写方式,用通俗易懂的语言讲解复杂、难以理解的原理,每章都包含多个案例,让读者学以致用。
关于本书
作为大数据技术Spark的入门教程,最重要且最难的一件事情就是将一些复杂、难以理解的思想和问题简单化,让初学者能够轻松理解并快速掌握。本教材对每个知识点都进行了深入分析,并针对每个知识点精心设计了相关案例,然后模拟这些知识点在实际工作中的运用,真正做到了知识的由浅入深、由易到难。
本书共分为9章,接下来分别对每个章节进行简单的介绍,具体如下。
第1章主要讲解什么是Scala以及Scala编程相关知识。通过本章学习,读者应掌握Scala环境的安装配置,熟悉Scala语法规范,并实现使用Scala语言编写自己的第一个程序。
第2章主要介绍什么是Spark,以及搭建Spark集群的方式,并通过Spark Shell学习Spark的基本操作方法。通过本章学习,读者应能独立搭建Spark集群,同时对Spark系统的基础操作和基本原理有初步了解。
第3章主要介绍什么是Spark RDD、RDD的处理过程以及操作RDD的方式。通过本章的学习,读者可以了解RDD处理数据核心思想,并且能够使用RDD编程解决实际问题。
第4章主要介绍Spark SQL的数据模型DataFrame和Dataset,它是一个由多个列组成的结构化的分布式数据集合,类似于关系数据库中的表概念。通过本章的学习,读者应能够掌握利用Spark SQL操作MySQL和Hive两种常见数据源。
第5章主要介绍HBase分布式数据库的数据模型以及操作方式。通过本章学习,读者能够掌握部署HBase集群的方法,了解HBase存储数据的架构原理,并且能够使用HBase分布式数据库解决实际业务问题。
第6章主要介绍Kafka流处理平台,Kafka是流式计算系统中常见的辅助工具,通过Kafka工作原理的学习,读者能够了解Kafka集群整体架构中各个组件的功能,以及Kafka写入数据和消费数据的底层原理及操作方式。通过本章学习,读者能够掌握部署Kafka集群的方法,并能够通过执行命令和API方式操作Kafka。
第7章主要介绍Spark Streaming的相关知识,Spark Streaming是Spark生态系统中实现流式计算功能的重要组件。通过本章Spark Streaming案例式讲解,读者能够掌握Spark Streaming程序的开发步骤,及与Kafka整合使用的方法。
第8章主要介绍Spark MLlib,它是Spark提供的机器学习库,其中整合了统计、分类、回归、过滤等主流的机器学习算法和丰富的API,降低用户使用机器学习的难度。通过本章学习,读者能够了解利用Spark完成机器学习的方式,即获取数据集,调用训练模型算法得出模型,通过模型分析当前数据。
第9章主要介绍利用Spark构建实时交易数据统计案例的开发流程。通过本章学习,读者能够了解实时计算项目的基本架构模型,以及本项目统计商品成交额的需求实现方式。
致谢
本书的编写和整理工作由传智播客教育科技股份有限公司完成,主要参与人员有吕春林、高美云、翟振方、文燕等,全体人员在这近一年的编写过程中付出了许多辛勤的汗水。除此之外,还有传智播客600多名学员参与到了教材的试读工作中,他们站在初学者的角度对教材提出了许多宝贵的修改意见,在此一并表示衷心的感谢。
意见反馈
尽管我们付出了最大的努力,但书中难免会有欠妥之处,欢迎各界专家和读者朋友提出宝贵意见,我们将不胜感激。您在阅读本书时,如果发现任何问题或有不认同之处可以通过电子邮件与我们取得联系。
请发送电子邮件至itcast_book@vip.sina.com。
黑马程序员
2019年7月 前言Spark大数据分析与实战
|
|