Java+Spark 实现 flatMapToPair 的lambda函数时遇到的问题及解决方法
今天使用Java+Spark 实现 flatMapToPair 的lambda函数,代码如下:
JavaPairRDD<String, String> extractSessionsRDD = time2SessionsRDD.flatMapToPair(tuple->{ List<Tuple2<String, String>> extractSessionids = new ArrayList<>(); // ... return extractSessionids; });
结果报错:
no instance(s) of type variable(s) K2,V2 so that List<Tuple2<String,String>> conforms to Iterator<Tuple2<String,String>>
上网查了下原因,是因为spark 2.0以上要求返回一个Iterator的实例。
于是修改代码如下(标红),错误就消失了。
JavaPairRDD<String, String> extractSessionsRDD = time2SessionsRDD.flatMapToPair(tuple->{
List<Tuple2<String, String>> extractSessionids = new ArrayList<>();
// ...
return extractSessionids.iterator();
});
记录一下,备忘。
参考:http://blog.csdn.net/t1dmzks/article/details/70234272
技术服务业务
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· dotnet 源代码生成器分析器入门
· ASP.NET Core 模型验证消息的本地化新姿势
· 对象命名为何需要避免'-er'和'-or'后缀
· SQL Server如何跟踪自动统计信息更新?
· AI与.NET技术实操系列:使用Catalyst进行自然语言处理
· dotnet 源代码生成器分析器入门
· 官方的 MCP C# SDK:csharp-sdk
· 一款 .NET 开源、功能强大的远程连接管理工具,支持 RDP、VNC、SSH 等多种主流协议!
· 一步一步教你部署ktransformers,大内存单显卡用上Deepseek-R1
· 一次Java后端服务间歇性响应慢的问题排查记录