SSD on IBM i

  • Post author:
  • Post category:Blog

Its probably fair to say that most of us have been using solid state drives for a number of decades now – if nowhere else but in the form of thumb drives and memory sticks. Apart from being small and compact and thus more convenient for carrying around, when compared to those old CDs we used to use, or even external hard drives, memory sticks have provided a much faster technique for saving data to and accessing data from.

SSD on IBM i - thumb drive

Large-scale use of such devices at an enterprise computing level has, however, not been as ubiquitous as those thumb drives, whose current price levels allow them to now be given away quite freely as gifts at corporate events. For many years, the high per-gigabit costs and their limited storage has meant that the use of larger scale solid state drives for use in enterprise servers has been restricted to a few niches markets and the military. Thankfully though, advances in the technology and manufacturing economies of scale are driving the price of SSDs down to a level where they are becoming a more viable option for a wider spread of organisations and their I/O intensive applications.

If your business is finding that the performance of your applications are being throttled by poor I/O operations, then you may want to consider moving at least some of your IBM i data from traditional HDD units to that latest SSD technologies.

What Is SSD? And Why Use It?

A solid-state device is a form of non-volatile storage that stores information using only electronic circuits, without the need for any moving mechanical parts. This differs fundamentally from traditional hard disk drives, which are electromechanical devices that record and retrieve data to and from a spinning magnetic disk using a mechanical arm to access data from magnetic fields in different parts of that disk. (Note: SSDs are sometimes referred to as solid-state discs, but this is a misnomer given that there is no disk involved whatsoever.)

SSD on IBM i - hard disk drive

It is the absence of moving mechanical parts that give SSDs their advantage over HDDs. HDDs have an inherent latency in their data access time due to the mechanical delays of the spinning disk and the fact that an arm needs to be moved to the relevant part of the disk to performs an I/O operation. While the disk and arms of an HDD do move impressively fast, its certainly not as fast as not having to move anything at all.

From a commercial ownership perspective, this absence of moving parts provides are a number of benefits. Most obviously, SSDs significantly reduce the time to read and write data. According to some IBM i papers, a random read on an SSD is about 100 times faster than a similar read using a traditional HDD. Regular hard disk drives can read in the order of 120 to 150 I/O operations per second, whereas an SSD can get up to 30,000 I/O operations per second. Those are impressive improvements. In addition to I/O performance, given that there are no moving parts to potentially fail, SSDs are far more reliable than traditional HDDs. Furthermore, they are more resilient to physical shock. The result of all this being that, applications that currently use a multitude of HDDs to meet their performance requirements can be replaced with a much smaller number of SSDs, resulting in energy and space savings that ultimately leads to cost savings.

As an interesting additional piece of informatoion, the performance of HDD units degrades over time. At first, when they have little data, disk response times start off strong. But as they fill up with data, their average response time reduces significantly as a larger area of the disk needs to be traversed in order for the disk arm to retrieve the data. This situation is not that case for SSD, which demonstrate the same performance regardless of whether they are nearly empty or completely full.

Move Everything To SSD Or Use A Mix?

So, if SSD performance and reliability is so good, then why is not everyone swapping out all their traditional HDD units for these game changers? Well, in a word, cost! As most of us will be aware, buying a personal computer or a laptop for the home with an SSD option is always more expensive, and often significantly so, than one with an HDD. The situation is the same in the realm of enterprise servers. And while the prices of SSDs have reduced over the years, they are still substantially higher today than the price of HDDs. So, in most cases, it is simply not cost effective for businesses to replace allof their existing HDDs with SSDs. But there are areas whereby the price/performance ratio for SSDs does become more competitive, particularly in those areas of performance bottlenecks. As such, most organisations today will look at operating a mix of SSDs and HDDs together – a concept that is in some ways not too dissimilar to the usage of hybrid-drives in the PC and laptop world. And a configuration that is very easily managed by the IBM i.

What Data To Move To SSD?

Using a mix of the two types of storage devices does, of course, raise the question of what data does a business move to SSD and what data should stay on HDD? There are a couple of considerations here, but the concepts are not particularly tricky and most simply comes down to which data causes your most troublesome performance bottlenecks – that data should be top priority for moving to SSD.

SSD on IBM i - Power 7 drive

Most simplistically, is the idea of hot data and cold data. Hot data is that which is accessed most regularly, and this is the data that you would want to consider for a move to SSD, while keeping your cold data (infrequently accessed data) on your HDDs. Many companies have a significant proportion of cold data, so an appropriate balance between SSD and HDD can be arrived at, striking a balance between cost and performance.

Another consideration is that not all I/O operations benefit from the advantages provided by SSD on the IBM i. For example, sequential writes to and reads from database files are already highly optimised on the IBM I (due to larger IOA caches and a sophisticated management function on the platform). Also, large write operations (such as journal deposits) are unable to perform the same way on SSD as they do on HDD (due the large cache available on the IBM i). SSDs really come into their own when it comes to ‘random’ I/O operations. And it turns out that around 70% of all I/Os in a typical organisation are random reads and writes (versus 30% for sequential operations). So that data seeing high volumes of random I/O operations is a strong candidate for being moved to SSD.

That’s all well and good, you might say, but how do I now what objects are seeing the greatest number of random reads? Thankfully, the IBM i keeps a track of all I/O operations on every database object, and these statistics can be viewed using the Display Physical File Description (DSPFD) command.

How To Move Data To SSD On IBM i

Because the IBM i has its own storage manager and DB2 for I built-in, the integration of SSDs on the platform is a fairly simple task. This short blog is perhaps not the place to go into the intricacies of the entire process, but let me briefly touch on a couple of useful points.

SSD on IBM i - Power 9 SSD

When you add SSDs to your IBM Power server, the operating system will not start using the new drives by default. You will need to point the data to their new home. And this is a relatively simple process. As an example, for new data tables, the CRTPF and CRTLF commands allow you to specify your media preference using the UNIT(*SSD) parameter. For existing tables, setting the same parameter, UNIT(*SSD), on the CHGPF and CHGLF commands will do the trick – all existing data on the HDD will then be moved to the SSDs. There are similar features for SQL defined tables.

An alternative, more hands off, approach to managing the location of the data is to let the IBM i ASP Balancer manage it for you. This feature will move your most frequently accessed (hot) data to the SSD units, and move your less frequently used (cold) data back to the HDD units. It does this by analyzing the usage statistics gathered from the ASP balancers trace command, and will handle the transfers in the background automatically for you.

You will of course want to get a gauge on the performance of your new storage configurations, and the regular performance data collection and use of the IBM i’s performance data investigator function will help you analyse the improved performance of your new SSDs.

Summary

The use of solid-state drives on your IBM i servers will significantly improve the I/O operations for your applications. If your application performance is suffering in certain areas then you will want to consider exploring SSD on the IBM i. SSD units do come at a cost, but by moving only a portion of your data to SSDs and leaving the rest on your HDDs, the right balance between price and performance can be achieved. To make the process easier, the IBM i has all the tools and capabilities necessary to enable you to identify and move the best data candidates over to SSD.

Want More Information On SSD on IBM i?

JouleTech has a tremendous amount of experience helping customers with their decisions and actual moves to SSD on their IBM i servers. Contact us today to further information.