正在回答
3回答
最终解决方案如下:
由于keyBy(0)返回的数据类型为:KeyedStream[(String, Long), Tuple]
所以在apply中的windowfunction中执行泛型的时候需要指定为tuple:.apply(new WindowFunction[Tuple2[String,Long],String,Tuple.......
如果使用keyBy(tup=>tup._1)返回的数据类型为:KeyedStream[(String, Long), K]
此时在apply中的windowfunction中执行泛型的时候需要指定为String,因为在keyBy中指定的tup._1的数据类型为String:.apply(new WindowFunction[Tuple2[String,Long],String,String.......
这样就可以了,究其原因是因为keyBy中指定角标和指定keySelector时,返回的数据类型不一致,所以对应的需要修改apply中的泛型参数
两种情况如下图所示
大数据工程师 2024 版
- 参与学习 1151 人
- 提交作业 5960 份
- 解答问题 1144 个
不用Java初级内容充数!不用与大数据岗位无关内容占课时!我们做的就是“精华版”大数据课程
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星