我是Hadoop世界的新手。我想知道InputSampler<K,V>
或InputSampler.Sampler<K,V>
中<K,V>
的类型是什么?这等于从Mapper
出来的键和值?上面的例子互联网上不要用它们。例如,这个链接只是实例化它没有泛型:
InputSampler.Sampler sampler = new InputSampler.RandomSampler(pcnt, numSamples, maxSplits);
是的,在查看代码时,K表示键的类型,V表示值的类型。真正的Writable
类型取决于你想要采样的输入类型,在这个意义上-是的,它类似于你在Mapper
中使用的类型。
RecordReader<K,V> reader = inf.createRecordReader(splits.get(i), samplingContext);
reader.initialize(splits.get(i), samplingContext);
while (reader.nextKeyValue()) {
samples.add(ReflectionUtils.copy(job.getConfiguration(),
reader.getCurrentKey(), null));
}