View this Case Study in PDF format
Moscow City Hospital #31 is a modern, 620 bed medical institution providing emergency and in-patient medical services with a staff of over 400. The hospital is equipped with modern medical instruments and computers.
Our hospital information system is one of the key elements of successful patient care. It helps organize and manage patient treatment programs, maintains all medical records, and prepares necessary documents. It isn't just a multi-user database; it maintains information in complex data structures and applies sophisticated analytical processes to maximize the value of the information to the medical staff and management.
In 2008, the hospital was using a medical information system which adequately handled data entry and basic reporting, but lacked analytical capabilities. There were important reports that required more complex analysis and data structures than those currently used, that could not be easily implemented in the Oracle based database system.
Quest for solution
Our IT department was challenged to find a way to solve these problems that could grow with the hospital while maintaining reasonable costs. Oracle's license costs were approximately $15,000 (USD) per server, plus mandatory technical support fees. Worse, some of the necessary capabilities weren't even possible with Oracle. The data processing algorithms require medical data to be stored in denormalized tables, and both read and written to within the frames of single transactions. Oracle prohibits such operations from being done within triggers (which they call “data mutation”), and forces use of asynchronous operations instead.
“Oracle is well-known for its wide functionality”, says Alexander Sedov, CIO of the hospital, “but we found that many regulations, required by Oracle, [make it] not suitable for our task”.
In their search for less expensive, more flexible alternatives, the IT department found Firebird. They realized that Firebird's free, open source licensing would save the hospital tens of thousands of dollars in licensing costs and recurring support fees, if it could do the job.
In Firebird, they found:
- An easy to use and powerful SQL language implementation;
- The ability to directly return stored procedures' execution results as result sets, without having to create additional, temporary database objects;
- Transparent implementation of business logic in triggers, through Firebird ability to read and change inserted/updated records within the same trigger;
- Ability to raise exceptions in triggers and stored procedures to change execution flow and notify users of problems in a friendly manner;
- A powerful "Events" capability that allows the server to notify clients of specific situations from the server side. (This ability is especially essential for this particular case to orchestrate data loading and processing tasks.)
- And of course, Firebird's whole “active tables” concept, which allows its triggers to "mutate data", and provide the necessary control of data changes in operations with denormalized data.
As a bonus, they found that Firebird has a variety of powerful, easy to use third-party tools for database development, with really low prices (especially when compared with the alternatives for Oracle).
The IT department chose Firebird 2.1 as the basis for its new analytical system, which it developed in less than 7 months. The database now contains over 400 tables, and over 600 stored procedures and triggers containing the data processing
logic. It supports approximately 100 concurrent users, who enter and import/export data, generate reports, and perform OLAP processing, without requiring separate transaction and query databases. The database size is over 1.5Gigabytes, growing by about 50 Megabytes per month. Database maintenance is implemented with IBSurgeon’s FBDataGuard tool to ensure minimal outages.
Through this new system and its advanced capabilities, Firebird plays an important role in patient treatment, as well as the traditional administrative activities.
The IT department Moscow City Hospital #31 now plans to build upon their successful experience with Firebird, by implementing a module to manage a central drugstore warehouse and 10 local drugstores in the remote hospital departments. Meanwhile, they'll continue to develop the medical information system, migrating to the new Firebird 2.5 version to provide even better performance and stability.
Alexander Sedov, CIO, Moscow City Hospital #31