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.