Scheduling Data Transit with Software Tools
Job scheduling software tools allow you to run computer programs automatically. You'll tell the job scheduler what piece of code to run and when to run it—as frequently as you like—and the job scheduler will handle the rest. If you want to automate your integration using scripts to perform the extract, transformation, and/or load steps, job scheduling tools will handle the automation. The major computer operating systems all ship with job scheduling software built-in. Beyond that, there are many job scheduling software applications for sale. We'll present the two tools that ship with the major operating systems here to give you an idea of the automation options at your disposal for free.
Operating System |
Job Scheduler |
Interface |
---|---|---|
Windows | Task Scheduler | Graphic User Interface |
Mac | cron | Command-line interface |
Linux | cron | Command-line interface |
Task Scheduler (Windows)
The Task Scheduler is an application that ships with Windows. You can access it by opening the Start menu and searching for "Task Scheduler." The graphic user interface makes it easy to create, edit, enable/disable, and delete scheduled jobs. To create a new scheduled job—called a "Task"—just specify what should trigger the task (e.g., a schedule like every morning at 8 AM, an event like computer startup, etc.) and what actions the task should perform (e.g., a shell script, etc.).
While Task Scheduler is improved regularly by Microsoft and it can support running an ever greater variety of programs, it is happiest when running Windows native file types and command shell scripts (.bat), so you may need to create shell scripts to run your integration scripts written in whatever language you've chosen.
Cron (Mac and Linux)
The command-line tool cron is a simple but powerful job scheduling application that is delivered with macOS and Linux. While aftermarket graphic user interfaces for cron are available, its native interface is the command line. To create a new scheduled job, just add a line to the list of jobs that cron is to run that includes when the job should run and what it should do.
Cron prefers to run shell scripts, so, depending on the coding language used in your integration scripts, you may have to create shell scripts that run them to use with cron.