Storage and File Systems

To improve performance consider your capacity requirements, use of native file systems, and monitor your disk space.

Capacity Requirements

Your disk capacity requirement is a very important input to the disk configuration planning process. This involves many considerations to ensure survivability, manageability, scalability, and performance.

The following table provides information about the tasks that you must perform to ensure that the required behavior is achieved.

Goal Strategy
Survivability
  • Configure disks with the ability to survive single or multiple disk failures (for example, RAID-1, RAID-5, or RAID-10).
  • Configure the disk array with multiple I/O paths to the server to survive I/O path failures.
  • Configure disks to be accessible from multiple server nodes to tolerate single-node failures.
Manageability

If you have limited-time windows to back up the database, select techniques such as array snapshots or SAN-based (storage area network) mirroring that allow logical backups.

Scalability and Performance
  • Configure the disk array with many small disks instead of a few large disks to increase the number of I/O paths.
  • Configure the disk array with large NVRAM cache to improve read and write performance.
  • Configure the disks with stripping (for example, RAID-0 or RAID-10).
  • In some circumstances, you may also want to consider using solid-state disks.

Capacity Requirements: An Example

Let us consider the following example to understand the concept of capacity requirements better. Assume you require 900 GB of storage and you have disk arrays or SANs that are made up of 93 GB disks. Let us further assume that the database is implemented over ninety 10 GB data files.

The following table summarizes the choices for the common disk organizations and the trade-offs involved.

Technology Scalability Survivability Maintainability Num Disks
JBOD Poor. Subject to throughput of individual disks Poor. Single-disk failure creates outage and requires database recovery Poor. High disk utilization skew. 10
RAID-0 Excellent. Striping n disks provides read/write throughput at n times a single disk. Poor. Single-disk failure creates outage and requires database recovery. Excellent. Expect near-uniform disk utilization within a logical unit. Potential LUN utilization skew. 10
RAID-1 Poor. Similar performance to that of JBOD. Better. Can survive multiple disk failures, assuming that these occur in different mirrored sets. Poor. High disk utilization skew. 20
RAID-5 Excellent for read (similar to RAID-0). Potentially poor for write performance. Better. Able to survive a single-disk failure. Multiple disk failures create an outage and require database recovery. Excellent. Low disk utilization skew. Possible LUN utilization skew. 11
RAID-6 Excellent for read (similar to RAID-0). Potentially poor for write performance as parity calculations need to happen. The performance of RAID-6 and RAID-5 is about the same and dependent on the controllers. Better. Can survive a double-disk failure. This gives it an edge over RAID-5. A failure of more than two disks creates an outage. Excellent. Low disk utilization skew. Possible LUN utilization skew. 12
RAID-01 Excellent read/write performance. Can tolerate up to two disk failures as long as both failures are not in the same mirrored set.

Excellent. Low disk utilization skew.

Possible LUN utilization skew.

20
RAID-10 Excellent read/write performance. Can tolerate up to n disk failures as long as two failures do not occur in the same mirrored set.

Excellent. Low disk utilization skew.

Possible LUN utilization skew.

20

Use of Native File Systems

Using file systems for storage can simplify administration tasks, although potentially at some loss of some performance over using raw disks. It is recommended that you consult with your storage administrator and storage vendor.

Operating System Native File System
Windows NTFS
Linux® EXT3
Solaris UFS
AIX® JFS2
HP-UX VxFS