I like your style regarding pre-processing into a few large files
with Hadoop. I think I may go that route, unless anyone else has any
brilliant ideas.
- David
On Oct 24, 2007, at 5:29 PM, Ted Dunning wrote:
File open time is an issue if you have lots and lots of little files.
If you are doing this analysis once or a few times, then it isn't
worth
reformatting into a few larger files.
If you are likely to do this analysis dozens of times, then opening
larger
files will probably give you a significant benefit in terms of
runtime.
If the runtime isn't terribly important, then the filename per line
approach
will work fine.
Note that the filename per line approach is a great way to do the
pre-processing into a few large files which will then be analyzed
faster.
On 10/24/07 5:09 PM, "David Balatero" <[EMAIL PROTECTED]>
wrote:
I have a corpus of 300,000 raw HTML files that I want to read in and
parse using Hadoop. What is the best input file format to use in this
case? I want to have access to each page's raw HTML in the mapper, so
I can parse from there.
I was thinking of preprocessing all the files, removing the new
lines, and putting them in a big <key, value> file:
url1, html with stripped new lines
url2, ....
url3, ....
...
urlN, ....
I'd rather not do all this preprocessing, just to wrangle the text
into Hadoop. Any other suggestions? What if I just stored the path to
the HTML file in a <key, value> type
url1, path_to_file1
url2, path_to_file2
...
urlN, path_to_fileN
Then in the mapper, I could read each file in from the DFS on the
fly. Anyone have any other good ideas? I feel like there's some key
function that I'm just stupidly overlooking...
Thanks!
David Balatero