All storage systems have a controller, which is a device with a processor that sends instructions to the disks. Storage controllers differ from vendor to vendor, but generally fit into three types — custom designed, purpose-built, and commodity server-based.
Each type of implementation has advantages and drawbacks. Vendors will highlight the characteristics of what their systems offer. It is up to customers to do the evaluation to determine what system best fits their needs.
These are the key characteristics for each type of storage controller:
Custom designed storage controllers have hardware that is specific for that storage system. Custom ASICs (Application Specific Integrated Circuits) or FPGAs (Field Programmable Gate Arrays) are common in custom controllers. They might also have custom logic or use standard components such as Intel processors. Storage software exploits the custom hardware.
Performance and reliability are the two major advantages of a custom controller design. Performance acceleration comes from using custom hardware for data movement, RAID protection, compression, encryption, or other processing intensive operations. Reliability improvements come from built-in error checking and a reduction in number of components required.
The disadvantages are that it is usually costs more to implement a custom design and it takes the vendor longer to develop a new or updated storage controller.
A purpose-built storage controller uses commonly available elements such as processors and adapter boards integrated into a package. The storage software has an understanding of the specific hardware in a configuration.
The advantages of purpose-built storage controllers include:
• Serviceability is improved because of the ability to non-disruptively replace components.
• Scaling can be done non-disruptively by adding adapter cards.
• Reliability is improved with testing and control for components used in the controller.
• Technology is advanced by leveraging other company’s research and development for the components used.
The disadvantages of purpose-built controllers are the generational changes that occur in common hardware such as the processor technology require engineering changes and more testing of the newly integrated controller.
Some storage controllers use standard servers with the storage software as an application that runs on the server. The server can be a brand name or a white box server.
The main advantage of using a commodity server as a storage controller is cost. The high volume for the server makes it the least expensive of the implementations, and there are many sources for the servers.
The disadvantages are that the server may be less reliable than the other implementations, it may be difficult to provide non-disruptive serviceability for component replacement and upgrades/scaling, variations in server hardware may create support problems, and storage software may require regular updating.
I went into detail into the different architectures of storage systems in an Industry Insight article I wrote, which is available here.
(Randy Kerns is Senior Strategist at Evaluator Group, an IT analyst firm).