I want to build a hadoop application which can read words from one file and search in another file.
If the word exists – it has to write to one output file
If the word doesn’t exist – it has to write to another output file
I tried a few examples in hadoop. I have two questions
Two files are approximately 200MB each. Checking every word in another file might cause out of memory. Is there an alternative way of doing this?
How to write data to different files because output of the reduce phase of hadoop writes to only one file. Is it possible to have a filter for reduce phase to write data to different output files?
Thank you.
How I would do it:
You’ll end up with as much reduce-outputs as different <missingsources>, each containing the missing words for the document. You could write out the <missingsource> ONCE at the beginning of ‘reduce’ to mark the files.
(*1) Howto find out the source in map (0.20):