package My::AllReduceMapper; use Moose; with 'Hadoop::AllReduceMapper'; use List::Util qw(sum); has 'keys' => (is => 'rw', isa => 'ArrayRef[Num]', default => sub { [] }); sub map { my ($self, $key, $value, $context) = @_; push @{$self->keys}, $key; } sub cooperate { my ($self, $context, $writeResults) = @_; # INSERT CODE HERE } package main; use Hadoop::Runner; my $runner = Hadoop::Runner->new( mapper => My::AllReduceMapper->new(), input_format => 'KeyValueTextInputFormat'); $runner->run();