如何在Apache Flink中对数据集进行排序?

Sag*_*gar 5 apache-flink

我有一个DataSet形式的元组数据集>.我希望在字段String上对"整个"数据集进行排序,然后只获取文件中的Long值.Flink确实提供了排序分区,但这对我没有帮助,因为我需要完全对数据集进行排序.

Fab*_*ske 11

如果将并行度设置为:还可以使用sortPartition()对整数进行排序:DataSet1

DataSet<Tuple2<String, Long>> data = ...
DataSet<Tuple2<String, Long>> sorted = data
  .sortPartition(0, Order.ASCENDING).setParallelism(1); // sort in one partition
DataSet<Long> longs = sorted.map(new LongExtractor());  // map to extract long
Run Code Online (Sandbox Code Playgroud)