Для следующих кодов, использующих API-интерфейс spark
java
:
JavaPairRDD<TypeOne,Long> pairs = originalRows.flatMapToPair(new PairFlatMapFunction<OriginalType,TypeOne,Long>()
он принимает RDD
именем OriginalType
и сопоставляет его с парами с типом TypeOne
.
Мне интересно, можно ли взять OriginalType
и на этапе карты отобразить его на два типа ключей? Как TypeOne
и TypeTwo
. Или я должен использовать два шага карты, чтобы понять это...
Вы можете создать интерфейс или общий класс, который оба типа будут реализовывать/наследовать и использовать это вместо определенного типа.
public interface IType { }
public class TypeOne implements IType { }
public class TypeTwo implements IType { }
JavaPairRDD<IType,Long> pairs = originalRows.flatMapToPair(new PairFlatMapFunction<OriginalType,IType,Long>()