Taking a RAID Through Storage

Benjamin Woo
XSI Technology Pty Limited
Email: woo@xsi.com.au

Abstract

In a recent article in The Australian newspaper, Graeme Phillipson said:

Data storage, in a very real sense, is what computing is all about. Computers compute, for sure. But in the commercial world, they normally use their computing power to manipulate information rather than crunch numbers. The Australian

And how true this is!

In today's tougher economic times, all too often the dollars - or lack of dollars - force many IT departments to skimp on storage, which is arguably the most important component of a computer system. Many IT departments would rather overcapitalise on CPU power. They purchase the 'latest and greatest' computing technology, which promises great increases in performance, only to find in practice that their I/O subsystems cannot keep up with the new CPUs, hence resulting in significant CPU idle time and only a marginal difference in terms of response or functionality to users. Organisations of today cannot gamble on storage technology.

Whilst in some organisations, raw computing power is by far the most important measure of the IT department's ability to deliver service to their customers, I hesitate to suggest that for the majority of organisations, one of the most important indicators for an IT department's ability to be effective is system uptime.

Poor response from a system can be explained away by a lack of CPU grunt, slow or archaic disks or a lack of memory. Management can understand that if the financial resources are not invested in the computing system, then users of the system, including management, must resign themselves to slower response.

In these organisations however, there is now no excuse for a lack of availability to the system, especially with the advancements which have been made in RAID technology, which provides significant front-line redundancy features against minor 'disasters', such as disk failures, for a very little premium over non-RAIDed disk arrays. Further fault tolerance can be introduced via failover or 'clustered' systems which provides fault tolerance against CPU failures.

Unfortunately, not even the redundancy and fault-tolerant attributes inherent in RAID technology are likely to withstand the occurrence of a major disaster. As a result, regular backups are made to allow an organisation to restore its data in the event of major disasters. Therefore, backups are made to allow restores to take place.

Although these issues seem basic, they are too often forgotten. Therefore, this paper will attempt to examine the technologies available today to overcome the 'system's down' syndrome. This paper will concentrate on these two storage technologies: RAID and tape storage. In each case, this paper will examine the how best to apply these technologies to your environment as well as examining the performance of each of these technologies. Under the RAID section, we will also break down the idea of RAID into five other key areas: redundancy, fault-tolerance, availability, integrity and flexibility.

1 Disk Storage

Storage, like CPUs and Operating Systems, must be chosen with reference to the applications your organisation is running, or plans to run. If your organisation is going to benefit from the use of a particular database which runs best on a given platform, then that combination of CPU, OS and database will be chosen. Why then do so many organisations then simply throw their hands in the air and not consider which storage technology would best suit the application?

We are operating in an Open Systems environment. No matter whether you are running a Sun, HP, IBM, DEC, etc. machine, there are storage technologies (which may or may not be from your CPU vendor) which will best suit the applications you are running.

One of the more popular forms of storage technology available today is RAID. RAID has the benefit of providing greater redundancy and fault tolerance to a storage subsystem. However, field experience has shown - no one RAID product has all the answers! RAID subsystems offer the redundancy benefits, but so many RAID subsystems in the field can be damaging to your computer environments by introducing a single point of failure and/or dramatically degrading the performance of your total system.

With so many computer companies doing away with their storage divisions, after-sales support is no longer an issue in considering so-called 'third party' storage. After all, most computer manufacturers use third party products and rebadge them any way. With so many companies vying to provide your organisation with on-site service, you will find that your computer manufacturer is likely to welcome taking your storage solution on board your existing maintenance agreement with them.

1.1 RAID

RAID stands for Redundant Array of Independent Disks (aka Redundant Array of Inexpensive Disks). In a nutshell, a RAID subsystem is a bunch of disks logically bound together, which provides fault tolerance against the failure of one or more of these disks.

Whilst this can be done on a software level, implementing RAID on a hardware level frees up the CPU to perform application-related tasks rather than mundane operating system related tasks such as I/O, etc.

Users choose RAID for one or more of the following six reasons:

Although these terms all look similar, do not be fooled. They are interrelated, and each hold an important place in deciding the most appropriate storage architecture for your organisation.

There are several versions or levels of RAID. The performance of the RAID subsystem is often directly related to the RAID level implemented. As a general guide, applications which require large sequential reads and writes (such as CAD) will benefit from RAID levels 3 or 4. Relational databases (such as Oracle, Informix, Sybase, etc.) will often benefit from the introduction of RAID level 5. However, it must be noted that these are general guides. The benefits gained from RAID (or in fact any storage subsystem) are highly dependent on the applications being run, and the way the applications interact with the file system.

1.1.1 A Quick Overview of the RAID Levels

RAID 0

RAID 0 (which incidentally was never a defined RAID level in the original RAID paper) is often known as disk striping. What this means is that data is spread (or 'striped') across a number of disks. The benefit of this is that when you read the data back, there are a number of disk heads doing a read which will result in significantly higher read performance. However, writes will take longer and there is no fault tolerance in this RAID level.

RAID 1

RAID 1 is disk mirroring. Known also as disk shadowing, this provides the highest level of redundancy as two physical copies of the data are kept (usually) on separate disks. Often this can improve performance and there is usually little or no write degradation.

RAID 2

RAID 2 is not a commercially available (nor viable) RAID level.

RAID 3/4

RAID 3 or 4 is similar to RAID 0 in that data is striped across a number of disks. However, extending this model, parity data is calculated based on the data being written and the result of the calculation is written onto a dedicated disk set aside for the storage of this parity data. In the event of a disk failure, the algorithm used to calculate the parity data is reversed to reconstruct the data which was stored on the failed disk. Under RAID 3, the data is striped across multiple drives on a byte level. RAID 4 stripes data on a sector level. Most tests have shown that RAID 4 will provide a better performance in comparison to RAID 3. Performance from these subsystems vary greatly depending on the applications being run.

RAID 5

RAID 5 extends the RAID 3/4 model again by interleaving the parity data across all the disks. In effect, both actual data and parity data is striped across the whole array of disks. Performance from these subsystems varies greatly depending on the applications being run.

1.1.2 Do I need RAID?

If your organisation has one or more of the six determinants of RAID (and most organisations do have a need for more than one of the determinants) then RAID may be of benefit to your organisation.

1.1.3 Redundancy

I define redundancy as the physical number of copies of data which resides in a RAID subsystem. With the exception of RAID level 0 and 1, most RAID levels keep one and 'a bit' copies. A RAID controller takes the data being written, calculates parity on it, and stores both the actual data plus the parity onto the array.

For many years, users had been using RAID 1 to provide protection from disk failures. This was, however, very costly. The designers of RAID experimented with many different techniques to bring about both an efficient and effective form of data redundancy.

RAID levels 3, 4 and 5 do not need twice the number of disks. In the long run, this does reduce the overall cost of ownership whilst maintaining a reasonable level of data redundancy.

1.1.4 Fault tolerance

Fault tolerance is where 'the men are separated from the boys'. Fault tolerance is a measure which determines how well the subsystem can negate the effects of possible physical disasters. These disasters include disk failures, power outages, controller failure, air conditioning failure, power supply or cooling fan failures.

The implementation of RAID will inherently reduce the effects of disk failures. However, other environmentally preventative measures such as the use of UPSs and a separate battery backed up cache will eliminate the effects of power outages. Controller failure can be overcome by having dual redundant controllers and/or having two hosts connected to the RAID subsystem in a 'cluster' type environment. The ability to have load sharing, hot swappable power supplies and cooling fan assemblies will prevent disasters happening as a result of general wear and tear over time.

1.1.5 Performance

The performance of a RAID subsystem will depend on many things, notwithstanding the interaction of the application with the RAID subsystem and the file system.

The implementation of RAID as hardware or software will make a significant difference to the performance of the subsystem. Some operating systems like Windows NT have RAID 5 technology built in. In some cases where the file server is not critical or the applications it is serving are not important - software RAID is sufficient. However, in most places where RAID is implemented, the data that it is serving is critical. In these cases, there is a strong argument for the installation of hardware-based RAID subsystems.

Disk specifications play a big part. RAID environments require a lot of disk access. The specifications such as the mean-time-between-failure (MTBF), the seek, latency and access times will play a big part in the performance of the subsystem. It is a little known fact that the seek and latency time of a disk make up over 95% of a disk I/O operation. The bandwidth (that is, the data transfer rate) of a disk makes up for under 5% of a disk I/O. Thus, investment in Fast/Wide interfaced disks which only run at 5,400 rpm is unlikely to add to the performance of the RAID subsystem. With disk prices dropping so quickly, users should be looking at purchasing 7,200 rpm drives and increasing the investment in cache, which will ultimately lead to increased performance.

The capability of the controller, such as:

Most RAID controllers only have one main processor. It looks after the RAID algorithms, cache negotiations, host negotiations and disk device management. Just as many organisations are now investing in symmetrical multi-processor (SMP) computers, why not invest in a RAID controller which has multiple processors, each dedicated to a specific task? (for example, one processor for RAID algorithms, one for cache management, one for each host connected, and one for each SCSI bus generated).

The number of SCSI buses generated will also effect the performance of the RAID subsystem. Some RAID controllers generate 2 buses, others will generate 7 or more. By having a greater number of buses (which should be married with an accompanying processor to handle the disk management), this spreads the load across many more buses (and processors), which leads to increased performance.

Industry analysts agree that in most environments, cache equals performance. If your organisation is running a high end processor (for example, IBM's PowerPC 604, HP's PA8000, or Digital's Alpha chip), in order to match the performance of these controllers, it will be necessary to have significant amounts of cache. A controller which can host say 512 MBytes of cache will allow your organisation to scale the amount of performance required from your subsystem.

Many controllers are now able to be configured in a dual redundant configuration. However, in most implementations, the second controller is passive - not doing any I/O serving unless the first controller fails. There are now a few manufacturers making controllers which provide active/active configurations. This allows the controllers to balance the load between each other, thus offering twice the performance to your organisations.

1.1.6 Availability

Availability of a RAID subsystem is of utmost importance. Availability is whether your hosts can access your data. By having multiple hosts connected to the RAID subsystem and/or having multiple controllers connected to one or more hosts, this increases the availability of your subsystems.

Where availability is an issue, fault tolerance will also be an issue. As a result, your organisation should look at RAID subsystems offering multiple controllers which will automatically fall over if one controller fails and which also offers the ability to connect to several hosts to overcome the availability concerns.

1.1.7 Integrity

The integrity of data is part and parcel of RAID technology. The integrity of a RAID subsystem measures how tolerant your subsystem is to dealing with bad data. For example, if there is a power shortage and there is data in your cache yet to be written to disk, how will your subsystem handle it?

The smarter subsystems available today use battery-backed cache and a power monitor which will complete the outstanding write in the event of power outages. This is one system. Another way to provide constantly integral data is to use RAID levels which do not require cache such as RAID 0, RAID 1 or a combination of both.

1.1.8 Flexibility

The flexibility of a subsystem is how adaptable the subsystem is to the five other areas. Questions which apply in this area include:

1.2 RAID In Conclusion

As IT Managers and System Administrators, it is important to understand that storage is an integral part of a computing environment. It is therefore of utmost importance that a storage subsystem is chosen to meet the needs of your organisations; namely, the applications which allow your organisation to operate effectively - and not simply on the logo which appears at the front. There are many very good RAID subsystems available today. This means that it is more likely that you will find a subsystem which exhibit most if not all the attributes which I have mentioned in this paper.

2 Tape Storage

Mark my words - RAID technology is not, I repeat not a substitute for tape backup. RAID technology does not magically reconstruct data in the event of a disaster.

Now that is off my chest ...

The argument over which tape technology is better has been going on for years. To be frank, each of them has their particular place in the market. Undoubtedly, the 4mm DAT tape drive is the predominant tape drive in the workstation market. To date, the 8mm Exabyte style of drives has provided greater capacity and higher throughput. However, of late, the DLT technology from Quantum (nee Digital!) has made quite an impact on the marketplace.

One of the most difficult things to judge when looking at tape drives is how each of them will perform. Some manufacturers quote a two-to-one compression ratio, others quote a four-to-one ratio. Some manufacturers quote sustained versus peak or burst throughput, so below is a table which summarises what is available (and a couple of what will be available):

Technology


DLT



8mm




4mm


Product

DLT

2000

DLT

2000XT

DLT

4000

DLT

7000

EXB

8205

EXB

8205XL

EXB

8505

EXB

8505XL

EXB8900

Mammoth

DDS1
DDS2
DDS3
Capacity (GBytes)














Uncompressed (native)
10
15
20
35
2.5
3.5
5
7
20
2
4
12

Compressed(1)
20
30
40
70
5
7
10
14
40
4
8
24
Sustained Transfer Rate














Uncompressed
1.25
1.25
1.5
5
0.26
0.26
0.5
0.5
3
0.23
0.41
0.75

Compressed
2.5
2.5
3
10
0.5
0.5
1
1
6
0.47
0.82
1.5
Average access time

or Search Rate(2)


45 secs
68 secs
68 secs
60 secs
19 Mb/s
19 Mb/s
75 Mb/s
75 Mb/s
376 Mb/s
94 Mb/s
164 Mb/s
N/A
Load time (secs)

30-45
30-45
30-45
30-45
8-10
8-10
8-10
8-10
8-10
6-8
6-8
6-8
10 GByte Backup Time(3)

(estimated(4) hours:mintues)















Uncompressed
2:10
2:10
1:51
0:33
10:41
10:41
5:33
5:33
0:55
12:04
6:46
3:42

Compressed
1:10
1:10
0:55
0:17
5:33
5:33
2:47
2:47
0:28
5:55
3:23
1:51
Tapes required for a full backup - 100 GBytes(5)

5
4
3
2
20
15
10
8
3
25
13
5

  1. Assumes 2:1 compression which, in actual practice, may be higher or lower depending on data types.
  2. Drive manufacturers use different measures for stating the time it takes to access a specific file. Access Time states the number of seconds it takes, on average, to reach a specific file. Search Rate states the number of megabytes that can pass by while looking for a file. For example, to get to a file which starts after the first 10 GByte of data, a DLT4000 can reach that portion of the tape in about 68 seconds. With an EXB8505XL, it will take about 133 seconds (10,000 MB/75 MB per second).
  3. With single tape drive. Multistream backups (two or more drives used simultaneously to backup multiple file sets) will reduce the time required depending on the number of drives and data organisation.
  4. Will vary widely depending on type of system, backup software, system activity, data type, compression achieved, disk fragmentation, data organisation, type and speed of disk interface, number of drives per bus, etc. Assumes disk throughput is high enough to match sustained transfer rate of tape drive. Because many variables exist, only a 'best case' scenario can be calculated and shown here. However, the times shown are useful for comparing different tape drives and technologies on a relative basis. It is prudent to expect actual, real-life backup times to be 50% to 100% higher.
  5. Assumptions: Data is compressed at 2:1 ratio.

2.1.1 Performance of a Tape Backup Solution

The speed of a backup is the 'performance' measure of a tape backup solution. Each of the technologies differ greatly when operated in 'real-life' backup environments. Looking in detail at footnote 4 from the tape, you will find that quite a number of factors influences the performance of a tape backup solution:

2.1.2 Type of System

The type of computer system used will depend greatly on the type of tape solution to be used. Firstly, there is the consideration of whether or not the media type is supported. Most UNIX systems will at least support the helical scan technologies - 4mm and 8mm, and many will also support the DLT. Those systems which do not support the DLT can find comfort in the fact that Quantum (the manufacturers of DLT) has released an EXB8505 'look-alike' firmware for the DLT. In short, it makes the DLT look like an EXB8505.

Other factors relating to the type of system relate to whether the system is fast enough to drive the tape drives. Where DLT's are being considered, the size of the system is going to play a major part in the decision. In general - 'if your computer can "flood" your SCSI bus with data over a long period of time, then the DLT is likely to be of benefit to you'.

As high end processors like the Digital Alpha class servers hit the market, more and more UNIX systems will be able to take full advantage of the DLT's speed and capacity. For those organisations not having quite the budget to buy the new processors, the Exabyte Mammoth drives will certain solve the capacity and performance issues relating to tape backup.

2.1.3 Backup Software

There are many types of backup software available today. Many offer enterprise wide network-based backup and restore. However, in order to make the most of the technology your organisation has invested in, there is no substitute in my mind, for the simple backup command included in your UNIX install.

The use of this command allows the tape drive to do the compression, not the software. After all, the tape drive was purchased on the basis that it will perform wonders in the compression department. Yet so many users go out and buy backup software which also promise high compression. If the data the tape drive is receiving is compressed, it is unlikely that it will compress any more!

Furthermore, by allowing the tape drive to do the compression, it is the hardware which will ultimately uncompress not the software when the crunch comes and you need to do a restore. After all, backups are made to facilitate restores.

The added benefit in having no additional backup software apart from the performance and compression considerations, is that when you do have a major disaster, and you need to make a major restore of all your data, you are faced with the re-installation of UNIX, followed by the installation, configuration, etc. of the backup software before you begin your install. If you calculate the time needed to do all of that, then the additional backup software is worth, in the least, a second thought.

2.1.4 System Activity

Experience has shown us that system activity whilst backing up will do one of two things: either the disks will be horribly slow or the tape drive will be stuck waiting for data. This is all very well when using helical scan, but remember the DLT premise - lots of data, all the time!

Backups should never be done during business hours and tape drives should always go on a separate SCSI bus. This has the benefits of performance and easier maintenance. If there is only one device on a SCSI bus, then the likelihood is that it can be removed and replaced without shutting the system down.

2.1.5 Data Type

Some data (for example, graphical data) will simply not compress. Other data, such as text or database-related data, compress well. The higher the compression ratio, the higher the throughput of your tape subsystem. It may well be worth considering a separate tape drive for the data which is less likely to benefit from compression.

2.1.6 Compression

Compression is an inexact science. The amount of compression which we have experienced in our organisation averages around 1.6 to 1 with the highest being around the 3.5 to 1 factor. This is highly dependent on the type of data being backed up. Graphical data will often not compress well as the data is often already compressed. However, text and database data will often achieve around 2:1 compression ratio. In the table, the use of 2:1 ratio is there simply to provide a relative measure.

2.1.7 Disk Fragmentation and Data Organisation

The amount of disk fragmentation will affect the rate at which the processor can lift the data off your disks onto the SCSI bus for your tape drive. If your disks are highly fragmented, then data will be presented to your tape intermittently, which will slow down the performance of your tape subsystem.

In a similar vain, how the data is organised plays a large part. If you are backing up data from many different sources, it may be worth considering consolidating the data on an older scratch disk before submitting the backup job - again to improve the flow of data to the tape drive.

2.1.8 Type and Speed of Disk Interface

This point is fairly obvious. If the disks are operating optimally, then the data is retrieved quickly again, improving the efficiency of the transfer from disk to tape

2.1.9 Number of Drives Per Bus

The number of tape drives per bus will depend on whether your multi-streaming will work well. The properties of the SCSI bus are such that only one packet of data is handled at any one time. Therefore, if there are several tape drives on the bus, or the bus is populated by a mixture of disks, tapes, CD, etc. then the tape drives will not receive a constant flow of data.

The lack of the constant flow will directly affect the performance of the subsystem.

2.2 Tape Conclusion

Choosing a tape backup solution is as critical as choosing a disk storage solution. Unlike disk storage, tapes are based around the system abilities. The key point being emphasised is that tape drives (of any nature, but particularly the DLT) love to have a constant flow of data to them. This reduces repositioning times and improves the overall performance of your backup.

If your backup window is small, then it is critical that the issues discussed in this paper are considered in preparing your backup. A well-tuned backup job can aid the performance of your backup device dramatically.

Acknowledgements

Many thanks to Glenn Gray, Jeremy Speet and all the rest of the team at XSI Technology for their support and proof-reading skills!

Bibliography

1
Phillipson, G. (1996) And the big winners are ... storage users, The Australian July, p. 30.

2
Brenkman, G. (1996) Tape Drive Technology Comparison, MTI Marketing Flash, July.


Organised by: AUUG'96 & CSU Return to Conference Proceedings