Flink KeyBy 字段
Flink KeyBy fields
我正在尝试对给定字段使用 keyby 函数,但是,IntelliJ 告诉我这个选项已被弃用。
// map each job event to a 2-tuple
DataStream<Tuple2<Long, Long>> mappedEvents = events.map(new AppendOneMapper()).slotSharingGroup("2");
// group the stream of tuples by jobId
KeyedStream<Tuple2<Long, Long>, Tuple> keyedEvents = mappedEvents.keyBy(0);
我将如何使用新方法正确执行此操作?
带整数或字符串的 KeyBy 已弃用。
来自文档:“已弃用。使用 keyBy(KeySelector)”。
org.apache.flink.api.java.functions
Interface KeySelector<IN,KEY>
Type Parameters:
IN - Type of objects to extract the key from.
KEY - Type of key.
KeySelector是一个函数式接口,所以你可以直接插入lambda表达式。
替换
.keyBy(key)
有
.keyBy(event -> event.getKey())
我正在尝试对给定字段使用 keyby 函数,但是,IntelliJ 告诉我这个选项已被弃用。
// map each job event to a 2-tuple
DataStream<Tuple2<Long, Long>> mappedEvents = events.map(new AppendOneMapper()).slotSharingGroup("2");
// group the stream of tuples by jobId
KeyedStream<Tuple2<Long, Long>, Tuple> keyedEvents = mappedEvents.keyBy(0);
我将如何使用新方法正确执行此操作?
带整数或字符串的 KeyBy 已弃用。 来自文档:“已弃用。使用 keyBy(KeySelector)”。
org.apache.flink.api.java.functions
Interface KeySelector<IN,KEY>
Type Parameters:
IN - Type of objects to extract the key from.
KEY - Type of key.
KeySelector是一个函数式接口,所以你可以直接插入lambda表达式。
替换
.keyBy(key)
有
.keyBy(event -> event.getKey())