展开全部

主编推荐语

通过实用技术和实战案例,让你轻松掌握大数据实时计算的方法。

内容简介

本书从大数据实时计算框架Spark的编程语言Scala入手,第1-4章重点介绍函数式编程语言Scala的基础语法、面向对象编程以及函数式编程等,再通过编程训练案例介绍Scala这门语言的实际开发应用,为读者后面学习Spark框架打下牢固的编程基础。第5-10章重点介绍Spark的安装部署、Spark Core编程、Spark SQL结构化数据处理以及Spark Streaming实时数据处理等,对它们进行详细的剖析和解读。最后,在第11章中通过网站运营指标统计和IP经纬度热力图分析两个实战开发项目,让读者充分掌握Spark大数据实时计算框架技术的应用与实操方法。

目录

  • 版权信息
  • 内容提要
  • 前言
  • 服务与支持
  • 第1章 Scala入门基础
  • 1.1 Scala语言的特色
  • 1.2 搭建Scala开发环境
  • 1.2.1 安装JDK
  • 1.2.2 安装Scala SDK
  • 1.2.3 安装IDEA Scala插件
  • 1.3 Scala解释器
  • 1.3.1 启动Scala解释器
  • 1.3.2 执行Scala代码
  • 1.3.3 退出Scala解释器
  • 1.4 Scala语法基础
  • 1.4.1 定义变量
  • 1.4.2 惰性赋值
  • 1.4.3 字符串
  • 1.4.4 数据类型与运算符
  • 1.4.5 条件表达式
  • 1.5 Scala控制结构和函数
  • 1.5.1 for表达式
  • 1.5.2 while循环
  • 1.5.3 函数
  • 1.5.4 方法和函数的区别
  • 1.6 方法
  • 1.6.1 定义方法
  • 1.6.2 方法参数
  • 1.6.3 方法调用方式
  • 1.7 数组
  • 1.7.1 定长数组
  • 1.7.2 变长数组
  • 1.7.3 遍历数组
  • 1.8 元组和列表
  • 1.8.1 元组
  • 1.8.2 列表
  • 1.8.3 Set集合
  • 1.9 Map映射
  • 1.9.1 不可变Map
  • 1.9.2 可变Map
  • 1.9.3 Map基本操作
  • 1.10 函数式编程
  • 1.10.1 遍历(foreach)
  • 1.10.2 使用类型推断简化函数定义
  • 1.10.3 使用下画线简化函数定义
  • 1.10.4 映射(map)
  • 1.10.5 扁平化映射(flatMap)
  • 1.10.6 过滤(filter)
  • 1.10.7 排序
  • 1.10.8 分组(groupBy)
  • 1.10.9 聚合(reduce)
  • 1.10.10 折叠(fold)
  • 1.11 本章总结
  • 1.12 本章习题
  • 第2章 Scala面向对象编程
  • 2.1 类与对象
  • 2.2 定义和访问成员变量
  • 2.3 使用下画线初始化成员变量
  • 2.4 定义成员方法
  • 2.5 访问修饰符
  • 2.6 类的构造器
  • 2.6.1 主构造器
  • 2.6.2 辅助构造器
  • 2.7 单例对象
  • 2.7.1 定义单例对象
  • 2.7.2 在单例对象中定义成员方法
  • 2.7.3 工具类案例
  • 2.8 main方法
  • 2.8.1 定义main方法
  • 2.8.2 实现App trait来定义入口
  • 2.9 伴生对象
  • 2.9.1 定义伴生对象
  • 2.9.2 apply和unapply方法
  • 2.10 继承
  • 2.10.1 定义语法
  • 2.10.2 类继承
  • 2.10.3 单例对象继承
  • 2.10.4 override和super
  • 2.11 类型判断
  • 2.11.1 isInstanceOf和asInstanceOf方法
  • 2.11.2 getClass和classOf
  • 2.12 抽象类
  • 定义抽象类
  • 2.13 匿名内部类
  • 2.14 特质
  • 2.14.1 trait作为接口使用
  • 2.14.2 trait中定义具体的字段和抽象字段
  • 2.14.3 使用trait实现模板模式
  • 2.14.4 对象混入trait
  • 2.14.5 使用trait实现调用链模式
  • 2.14.6 trait调用链
  • 2.14.7 trait的构造机制
  • 2.14.8 trait继承类
  • 2.15 本章总结
  • 2.16 本章习题
  • 第3章 Scala编程高级应用
  • 3.1 样例类
  • 3.1.1 定义样例类
  • 3.1.2 样例类方法
  • 3.1.3 样例对象
  • 3.2 模式匹配
  • 3.2.1 简单匹配
  • 3.2.2 守卫
  • 3.2.3 匹配类型
  • 3.2.4 匹配集合
  • 3.2.5 变量声明中的模式匹配
  • 3.2.6 匹配样例类
  • 3.3 Option类型
  • 3.4 偏函数
  • 3.5 正则表达式
  • 3.6 异常处理
  • 3.6.1 捕获异常
  • 3.6.2 抛出异常
  • 3.7 提取器
  • 定义提取器
  • 3.8 泛型
  • 3.8.1 定义泛型方法
  • 3.8.2 定义泛型类
  • 3.8.3 上下界
  • 3.8.4 非变、协变和逆变
  • 3.9 Actor
  • 3.9.1 Java并发编程的问题
  • 3.9.2 Actor并发编程模型
  • 3.9.3 Java并发编程与Actor并发编程
  • 3.10 Actor编程案例
  • 3.10.1 创建Actor
  • 3.10.2 发送消息/接收消息
  • 3.10.3 持续接收消息
  • 3.10.4 共享线程
  • 3.10.5 发送和接收自定义消息
  • 3.10.6 基于Actor实现WordCount案例
  • 3.11 本章总结
  • 3.12 本章习题
  • 第4章 Scala函数式编程思想
  • 4.1 作为值的函数
  • 4.2 匿名函数
  • 4.3 柯里化
  • 4.4 闭包
  • 4.5 隐式转换
  • 4.6 隐式参数
  • 4.7 Akka并发编程框架
  • 4.7.1 Akka特性
  • 4.7.2 Akka通信过程
  • 4.7.3 创建ActorSystem
  • 4.8 Akka编程入门案例
  • 4.8.1 实现步骤
  • 4.8.2 配置Maven模块依赖
  • 4.9 Akka定时任务
  • 4.10 实现两个进程之间的通信
  • 4.11 本章总结
  • 4.12 本章习题
  • 第5章 Spark安装部署与入门
  • 5.1 Spark简介
  • 5.1.1 MapReduce与Spark
  • 5.1.2 Spark组件
  • 5.1.3 Spark生态系统
  • 5.1.4 Spark架构
  • 5.1.5 Spark运行部署模式
  • 5.1.6 Spark远程过程调用协议
  • 5.2 Spark环境搭建
  • 5.2.1 本地模式部署
  • 5.2.2 Standalone集群模式
  • 5.2.3 Standalone-HA集群模式
  • 5.2.4 YARN集群模式
  • 5.2.5 Spark命令
  • 5.3 编写Spark应用程序
  • 5.3.1 Maven简介
  • 5.3.2 安装Maven
  • 5.3.3 Spark开发环境搭建
  • 5.3.4 配置pom.xml文件
  • 5.3.5 开发应用程序——本地运行
  • 5.3.6 修改应用程序——集群运行
  • 5.3.7 集群硬件配置说明
  • 5.4 本章总结
  • 5.5 本章习题
  • 第6章 SparkCore编程
  • 6.1 RDD概念与详解
  • 6.1.1 RDD简介
  • 6.1.2 RDD的主要属性
  • 6.1.3 小结
  • 6.2 RDD API应用程序
  • 6.3 RDD的方法(算子)分类
  • 6.3.1 Transformation算子
  • 6.3.2 Action算子
  • 6.4 基础练习
  • 6.4.1 实现WordCount案例
  • 6.4.2 创建RDD
  • 6.4.3 map
  • 6.4.4 filter
  • 6.4.5 flatMap
  • 6.4.6 sortBy
  • 6.4.7 交集、并集、差集、笛卡尔积
  • 6.4.8 groupByKey
  • 6.4.9 groupBy
  • 6.4.10 reduce
  • 6.4.11 reduceByKey
  • 6.4.12 repartition
  • 6.4.13 count
  • 6.4.14 top
  • 6.4.15 take
  • 6.4.16 first
  • 6.4.17 keys、values
  • 6.4.18 案例
  • 6.5 实战案例
  • 6.5.1 统计平均年龄
  • 6.5.2 统计人口信息
  • 6.5.3 在IDEA中实现WordCount案例
  • 6.5.4 小结
  • 6.6 RDD持久化缓存
  • 代码演示
  • 6.7 持久化缓存API详解
  • 6.7.1 persist方法和cache方法
  • 6.7.2 存储级别
  • 6.7.3 小结
  • 6.8 RDD容错机制Checkpoint
  • 6.8.1 代码演示
  • 6.8.2 容错机制Checkpoint详解
  • 6.9 本章总结
  • 6.10 本章习题
  • 第7章 SparkCore运行原理
  • 7.1 RDD依赖关系
  • 7.1.1 窄依赖与宽依赖
  • 7.1.2 对比窄依赖与宽依赖
  • 7.2 DAG的生成和划分阶段
  • 7.2.1 DAG的生成
  • 7.2.2 DAG划分阶段
  • 7.2.3 小结
  • 7.3 Spark原理初探
  • 7.3.1 Spark相关的应用概念
  • 7.3.2 Spark基本流程概述
  • 7.3.3 流程图解
  • 7.3.4 RDD在Spark中的运行过程
  • 7.3.5 小结
  • 7.4 RDD累加器和广播变量
  • 7.4.1 累加器
  • 7.4.2 广播变量
  • 7.5 RDD的数据源
  • 7.5.1 普通文本文件
  • 7.5.2 Hadoop API
  • 7.5.3 SequenceFile
  • 7.5.4 对象文件
  • 7.5.5 HBase
  • 7.5.6 JDBC
  • 7.6 本章总结
  • 7.7 本章习题
  • 第8章 Spark SQL结构化数据处理入门
  • 8.1 数据分析方式
  • 8.1.1 命令式
  • 8.1.2 SQL式
  • 8.2 Spark SQL的发展
  • 8.3 数据分类和Spark SQL适用场景
  • 8.3.1 结构化数据
  • 8.3.2 半结构化数据
  • 8.3.3 非结构化数据
  • 8.4 Spark SQL特点
  • 8.5 Spark SQL数据抽象
  • 8.6 DataFrame简介
  • 8.7 Dataset简介
  • 8.8 RDD、DataFrame和Dataset的区别
  • 8.9 Spark SQL初体验
  • 8.9.1 SparkSession入口
  • 8.9.2 创建DataFrame
  • 8.9.3 创建Dataset
  • 8.9.4 两种查询风格
  • 8.10 本章总结
  • 8.11 本章习题
  • 第9章 Spark SQL结构化数据处理高级应用
  • 9.1 使用IDEA开发Spark SQL
  • 9.1.1 创建DataFrame和Dataset
  • 9.1.2 花式查询
  • 9.1.3 相互转换
  • 9.1.4 Spark SQL词频统计实战
  • 9.2 Spark SQL多数据源交互
  • 9.3 Spark SQL自定义函数
  • 9.3.1 自定义函数分类
  • 9.3.2 UDF
  • 9.3.3 UDAF
  • 9.4 Spark on Hive
  • 9.4.1 开启Hive的元数据库服务
  • 9.4.2 Spark SQL整合Hive元数据库
  • 9.4.3 使用Spark SQL操作Hive表
  • 9.5 本章总结
  • 9.6 本章习题
  • 第10章 Spark Streaming核心编程
  • 10.1 场景需求
  • 10.2 Spark Streaming概述
  • 10.2.1 Spark Streaming的特点
  • 10.2.2 Spark Streaming实时计算所处的位置
  • 10.3 Spark Streaming原理
  • 10.3.1 基本流程
  • 10.3.2 数据模型
  • 10.4 DStream相关的API
  • 10.4.1 Transformation
  • 10.4.2 Output
  • 10.5 Spark Streaming原理总结
  • 10.6 Spark Streaming实战
  • Spark Streaming第一个案例WordCount
  • 10.7 updateStateByKey算子
  • 10.7.1 WordCount案例问题分析
  • 10.7.2 代码实现
  • 10.7.3 执行步骤
  • 10.8 reduceByKeyAndWindow算子
  • 10.8.1 图解reduceByKeyAndWindow算子
  • 10.8.2 代码实现
  • 10.8.3 执行步骤
  • 10.9 统计一定时间内的热搜词
  • 10.9.1 需求分析
  • 10.9.2 代码实现
  • 10.9.3 执行步骤
  • 10.10 整合Kafka
  • 10.10.1 Kafka基本概念
  • 10.10.2 Kafka的特性
  • 10.10.3 核心概念图解
  • 10.10.4 Kafka集群部署
  • 10.10.5 Kafka常用命令
  • 10.10.6 Receiver接收方式
  • 10.10.7 Direct直连方式
  • 10.10.8 spark-streaming-kafka-0-8版本
  • 10.10.9 spark-streaming-kafka-0-10版本
  • 10.11 本章总结
  • 10.12 本章习题
  • 第11章 Spark综合项目实战
  • 11.1 网站运营指标统计项目
  • 11.1.1 需求分析
  • 11.1.2 数据分析
  • 11.1.3 代码实现
  • 11.2 热力图分析项目
  • 11.2.1 需求分析
  • 11.2.2 数据分析
  • 11.2.3 项目开发
  • 11.3 本章总结
  • 11.4 本章习题
展开全部

评分及书评

评分不足
1个评分

出版方

人民邮电出版社

人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。