Having picked OSCAR as the software for the EMR experiment, I set out to find suitable computer hardware to install a trial version of the software on. My plan was to set something up initially as proof-of-concept and give the software a test run before making a commitment.
As an overview, a few pieces of hardware are needed to make an EMR work. There needs to be a server computer that runs the software, a client computer that allows the user to access the software, and network connections in between them. Other accessories, like battery backup, seem not to be essential, but are very important – these will be discussed in a later post. Today we’ll take a look at the server hardware.
A perusal of the OSCAR user’s manual (available online) suggested that for a single-person clinic, a typical $500 desktop PC would likely be sufficient. The OSCAR service providers seem to routinely provide Mac Mini computers (or something comparable) for about $1000. I did find an anecdote on the PEI OSCAR blog that it would be possible to set up OSCAR on an old user-grade PC computer (see the link for an excellent breakdown of the potential costs involved in setting up OSCAR). The idea is to use a computer that is obsolete for most people’s purposes, but still working. It seems that people do this all the time to run web servers for online games or serving up webpages – why not use it for OSCAR, browser-based EMR?
In my experience with OSCAR I have yet to see any source of information that compares performance of the software running on different server systems, so there is no way to know for sure (at least as far as I know) how little one can get away with in terms of buying hardware. I’ll provide my experience here in case it helps anyone else making a hardware decision.
I ultimately decided to use rack server hardware for creating an OSCAR server. I was able to find a first-generation IBM x3650 rack server on Kijiji for $250. It has an Intel Xeon 3.0 GHz dual-core processor, 4GB of RAM, 8 x 73 GB hot-swappable hard drives, a hardware RAID controller, dual gigabit ethernet adapters, and dual hot-swappable power supplies. This was surely hot stuff in 2004, but by today’s standards, it is pretty dated (when a pretty basic desktop computer comes with a 1 TB hard drive). It was a good computer to experiment on, and so far, it my experience, it has enough power to do the job.
From an efficiency perspective and what I managed to teach myself about computers, even an old rack server would have enough processing power to handle requests from one or two users, with room to upgrade to multiple users if needed – after all, this is what they were designed to do. There is minimal requirement for a graphics processor, so the server, which doesn’t have a fancy video card, does fine here and one would not be paying for extra hardware that won’t get used. Theoretically, the server features like multiple hard drives arranged in RAID speed up the time needed to access data; for an application like OSCAR I’m not sure it really matters. What I can say from my experiences is that this machine was fine for me – one physician with a medical office assistant.
From a maintenance and reliability perspective the server does have advantages over a converted PC. For one, there is a layer of redundancy. Parts that commonly fail (fans, hard drives, power supplies) come in pairs. Lightpath diagnostics allow one to tell at a glance if one of these components has failed, and replace it, which is designed to be easy, to the point that many of the vulnerable parts are hot-swappable (they can be changed out while the computer is still running). By setting up multiple hard drives configured in RAID (Redundant Array of Independent Disks), the drives can be set up so that the contents of one are mirrored onto another so that if one hard drive fails, the data are still safe on another disk and the array can be restored by replacing the failed drive.
In contrast, the Mac Mini, which seems to be somewhat of a current standard in OSCAR computers for solo practitioners, is almost not user-serviceable at all. If something breaks, if one is able to repair it at all, it is a complicated job that involves delicate dismantling, and the more likely outcome is that it will need to be taken in to Apple. For mission-critical equipment, it seems important to be able to fix it quickly. Server hardware is also (at least theoretically) built to run 24/7, designed with reliability in mind, which may not apply to many inexpensive desktop computers.
Is server-grade hardware overkill, though? For Internet retail sites where every minute of up-time translates into a dollar value in sales, hot-swappable components are probably valuable. Can an outpatient psychiatrist function for a day without a medical record? Maybe. My experience says that after a while, it starts to become mission-critical – how do you manage if you don’t even know who is scheduled to come for the day?
From an operating cost perspective, power consumption is a consideration – I have not done the measurements myself, but from my research, an old rack server like the x3650 runs hot, has a lot of fans, and uses considerably more electricity than a little, efficient Mac Mini. In my building electricity is included with rent, so the cost to me is no higher than for any other computer I may have chosen to use, but the environmental costs are probably higher than necessary. If a component fails in a rack server and needs to be replaced, it is cheaper than buying a new computer, as might need to be done with a Mac Mini. (Although at $250, one could just buy another rack server!)
There are two other important things I learned about related to rack-mounted servers that are easy to know from experience but not from reading the Internet. The most important point is noise – this is not a widely advertised property of rack server hardware but it is an important consideration. I was told that a 2U server like the x3650 is much quieter than a 1U model because it is larger, and can therefore accommodate larger (and therefore quieter) fans. However, it is still loud – compared to a desktop computer, the x3650 sounds like a jet turbine when it fires up and becomes only slightly quieter afterwards. I would not recommend putting one of these machines where one works – especially if one intends to talk to people. Clearly these machines are designed to be housed in separate, purpose-built rooms.
Another important observation is the size of a rack-mounted computer. It doesn’t look imposing from the front, but the real bulk is in the depth. It is much deeper than one might suspect from looking at a picture – about 3 1/2 feet. Mounting it inside of a rack cabinet further increases the required amount of floor space. This is not a setup that one can easily tuck away inside a closet or under a desk. While the server does not need to be mounted in a rack – it could be left on the floor or standing up on its side (using a special mounting kit), there are some reasons for doing so. Mounting inside a lockable cabinet provides some security features, preventing unauthorized physical access to the machine. If the machine will be anywhere near people, a sound-insulated cabinet can reduce some of the noise. It also just looks better. The problem with server racks is that they are either monstrous (full-sized 42U racks can be found retired from data centres and cheap on Kijiji, but they might be 7 feet tall and need two people to move) or expensive (under-desk models are in the $500+ range). What I didn’t realize before I bought the computer is that many of inexpensive 6 or 8 U server racks available from the neighbourhood computer store are actually not deep enough to mount a rack server computer. Rather, they must be designed with other hardware in mind, such as audio equipment. I ended up buying an XRackPro2 – not cheap, but it provides some sound insulation and it is lockable. At the end of the day, though, it is still louder than I would like, and it is not easily movable.
In conclusion, my experience with the rack server was a bit like owning a vintage motorcycle. It’s fun to set up and tinker with (and blog about), and the design appeals to a certain manly sensibility, but after the initial thrill wears off, one wants to trade it in for something quieter and more energy-efficient. If I were to do it again (set up a cost-effective EMR that could be done with minimal expense for someone without external funding), I might elect to use second-hand rack server hardware, but only if there was a dedicated, separate space to set it up in, and it was likely to see heavy use where reliability is an important factor. Otherwise, the benefits in redundancy and ease of servicing are outweighed by the noise, size, and power consumption. Also, it is difficult and/or expensive to obtain a proper server rack and move it into place.
A Mac Mini is still attractive because of the size and power efficiency factor, but it loses points in my eyes for not being easily user-serviceable, and it costs twice as much.
I might actually opt for a quiet $500 desktop computer in a tower configuration that can be tucked away under a desk or inside a closet. The priorities to focus on would be a fast multi-core CPU, redundant hard drives if possible, and ignoring the video or multimedia cards. In terms of specifications, I’m not sure how little one can get away with in terms of the CPU, but with respect to hard drive space I can say that notes in OSCAR take up very little space. After 5 months of use my notes take up about 5 MB. Scanned documents are another story, accumulating at a rate of perhaps 10-20 MB per month. At that rate it would take a years to even add up to one GB but it is also important to note that OSCAR stores daily backup files for a month, so multiply however much space you think you will use by a factor of 30. If there are a extensive paper charts to be scanned, they will also require memory. My rough estimate based on my experience would be about 10 MB per patient’s paper chart, per year. Hard drive space is cheap these days, so 1 TB should be more than enough space, and affordable, if it’s too hard to do the math.
Next up – how does one go from computer-in-hand to running server? The server needs to be configured, of course.