Spark大神班--涛哥星哥联合BAT大神倾情打造

来源:互联网 发布:tensorflow车牌识别 编辑:程序博客网 时间:2024/05/22 07:02

1.Spark大神班课程特色

涛哥星哥联合BAT大神倾情打造!!!

当其他培训机构还在进Spark 1.0的时,我们早已经升级到Spark 2.0了;当其他培训机构还在使用Demo级别的案例时教学时,我们早已经加入了三大企业级真实项目;当其他培训机构授课仅蜻蜓点水时,我们早已经带着学员阅读Spark的核心源码了!Spark大神班为有一定基础且想深入学习Spark的学员量身打造,拒绝平庸,与众不同!

2.课程目标:培养企业中最想要的Spark工程师!

专技术:对整个大数据生态圈的相关技术都有一定的研究,深入理解Spark的原理,熟练使用Spark技术解决各种业务需求。通过我们课程中的企业级项目和阅读Spark源码让你更加深了的掌握Spark技术

懂架构:对业务有一定的了解,并且可以根据不同的业务场景设计出最优的技术架构。通过我们课程中的企业真实项目,全方位掌握项目的整个开发周期,达到触类旁通的目的!

擅调优:大数据项目一般都有一定的性能瓶颈,需要深入掌握项目技术架构特点和技术原理方可对项目中的瓶颈进行调优。通过项目中的调优经验让你掌握该技能!

善沟通:大数据工程师在项目中扮演一个非常重要的角色,需要跟各个部门进行协调沟通,所以要具备良好的沟通能力,业务对接能力!

 

一个牛XSpark工程师要掌握的必备技能包

JavaScala编程语言、PythonShell脚本

Hadoop生态圈中的HDFSMapReduceHiveHbaseFlume

Spark中的Spark CoreSpark SQL & DateFramesSparkStreamingMLlibGraphX

Kafka消息中间件

3.Scala函数式编程部分大纲

要点

具体内容

备注说明

Scala快速入门

scala编程介绍

快速掌握Scala的使用和基本
语法,通过案例加深理解!

scala与其他语言的对比和优势

scala相关软件安装

scala基础语法

scala编程介绍

scala相关软件安装

scala入门案例

函数式编程

scala方法和函数

通过与Java和Python的lambda对比,并用Java语言自己实现一个类似功能,深入理解函数式编程,然后通过一些案例加深理解!

scala的函数和Python的Lambda对比

scala的函数和Java8的Lambda对比

用Java自己实现一个类似函数式编程
的功能

scala函数式编程特点

scala数组和集合

map、flatMap方法的讲解和案例

reduce方法的讲解和案例

filter、filterNot方法方法的讲解
和案例

fold、foldLeft、foldRight方法方
法的讲解和案例

sortBy、sortWith、sorted方法方
法的讲解和案例

aggregate方法的讲解和案例

其他常用的方法

scala编程练习(单机版WordCount)

面向对象

类的定义

Scala是一门集面向对象和函数式编程语言
与一身,通过与Java面向对象的对比,并讲解
Scala面向对象的特别之处,快速掌握Scala
面向对象的使用!

构造器与辅助构造器

继承

单例对象

包访问权限

实现特质

方法的重写和重载

实现多态

面向对象综合案例

模式匹配

Scala模式匹配的特点

按内容匹配

模式匹配是Scala一个非常重要的功能,尤其是case class和case object,可以实现很多
奇妙的功能,掌握了Scala的模式匹配文后面的综合案例做准备!

按类型匹配

case class

case object

自定义case class和case oject
案例

Option/Some/None

偏函数

Actor并发编程

Actor编程模型简介

通过Actor的案例并与Java的线程对比,
为后面学习Akka做准备,同时可以使用Actor
来实现多线程并发编程

Actor编程模型简介与Java传统多
线程的区别

创建Actor的方式

发送同步消息和异步消息

Scala的Future功能

Actor编程实战

高阶函数

高阶函数介绍

高阶函数是Scala中一个非常重要的功能,
后面有很多强大的功能都都是基于高阶
函数实现的,通过案例深入理解高阶函数,
达到活学活用的目的

高阶函数的种类

柯里化

call by name和call by value

Scala的闭包

高阶函数综合案例

隐式转换

隐式转换的概念和作用

隐式转换与装饰模式、代理模式的
对比

隐式转换是Scala中一个不太好理解的知识点,通过与以前学过的装饰模式和代理模式继
续进行对比,并通过案例彻底
理解隐式转换

隐式转换的优点

上下文绑定

视图绑定

逆变和协变

隐式转换原理剖析

隐式转换案例

分布式RPC编程案例(Akka和Netty)

RPC编程实现原理介绍

Akka是一个分布式、高可用、可扩展的分布式
通信编程框架,理解Akka通信的原理,可以
了解Spark底层通信的过程,虽然Spark2.0以后不再使用Akka作为其通信框架,而是使用Netty代替,但是学好Akka可以为为后面学习Nitty和阅读Spark源码做准备!

Akka框架介绍

Akka入门案例

Akka原理剖析

Akka的容错功能

Akka整合zookeeper实现高可用

实战:RPC编程实战一(实现RPC通
信功能)

实战:RPC编程实战二(实现Spark
底层通信的功能)

Netty的介绍和特点

Netty的基本使用

案例:实现Netty的Server端的实现

案例:实现Netty的Client端的实现

Netty整合其他序列框架

案例:利用Netty实现RPC通信

3.1 Scala综合实战项目:RPC通信案例

项目介绍:该项目是使用Akka实现的一个模拟Spark底层通信的RPC案例,通过该项目可以将前面学习Scala的知识熟练使用并融会贯通,为后面学习Spark打下坚实的基础。

 

 

4.Spark课程大纲

Spark简介和环境搭建

Spark简介

掌握Spark Standalone模式集群搭建,
以及与HDFS的整合。熟练使用Spark Shell,
编写简单Spark程序

Spark和Hadoop、Storm的对比

Spark集群环境架构

Spark集群搭建

Spark高可用集群搭建

Spark-Shell的使用

Spark整合HDFS

RDD的Transformation和Action的使用

用Scala语言编写Spark应用
程序WordCount

理解RDD的原理、熟练使用Spark的算子,虽然在Spark2.0 RDD使用较少,推荐使用SparkSQL,但是SparkSQL底层还是RDD,所以学好RDD会加深对Spark的理解

用Java语言编写Spark应用
程序WordCount

RDD简介

RDD的特点说明

Spark常用算子介绍

Spark的Transformation算子

map、flatMap、mapPartitions
的使用

filter的使用

reduceByKey、groupByKey、
aggregateByKey的使用

sortByKey、sortBy的使用

join、unit、intersection、
cogroup的使用

coalesce、repartition、
repartitionAndSortWithinPartitions的使用

其他复杂的Transformation算子

Spark的Action算子

reduce的使用

count、countByKey的使用

collect、firsttake、takeOrdere
的使用

saveAsTextFile、saveAsSequenceFile、
saveAsObjectFile的使用

foreach、foreachPartition算子

其他复杂的Action算子

Spark Core的高级功能和实战案例

案例:用户最常出现的位置

通过案例实战案例深入理解RDD,熟练使用RDD
完成具体业务逻辑。

Spark的WordCount执行相信流程解析

RDD的缓存机制

案例:URL求TopN

自定义分区

二次排序

自定义排序

RDD的checkpoint机制

广播变量

案例:根据IP求归属地

Spark远程调试

Maven编译Spark源码

宽依赖和窄依赖

RDD的血统关系

DAG切分过程

案例:利用JdbcRDD导入数据

Spark SQL

Spark-SQL介绍

Spark2.0的特色就是对SparkSQL进行了优化,
大大提高了执行效率,
不但统一了DataFrame和DataSet的接口,
而且简化了开发和提高开发效率,通过案例可以熟练掌握SparkSQL的使用

Spark-SQL的使用新特性

SparkSession的使用

DataFrame和DataSet的使用

DataFrame的常用方法

通过Case Class和Schema创建
DataSet

DataSet的常用方法

Parquet文件的使用

SparkSQL的TemporaryView

Spark-SQL加载并处理MySQL中的数据

利用Spark-SQL讲数据写入到MySQL中

Spark-SQL整合Hive

Spark-SQL综合案例1

Spark-SQL综合案例2

SparkStreaming

Spark-Streaming简介

熟练Kafka的配置和使用,理解kafka高可用
配置。掌握Spark-Streaming整合kafka,
掌握DStream的常用操作,完成实时数据处理,并将数据实时写入到Redis或Hbase中

编写Spark-Streaming的WordCount程序

可更新状态的WordCount程序

Spark-Streaming整合Flume

Kafka的介绍

Kafka集群的安装

Kafak相关概念介绍

Kafka生产者和消费者程序编写

Kafka的Topic的相关操作

Kafka原理深入

Spark-Streaming整合Kafka

案例:Spark-Streaming实时统计
小区流量

Spark-Streaming窗口函数

Spark-Streaming直连方式整合Kafka

直连方式原理分析

Spark On Yarn

Hadoop的YARN知识点回顾

掌握YARN的执行过程,熟练使用将Spark任务
提交到YARN上执行,通过YARN的管理界面管理
和调度spark任务

Spark On YARN两种方式Cluster
和Client

两种方式过程分析

Spark On YARN日志查看

Spark On YARN常见问题分析

Spark On YARN的的任务调度

Spark On YARN的常用配置参数

YARN的监控页面参数讲解

Spark MLlib

Spark MLlib介绍

掌握Spark MLlib和机器学习常用算法

MLlib和Mahout的对比和优势

breeze向量和矩阵计算

MLlib常用算法

案例:智能推荐案例

案例:分析电商销售商品分类

Spark GraphX

GraphX介绍

掌握图计算使用场景和Graphx的使用

图相关概念的介绍

GraphX基本使用

案例:社交用户人脉分析

案例:手机用户常出没的商圈分析

Spark源码分析

Master启动流程源码分析

通过分析Spark源码,深入理解Spark执行流程,从而为分析任务问题和优化提供思路

Worker启动流程源码分析

Spark应用程序提交构成源码分析

SparkContext创建过程源码分析

ClientActor提交任务给Master
过程源码分析

Master资源调度源码分析

Master通知Worker启动Executor
过程源码分析

Executor跟DriverActor通信过
程源码分析

任务提交整理流程源码分析

DAGSchedule执行过程分析

DAG切分Stage过程源码分析

TaskScheduler提交Task过程
源码分析

Executor上执行Task过程源码分析

Spark集群和任务性能优化

Spark Standalone模式优化参数

任务提交资源分配和优化参数

了解Spark常用的参数,理解Spark运行过程,
优化Spark任务执行,从掌握常见任务执行优化的方案。

数据倾斜原因及优化方案

Driver端参数配置和优化

Worker端参数配置和优化

RDD的cache、checkpoint等相关优化

Shuffle过程优化及参数配置

SparkSQL的任务优化

SparkStreaming的任务优化

Spark On YARN端参数配置和优化

Spark集群监控和参数调优

Spark集群内存监控和JVM GC调优

 

5.Spark项目大纲

5.1游戏运营数据分析平台

 

课程大纲

项目

模块

具体内容

涉及技术

大数据Spark实战项目:

游戏运营平台数据分析系统

数据分析在游戏行业的应用概况

游戏行业现状分析

网络游戏的发展现状和技术架构

游戏运营与数据分析的关系

大数据在游戏领域的应用

数据分析的重要价值和意义

大数据技术为游戏运营提供数据支持的方式和手段

大数据个性化分析玩家行为的常用技术和算法

项目背景

项目背景介绍

游戏运营平台建设的必要性分析

游戏引擎介绍

游戏引擎的演示和试玩

项目业务流程梳理

游戏运营平台业务流程详解

项目技术架构分析

游戏运营平台技术架构设计分析

游戏分析指标

游戏运营平台重要指标介绍

日志采集

日志采集方案设计分析

日志格式

日志格式详解

数据采集

游戏网站页面JS埋点脚本

JS埋点脚本的编写和Nginx的配置

Flume的高级使用

自定义Source和Interceptor

Kafka消息队列的使用

Kafka集群搭建和使用、Flume整合Kafka

Elasticsearch和Logstash的安装和使用

Logstash整合Kafka和Elasticsearch

离线业务

游戏玩家渠道来源分析

使用Spark Core和DataSet分析玩家的行为。熟练使用RDD和DataSet

游戏玩家留存分析

游戏活跃玩家分析

游戏玩家区域分析

游戏玩家等级分析

游戏玩家在线时长分析

游戏玩家充值可消费分析

实时业务

玩家实时充值情况

使用SparkStreaming消费Kakfa中的玩家实时数据,实时统计玩家的充值消费行为,监控使用外挂的非法玩家。

玩家充值成功率实时统计

玩家外挂实时排查

数据可视化

JavaEE三大框架环境搭建

(SpringMVC、Spring、Mybatis)搭建数据管理平台、使用Echarts实行数据可视化。

Echarts报表的使用

 

课程特色

1.该项目中使用了FlumeKafkaSpark CoreSpark SteamingElasticsearchRedisEcharts等前沿技术,将前面学到的知识点应用于项目实战,从而达到融会贯通的目的。

2.该项目是一个游戏数据分析项目,但其中的指标和业务流程与社交平台、App应用、门户网站的后台数据分析大同小异,通过该项目完全可以达到触类旁通的目的,完全可以驾驭其他类似的项目!

 

项目部分效果图

项目实战代码片段截图:

 

 

可视化效果展示:

 


 

 

 

 



 

5.2精准广告推送DMP平台

项目

模块

具体内容

涉及技术

大数据Spark实战项目:

精准广告推送系统

DMP平台

广告行业现状

广告行业现状分析

传统广告和互联网广告投放优劣PK

广告行业知识介绍

互联网广告的程序化采买概念

DSP业务需求详解

SSP详解

AD Exchange详解

RTB实时竞价详解

DSP平台详解

DMP平台详解

项目背景

项目背景介绍

DMP平台建设的必要性分析

项目业务流程梳理

DMP业务流程详解

项目技术架构分析

DMP技术架构设计分析

日志采集

日志采集方案设计分析

日志格式

日志格式详解

项目数据采集

Flume自定义插件详解

Flume自定义插件开发流程详解及实际场景应用;
source、channel、sink的使用详解及实战经验;
Flume HDFS sink深入剖析及实战经验;
数据存储目录结构设计;

Flume组件使用详解

Flume采集日志到HDFS

日志存储目录设计

数据存储技术选型

parquet选型

Paruqet存储原理详解

Parquet优势分析

Parquet存储优点详解

Parquet实战

日志文件转Parquet文件实战

离线业务

日志数据量分布统计

Spark SQL实战

广告投放效果地域分析

Spark Transformations各算子在各业务模型中的实战应用;
Spark Action的实战应用最佳实践经验;
Spark SQL在项目数据分析业务场景中的各类复杂应用,如
如参与竞价数、竞价成功数、竞价成功率、ECPC、ECPM等。

广告投放效果渠道分析

广告投放效果终端分析

广告投放效果媒体分析

实时业务

广告日志到Kafka

使用Spark Streaming结合Kafka对业务指标进行实时统计分析,并将计算的结果数据存储到Redis中
Kafka分区调优应用;
Kafka整合Spark Streaming的数据可靠性优化实战;
Kafka整合Spark Streaming的吞吐量协调优化实战;
Spark Streaming在复杂业务模型下的逻辑开发实战;
Spark Streaming线上环境各类复杂异常处理经验;
Spark Streaming线上环境各类监控、JVM优化经验

媒体数据实时分析

渠道数据实时分析

用户画像

标签体系建设

定制一套标签体系

用户上下文标签

使用Spark Transformations、Action、Broadcast及外部爬虫抓到的网络数据进行处理分析将数据标签化

统一用户识别

使用Spark GraphX算法,对数据进行分析处理,识别出同一用户跨多个设备的问题

基于地理位置的广告投放

使用GEOHASH算法结合HBASE解决用户的地理位置识别问题

用户数据标签聚合

使用Spark Transformations、Action将上下文标签数据和统一用户数据进行合并

HBase存储用户标签

将合并的用户标签数据存储到Hbase中,并根据日志动态扩列

用户标签数据衰减

将Hbase中的标签数据按照日期自动衰减,形成当天最新的标签

数据可视化

ElasticSearch

使用Echarts、ELK将Hbase中的数据做可视化的web平台;
Echarts实际应用实战技能;
ELK实际应用实战技能;

 

Echarts

标签可视化平台建设

课程特色

1、最火爆广告行业数据分析场景,结合最火爆大数据技术体系SPARK,完整重现基于SPARK体系的大数据广告数据挖掘分析系统;

2、本项目课程涵盖数据处理全流程,综合性超强

3、本项目课程全方位立体呈现高吞吐量情境下的数据采集、数据预处理、高并发大吞吐量实时流式处理、离线批量处理、数据仓库存储优化、海量分布式消息系统等前沿高端技术;

4、本项目课程全方位真实还原广告行业数据分析模型、地理位置信息处理、广告行业用户画像标签体系、广告行业用户画像设计思想;

5、学好本项目课程,搞定spark开发工程师岗位,所向披靡,志在必得!!!

 

项目部分效果图

项目实战代码片段截图:


标签统计可视化展示:





5.3 移动商城业务支撑系统_实时充值数据监测统计平台

项目

模块

主讲内容

技术要点

 

项目背景介绍

实时充值监控平台项目背景详解

充值离线统计及实时统计分析

实时充值数据监控统计平台

需求分析详解

业务概况指标详解

对项目中各个业务指标进行实战前详解;

切身投入,参与项目,熟悉项目在企业开发中具体的细节及开发流程;

各省充值数据分析详解

充值业务时长分析

充值机构排名统计

充值数据分析

项目架构设计

日志采集

Flume日志采集Agent的

source、channel、sink的使用详解及实战经验;

Kafka消息队列设计

Kafka消息队列实战;

Kafka的broker配置、producter配置、consumer配置、Topic详解及实战;

Kakfa Low-Level API;

Kakfa Hight-Level API;

Zookeeper详解及实战;

Spark Streaming业务处理

Spark streaming的DStreams使用详解;

Input DStreams and Receivers详解及实战;

Transformations on DStreams详解及实战;

Output Operations on DStreams详解及实战;

DataFrame and SQL Operations详解及实战;

Checkpointing详解及实战;

存储选型

Redis存储实时计算结果数据

Redis使用详解及实战;

项目业务实战

实时概况:充值订单量

Spark Streaming整合Kafka实战,通过案例需求对Spark Streaming中的API进行综合性的案例演练;

使用Spark Streaming结合Kafka对业务指标进行实时统计分析,并将计算的结果数据存储到Redis中

Kafka分区调优应用;

Kafka整合Spark Streaming的数据可靠性优化实战;

Kafka整合Spark Streaming的吞吐量协调优化实战;

Spark Streaming在复杂业务模型下的逻辑开发实战;

Spark Streaming线上环境各类复杂异常处理经验;

Spark Streaming线上环境各类监控、JVM优化经验;

ElasticSearch+Kibana快速构建报表详解及实战;

Echarts详解及实战,将统计结果通过图表的方式做动态展示;

实时概况:充值金额

实时概况:充值成功率

实时概况:充值平均时长

省份实时:充值订单量TOP10

省份实时:业务失败TOP5

省份实时:业务平均时长TOP10

实时充值笔数和金额统计

充值机构实时分布排名

 

项目成果总结

项目成果汇报展示

该阶段主要由学员汇报所做项目结果,展示分享;

总结在Spark Streaming开发过程中遇到的问题;

总结Spark Streaming实战过程问题解决方案;

项目问题总结

项目难点总结

课程特色

1.实时充值数据监控统计平台项目实战性很强,主要针对实时流式计算领域实战应用;

2.Spark Streaming流式计算框架目前在各大互联网企业炙手可热,该项目案例通过实战的方式,让每一位学员对Spark Streaming实时计算框架不在懵逼,成为实时计算领域一把好手,让高薪触手可及。

3.实时充值数据监控统计平台为真实项目需求,且项目中还是涉及了当前非常火爆的ElasticSeach+Kibana框架,毕业后可无障碍入职。

4.Kafka数据偏移量维护的痛点问题也会涉及,加入我们绝对让你不虚此行。人生苦短,我在小牛等你!

 

项目部分效果图

 





 了解更多详情,请扫微信二维码:


 

 

原创粉丝点击