摘要: 用来将两个dataStream组装成一个ConnectedStreams而且这个connectedStream的组成结构就是保留原有的dataStream的结构体;这样我们就可以把不同的数据组装成同一个结构 val env = StreamExecutionEnvironment.getExecutionEnvironment env.setParallelism(1) val src: Dat... 阅读全文
posted @ 2018-05-21 20:12 niutao 阅读(1406) 评论(0) 推荐(0) 编辑
摘要: 和window的操作类似,只不过操作更加灵活,具体的操作需要在匿名内部类的方法中实现;当有比较复杂的需求时候,可以使用; 注意,例子中使用的是window,所以对应的匿名内部类是:WindowFunction 如果使用的是windowAll,则需要使用的内部类是:AllWindowFunction 阅读全文
posted @ 2018-05-21 20:11 niutao 阅读(691) 评论(0) 推荐(0) 编辑
摘要: EventTime 1.要求消息本身就应该携带 EventTime 2.时间对应关系如下 需求: EventTime 3 数据: 1527911155000,boos1,pc1,100.0 1527911156000,boos2,pc1,200.0 1527911157000,boos1,pc1,3 阅读全文
posted @ 2018-05-21 20:09 niutao 阅读(4645) 评论(0) 推荐(0) 编辑
摘要: 在讲解windows的众多操作之前,需要讲解一个概念: 源源不断的数据流是无法进行统计工作的,因为数据流没有边界,就无法统计到底有多少数据经过了这个流。也无法统计数据流中的最大值,最小值,平均值,累加值等信息。 如果在数据流上,截取固定大小的一部分,这部分是可以进行统计的。 截取方式主要有两种, 关 阅读全文
posted @ 2018-05-21 19:50 niutao 阅读(277) 评论(0) 推荐(0) 编辑
摘要: 逻辑上将一个流分成不相交的分区,每个分区包含相同键的元素。在内部,这是通过散列分区来实现的 阅读全文
posted @ 2018-05-21 19:47 niutao 阅读(7721) 评论(1) 推荐(1) 编辑