我们在写flink程序的时候,我们会用到元祖(Tuple)当上游算子用到Tuple时,下游用keyby(tuple->tuple.f0)就会报如下错误:
解决办法:如下图必须用匿名内部类不能用lambda方法,因为不能为自动类型提取提供足够的信息。
.keyBy(new KeySelector<Tuple2<Tuple8<String,String,String,String,String,String,String,String>,String>, Tuple8<String,String,String,String,String,String,String,String>>() {
@Override
public Tuple8<String, String, String, String, String, String, String, String> getKey(Tuple2<Tuple8<String, String, String, String, String, String, String, String>, String> tuple) throws Exception {
return tuple.f0;
}
})