File tree Expand file tree Collapse file tree
src/main/scala/com/javaedge/scala Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1- # 0 Flink 从入门到实战
2- #### 新一代风靡全球的大数据计算引擎
1+ # 0 Flink 从入门到实战 - Scala版本
32
4- #### 阿里巴巴等众多公司引领的Flink 风潮,让会Flink 的人才供不应求,抢手之极
5-
6- # 1 Java/Scala 双语言教程,为你带来不一样的Flink教程
7- Flink 正处于升温期,抢先一步掌握它,你就会在大数据行业抢先崛起
8-
9- ## 1.1 Flink零基础 带你从入门到实战
10- 不怕你毫无Flink基础,体系化的教程内容
11- 让你循序渐进,入门企业级开发
12-
13- ## 1.2 紧密结合Flink官网内容讲解
14- 拒绝二手货,紧密结合官网,让你学到原汁原味的一手内容
15-
16- ## 1.3 带着行业经验讲解技术知识
17- 真正从实践角度教你能应用于实践的知识
18-
19- ## 1.4 Scala/Java双语言教学讲解
20- 采用双语言讲解Flink核心知识,让你学习更加轻松
21-
22- # 2 Java/Scala双语言实操实练,带你全面掌握Flink核心知识
3+ # 1 核心知识点
234![ ] ( https://upload-images.jianshu.io/upload_images/16782311-dc4156dc0a34d557.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240 )
245## 编程模型及核心概念
256Flink中的DataSet & DataStream
@@ -98,12 +79,11 @@ Flink常见的监控方式
9879
9980常见的Flink调优策略
10081
101- # 3 实战项目:基于Flink的互联网直播平台日志分析
102- #### 掌握了Flink 核心知识后,实战自然必不可少,逐行代码带你实战
82+ # 2 实战项目:基于Flink的互联网直播平台日志分析
10383#### 互联网直播平台日志分析(以Scala语言开发)
10484![ ] ( https://upload-images.jianshu.io/upload_images/16782311-ff3bd3a8d89089ba.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240 )
10585
106- # 4 Flink的火爆不是随便说说, 以下知名公司都在使用Flink
86+ # 3 以下知名公司都在使用Flink
10787![ ] ( https://upload-images.jianshu.io/upload_images/16782311-9447a7c96178832b.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240 )
10888
10989# X 交流学习
@@ -114,6 +94,4 @@ Flink常见的监控方式
11494
11595## [ 博客] ( http://www.shishusheng.com )
11696
117- ![ ] ( https://upload-images.jianshu.io/upload_images/16782311-b4ec7ff8790e19a4.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240 )
118-
11997## [ Github] ( https://github.com/Wasabi1234 )
Original file line number Diff line number Diff line change 1- package com .javaedge .scala .chapter2
1+ package com .javaedge .scala .chapter1
22
33import org .apache .flink .api .scala .ExecutionEnvironment
44
@@ -7,7 +7,7 @@ import org.apache.flink.api.scala.ExecutionEnvironment
77 * @date 2019-05-04
88 *
99 */
10- object BatchWCScalaApp {
10+ object BatchWCApp {
1111
1212 def main (args : Array [String ]): Unit = {
1313
@@ -17,7 +17,6 @@ object BatchWCScalaApp {
1717
1818 val text = env.readTextFile(input)
1919
20- // text.print()
2120 // 引入隐式转换
2221 import org .apache .flink .api .scala ._
2322 text.flatMap (_.toLowerCase.split(" \t " ))
Original file line number Diff line number Diff line change 1- package com .javaedge .scala .chapter2
1+ package com .javaedge .scala .chapter1
22
33import org .apache .flink .streaming .api .scala .StreamExecutionEnvironment
44import org .apache .flink .streaming .api .windowing .time .Time
@@ -8,26 +8,29 @@ import org.apache.flink.streaming.api.windowing.time.Time
88 * @date 2019-05-04
99 *
1010 */
11- object StreamingWCScalaApp {
11+ object StreamingWCApp {
1212
1313 def main (args : Array [String ]) {
1414
1515 val env = StreamExecutionEnvironment .getExecutionEnvironment
1616
17+ StreamExecutionEnvironment .createLocalEnvironment()
18+
1719 // 引入隐式转换
1820 import org .apache .flink .api .scala ._
1921
20- val text = env.socketTextStream(" localhost" , 9999 )
22+ val text = env.socketTextStream(" localhost" , 9999 )
2123
2224 text.flatMap(_.split(" ," ))
2325 .map((_, 1 ))
2426 .keyBy(0 )
25- .timeWindow(Time .seconds(5 ))
26- .sum(1 )
27- .print()
28- .setParallelism(1 )
27+ .timeWindow(Time .seconds(5 ))
28+ .sum(1 )
29+ .print()
30+ .setParallelism(1 )
2931
3032 env.execute(" StreamingWCScalaApp" )
3133 }
3234}
3335
36+
Original file line number Diff line number Diff line change 1+ package com .javaedge .scala .chapter2
2+
3+ import org .apache .flink .streaming .api .scala .StreamExecutionEnvironment
4+ import org .apache .flink .streaming .api .windowing .time .Time
5+
6+ /**
7+ * @author JavaEdge
8+ * @date 2019-05-04
9+ *
10+ */
11+ object StreamingWCScalaApp {
12+
13+ def main (args : Array [String ]) {
14+
15+ val env = StreamExecutionEnvironment .getExecutionEnvironment
16+
17+ StreamExecutionEnvironment .createLocalEnvironment()
18+
19+ // 引入隐式转换
20+ import org .apache .flink .api .scala ._
21+
22+ val text = env.socketTextStream(" localhost" , 9999 )
23+
24+ text.flatMap(_.split(" ," ))
25+ .map(x => WC (x.toLowerCase(),1 )) // WC(word,count)
26+ .keyBy(_.word)
27+ .timeWindow(Time .seconds(5 ))
28+ .sum(" count" )
29+ .print()
30+ .setParallelism(1 )
31+
32+ env.execute(" StreamingWCApp" )
33+ }
34+
35+ case class WC (word : String , count : Int )
36+ }
37+
38+
You can’t perform that action at this time.
0 commit comments