DataSet<Tuple2<Tuple2<Integer, Integer>, String>> ds = CollectionDataSets.getGroupSortedNestedTupleDataSet(env);
// f0.f0 is first integer
DataSet<String> reduceDs = ds.groupBy("f1").sortGroup("f0.f0", Order.DESCENDING).sortGroup("f0.f1", Order.DESCENDING).reduceGroup(new NestedTupleReducer());
reduceDs.writeAsText(resultPath);
env.execute();
// return expected result
return "a--(2,1)-(1,3)-(1,2)-\n" +
"b--(2,2)-\n"+
"c--(4,9)-(3,6)-(3,3)-\n";