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

时间:2017-04-01 11:49:14

标签: apache-flink

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

1 个答案:

答案 0 :(得分:9)

如果将并行度设置为sortPartition(),您还可以使用DataSet对完整的1进行排序:

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