Hadoop с использованием C++ каналов: как вызвать Mapper.cleanup()
Используя C++ pipe api(1.2.0), как я могу получить вызов в Mapper.cleanup() после фазы map() маппера? В основном для каждого чанка я хочу сохранить свои записи в памяти во время фазы карты, а затем применить некоторую обработку позже.
Любые советы приветствуются, спасибо,
1 ответ
Класс Mapper C++ расширяется Closable
:
class Mapper: public Closable {
public:
virtual void map(MapContext& context) = 0;
};
а также Closable
имеет следующую подпись:
class Closable {
public:
virtual void close() {}
virtual ~Closable() {}
};
Так что (не будучи программистом на C++), я думаю, вам просто нужно написать свою логику в методе с именем close