Batch scheduling accommodates a group of tasks with the start/end time constraints to maximize the revenue from scheduling tasks over a number of servers, which has been extensively studied in the context of job-machine scheduling. In optical networks, batch scheduling refers to the process of scheduling a group of data units (i.e., the jobs) competing for the same set of wavelength channels (i.e., the machines). Classical job-machine scheduling studies have considered both the case of a pure-loss system, and the case with waiting rooms (i.e., buffers), which are generally in the form of random access memory (RAM). In optical networks, the buffering is achieved by feeding the optical signal into a fixed length of fiber, namely, a fiber delay line (FDL), since optical RAM is not yet available. The unique feature of the discrete and predefined buffering time in fact instantiates a new type of problem, namely, job-machine scheduling with discrete-time buffers. In this work, we comprehensively study batch scheduling in optical networks. We show that batch scheduling with and without FDLs corresponds to two different instances of the job-machine scheduling problem. While proving their NP-completeness, we mathematically model both cases using integer linear programming formulations to provide an optimal scheduling. Given the timeliness request for on-line batch scheduling and the dramatic problem size in optical networks, we also propose polynomial-time heuristic algorithms, which are shown to be near optimal in our simulations.