问题描述:
在pairRDD 进行sortByKey时报错,找到130行,回去看需要sort的RDD ,发现里面涉及的broadcast
如下图:
点进去 130行
原来的代码写法:
Map<String, Model> SPUMap = SPUProductFormateRdd.collectAsMap();
Broadcast<Map<String, Model>> bcSPUMap = sc.broadcast(SPUMap);
//FIX 在本地执行的时候正常,在服务器上执行的时候就会报java.lang.UnsupportedOperationException
参考内容
最后修改为:
Map SPUMap = new HashMap();
SPUMap.putAll(SPUProductFormateRdd.collectAsMap());
// Map<String, Model> SPUMap = SPUProductFormateRdd.collectAsMap();
Broadcast<Map<String, Model>> bcSPUMap = sc.broadcast(SPUMap);
程序正常执行