Automated applications through task scheduling
The Problem: A Drag On The Database
Our client, a large insurance carrier, came to us with complaints about lags in their database causing efficiency issues. Their problem was that insurance carriers need massive databases to store information on all of their policies and employees. With the databases constantly being viewed and updated, temporary files tend to accumulate — something which isn’t a problem when it happens on your average personal computer, but which can quickly create dramatic lags in performance on a database of this size. For your average IT employee, sorting through all of those files to do the necessary pruning is a major task that requires constant maintenance and many hours of work, and can interrupt productivity if it must be scheduled during the work day.
The Analysis: Timing Is Everything
We realized that the task of pruning the database could be automated in order to save valuable time and productivity. A software program could be created to regularly go through the database and perform routine maintenance, ideally at night in order to not disrupt company business.
The challenge was to create a program that was intelligent enough to detect anomalies in the system and to know which files were temporary and needed to be deleted. The program couldn’t be big enough to contribute to the lag itself, but it would have to perform a variety of maintenance tasks. It would also defeat the purpose if the program was especially difficult to implement or required a lot of attention and maintenance, since the goal was to conserve employee time.
The Solution: Right On Schedule
We realized that the kind of structure our clients needed was a simple task scheduler program, which would then schedule and automatically deploy smaller maintenance programs at regular times throughout the week, month or year. As it turns out, there’s an open-source schedule program called Quartz designed to do just that, and it can be customized to schedule as many programs as needed, as often as desired. So we created a large number of small programs to deploy through Quartz, including programs for archiving, data warehousing, and issue reporting.
Now our client has an automated schedule of programs that use non-business hours to sort through data, archive and clean up the accumulated files, and let their IT department know if anything goes wrong. The system runs quickly, because it isn’t being bogged down with useless data, and if there ever is a problem, we will be quickly made aware of it and be able to address it efficiently — no need to constantly check on the software to make sure it’s working.
