[ 
https://issues.apache.org/jira/browse/NUTCH-1538?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13616621#comment-13616621
 ] 

Roland von Herget commented on NUTCH-1538:
------------------------------------------

Hi Lufeng,

I'm not sure if I understood your point correctly, but if you mean that some 
3rd party plugin may use these fields:

1) In a normal workflow it would be like this:
- fetcher startup
- fetcher gets content via http and stores it to DB
- fetcher shutdown
- parser startup
- parser loads content from DB, parses, store parsed data in DB
- parser shutdown

2) In this discussed workflow (original code):
- fetcher startup
- fetcher loads content from DB
- fetcher gets _new_ content via http (overwriting loaded content from DB)
- fetcher runs parser and stores all in DB
- fetcher shutdown

With my patch, we just touch workflow 2) - skipping step 2 "loading content 
from db".
Every field we load in 2)/step 2 should be overwritten by step 3, if not 
workflow 1) can't work.

I know, this is not backed by a complete knowledge of the code, but from a 
logic point of view it makes sense to me ;)
Just my 2 cents.
                
> tuning of loaded fields during fetcherJob start-up
> --------------------------------------------------
>
>                 Key: NUTCH-1538
>                 URL: https://issues.apache.org/jira/browse/NUTCH-1538
>             Project: Nutch
>          Issue Type: Improvement
>          Components: fetcher
>    Affects Versions: 2.1
>         Environment: nutch 2.1 / cassandra 1.2.1 / gora-cassandra 0.2 / 
> gora-core 0.2.1 
> running fetch with parse=true
>            Reporter: Roland von Herget
>         Attachments: NUTCH-1538-FetcherJob-v1.patch
>
>
> Main problem is, nutch is loading nearly every row & column from DB during 
> startup of a fetcherJob when fetcher.parse=true.
> A parserJob needs e.g. the CONTENT field from db, to parse.
> The fetcherJob adds all fields of the parserJob to it's needed fields, if 
> running with fetcher.parse=true. [FetcherJob.getFields()]
> If the nutch configuration saves all fetched data to DB 
> (fetcher.store.content=true) you'll end up loading GBs of unused content 
> during fetcherJob start-up.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to