>the question remains, how to return, say, last 10 records from Reducer. >I need to know when last record is processed.
how about storing last 10 records seen so far. each time you see another record discard the old one and keep fresh copy of last seen 10 records. Now to know the end, how about storing OutputCollector and use it in close() call to dump the stored 10 records. Might be a very bad solution, but could might just work.