Я проверял MRUnit
API, поэтому. Если вы хотите добавить пользовательский RecordReader
, я бы предположил, что у вас должен быть пользовательский InputFormat
, поскольку он должен назначить пользовательский RecordReader в метод createRecordReader
пользовательского класса InputFormat
.
Итак, MRUnit
API позволяет назначить пользовательский InputFormat
, а также пользовательский OutputFormat
.
public MapDriver<K1,V1,K2,V2> withOutputFormat(Class<? extends org.apache.hadoop.mapreduce.OutputFormat> outputFormatClass,
Class<? extends org.apache.hadoop.mapreduce.InputFormat> inputFormatClass)
Configure Mapper to output with a real OutputFormat. Set InputFormat to read
output back in for use with run* methods
Parameters:
outputFormatClass -
inputFormatClass -
Returns:
this for fluent style
Исходя из этого, вы можете позвонить mapDriver.withOutFormat(customOutputFormat.class, customInputFormat.class)
. Таким образом, вы можете использовать RecordReader для тестирования.