1. A method for scheduling a plurality of jobs sharing input, wherein the method comprises: partitioning one or more input datasets into multiple subcomponents; analyzing a plurality of jobs to determine which of the plurality of jobs require scanning of one or more common subcomponents of the one or more input datasets; and scheduling a plurality of jobs that require scanning of one or more common subcomponents of the one or more input datasets, facilitating a single scanning of the one or more common subcomponents to be used as input by each of the plurality of jobs, wherein said scheduling comprises scheduling one or more of the plurality of jobs to share as input data a previously scanned common subcomponent scheduled for a previously scheduled job.