[
https://issues.apache.org/jira/browse/CRUNCH-218?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13682159#comment-13682159
]
Dave Beech commented on CRUNCH-218:
-----------------------------------
Gabriel - true, the ideal solution looks like it incorporates your comments and
Josh's patch. I'd previously asked about your point on the mailing list
(http://mail-archives.apache.org/mod_mbox/incubator-crunch-user/201301.mbox/%3CCAFZSZPvCfGswuVT0PWP%2BF5y8s5-JxRnnMUqYfL_X8eXVo9OD_A%40mail.gmail.com%3E).
The workaround of putting 'pipeline.run()' calls in the right place was fine
for me. It would be great if Crunch could work out when to do this so I could
leave out these explicit calls but it's not that important.
Agree with your comments about stale data. I hadn't considered it because in my
own use-case the input and output directories are date-stamped, so I've either
processed that day's data or I haven't. It would be a useful addition to the
checkpointing feature though.
> Add new Target.WriteMode to skip the write and continue pipeline if an output
> target exists
> -------------------------------------------------------------------------------------------
>
> Key: CRUNCH-218
> URL: https://issues.apache.org/jira/browse/CRUNCH-218
> Project: Crunch
> Issue Type: Improvement
> Components: Core
> Affects Versions: 0.6.0
> Reporter: Dave Beech
> Assignee: Josh Wills
> Priority: Minor
> Attachments: CRUNCH-218b.patch, CRUNCH-218.patch
>
>
> Quite often I write pipelines which persist data to the filesystem midway
> through the process, and then carry on doing further work.
> If this intermediate data is already present, I think it would be good if I
> could set a write mode which skips over this first half of processing. This
> way I'd avoid running jobs unnecessarily and wasting cluster resources
> regenerating data I already have.
> Example:
> PCollection<B> inter =
> pipeline.read(source).parallelDo(something).parallelDo(somethingElse);
> inter.write(At.sequenceFile('output'), WriteMode.SKIP_IF_EXISTS);
> PCollection<C> final = inter.parallelDo(moreWork);
>
--
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