DataSet<Tuple6<String, Long, String, Integer, Long, Long>> crossDs = ds.cross(ds2) .projectFirst(2, 1) .projectSecond(3) .projectFirst(0) .projectSecond(4,1) .types(String.class, Long.class, String.class, Integer.class, Long.class, Long.class); .projectSecond(3) .projectFirst(2, 1) .projectSecond(4,1) .projectFirst(0) .types(String.class, String.class, Long.class, Long.class, Long.class, Integer.class);