EMC DMX Disk Arrays with IBM DB2 Universal Database Applied Technology

Similar documents
Technical Note P/N REV A01 March 29, 2007

InfoSphere Warehouse with Power Systems and EMC CLARiiON Storage: Reference Architecture Summary

EMC CLARiiON Backup Storage Solutions

HP SAS benchmark performance tests

Dell PowerEdge R720xd with PERC H710P: A Balanced Configuration for Microsoft Exchange 2010 Solutions

EMC XTREMCACHE ACCELERATES VIRTUALIZED ORACLE

EMC Celerra Manager Makes Customizing Storage Pool Layouts Easy. Applied Technology

Lenovo RAID Introduction Reference Information

IMPROVING THE PERFORMANCE, INTEGRITY, AND MANAGEABILITY OF PHYSICAL STORAGE IN DB2 DATABASES

Disk Storage Systems. Module 2.5. Copyright 2006 EMC Corporation. Do not Copy - All Rights Reserved. Disk Storage Systems - 1

WHITE PAPER. Optimizing Virtual Platform Disk Performance

EMC Celerra Virtual Provisioned Storage

VERITAS Storage Foundation 4.0 for Oracle

VERITAS Storage Foundation 4.0 TM for Databases

Drive Sparing in EMC Symmetrix DMX-3 and DMX-4 Systems

OS and Hardware Tuning

I/O CANNOT BE IGNORED

OS and HW Tuning Considerations!

EMC Tiered Storage for Microsoft SQL Server 2008 Enabled by EMC CLARiiON CX4 and Enterprise Flash Drives

Power Vault in EMC Symmetrix DMX-3 and Symmetrix DMX-4 Systems

Maintaining End-to-End Service Levels for VMware Virtual Machines Using VMware DRS and EMC Navisphere QoS

Maintaining End-to-End Service Levels for VMware Virtual Machines Using VMware DRS and EMC Navisphere QoS

EMC XTREMCACHE ACCELERATES ORACLE

EMC Solutions for Microsoft Exchange 2007 NS Series iscsi

Four-Socket Server Consolidation Using SQL Server 2008

Veritas Storage Foundation and. Sun Solaris ZFS. A performance study based on commercial workloads. August 02, 2007

PRESERVE DATABASE PERFORMANCE WHEN RUNNING MIXED WORKLOADS

EMC Solutions for Backup to Disk EMC Celerra LAN Backup to Disk with IBM Tivoli Storage Manager Best Practices Planning

IBM TotalStorage Enterprise Storage Server Model RAID 5 and RAID 10 Configurations Running Oracle Database Performance Comparisons

EMC CLARiiON LUN Shrinking with Microsoft Exchange 2007


EMC VPLEX Geo with Quantum StorNext

VERITAS Storage Foundation 4.0 for Oracle

EMC SYMMETRIX VMAX 40K STORAGE SYSTEM

IBM Tivoli Storage Manager for Windows Version Installation Guide IBM

IBM System Storage DS5020 Express

EMC VMAX 400K SPC-2 Proven Performance. Silverton Consulting, Inc. StorInt Briefing

WHAT S NEW WITH TIMEFINDER FOR EMC SYMMETRIX VMAX

Evaluation Report: Improving SQL Server Database Performance with Dot Hill AssuredSAN 4824 Flash Upgrades

6. Results. This section describes the performance that was achieved using the RAMA file system.

B.H.GARDI COLLEGE OF ENGINEERING & TECHNOLOGY (MCA Dept.) Parallel Database Database Management System - 2

A Look at CLARiiON with ATA CX Series Disk Drives and Enclosures

EMC XTREMCACHE ACCELERATES MICROSOFT SQL SERVER

I/O CANNOT BE IGNORED

1. Introduction. Traditionally, a high bandwidth file system comprises a supercomputer with disks connected

EMC SYMMETRIX VMAX 10K

Iomega REV Drive Data Transfer Performance

Best Practices for Deploying a Mixed 1Gb/10Gb Ethernet SAN using Dell Storage PS Series Arrays

DELL EMC DATA DOMAIN SISL SCALING ARCHITECTURE

PowerVault MD3 SSD Cache Overview

EMC SYMMETRIX VMAX 40K SYSTEM

LEVERAGING EMC FAST CACHE WITH SYBASE OLTP APPLICATIONS

EMC Business Continuity for Microsoft SharePoint Server (MOSS 2007)

FlashGrid Software Enables Converged and Hyper-Converged Appliances for Oracle* RAC

Quiz for Chapter 6 Storage and Other I/O Topics 3.10

Presentation Abstract

Virtual Memory. Reading. Sections 5.4, 5.5, 5.6, 5.8, 5.10 (2) Lecture notes from MKP and S. Yalamanchili

EMC VPLEX with Quantum Stornext

RAID SEMINAR REPORT /09/2004 Asha.P.M NO: 612 S7 ECE

Virtualizing SQL Server 2008 Using EMC VNX Series and VMware vsphere 4.1. Reference Architecture

Dell Reference Configuration for Large Oracle Database Deployments on Dell EqualLogic Storage

Best Practices for Deploying a Mixed 1Gb/10Gb Ethernet SAN using Dell EqualLogic Storage Arrays

Implementing Virtual Provisioning on EMC Symmetrix with VMware Infrastructure 3

An Introduction to GPFS

Microsoft SQL Server 2012 Fast Track Reference Configuration Using PowerEdge R720 and EqualLogic PS6110XV Arrays

Recommendations for Aligning VMFS Partitions

EMC Virtual Infrastructure for Microsoft Exchange 2010 Enabled by EMC Symmetrix VMAX, VMware vsphere 4, and Replication Manager

File. File System Implementation. Operations. Permissions and Data Layout. Storing and Accessing File Data. Opening a File

Veritas Storage Foundation for Windows by Symantec

The term "physical drive" refers to a single hard disk module. Figure 1. Physical Drive

Using Synology SSD Technology to Enhance System Performance Synology Inc.

Condusiv s V-locity VM Accelerates Exchange 2010 over 60% on Virtual Machines without Additional Hardware

The VERITAS VERTEX Initiative. The Future of Data Protection

Assessing performance in HP LeftHand SANs

EMC VNX2 Deduplication and Compression

Deploy a High-Performance Database Solution: Cisco UCS B420 M4 Blade Server with Fusion iomemory PX600 Using Oracle Database 12c

Best Practices. Deploying Optim Performance Manager in large scale environments. IBM Optim Performance Manager Extended Edition V4.1.0.

IBM Emulex 16Gb Fibre Channel HBA Evaluation

TUNING CUDA APPLICATIONS FOR MAXWELL

PESIT Bangalore South Campus

VMware vstorage APIs FOR ARRAY INTEGRATION WITH EMC VNX SERIES FOR SAN

Exam : Title : High-End Disk for Open Systems V2. Version : DEMO

DB2 Performance Essentials

Scalable Shared Databases for SQL Server 2005

EMC Virtual Infrastructure for Microsoft Applications Data Center Solution

Microsoft SQL Server in a VMware Environment on Dell PowerEdge R810 Servers and Dell EqualLogic Storage

TUNING CUDA APPLICATIONS FOR MAXWELL

Input/Output. Today. Next. Principles of I/O hardware & software I/O software layers Disks. Protection & Security

DS8880 High Performance Flash Enclosure Gen2

SAP Applications on IBM XIV System Storage

This document contains information about the EMC DMX SRDF/A Storage Solution for Microsoft Exchange Server.

Deploying Celerra MPFSi in High-Performance Computing Environments

VERITAS Database Edition for Sybase. Technical White Paper

Department of Computer Engineering University of California at Santa Cruz. File Systems. Hai Tao

Dell Microsoft Reference Configuration Performance Results

1 Revisions. Storage Layout, DB, and OS performance tuning guideline for SAP - V4.4. IBM System Storage layout & performance guideline for SAP

Intel Xeon Scalable Family Balanced Memory Configurations

All-Flash Storage Solution for SAP HANA:

TECHNOLOGY BRIEF. Compaq 8-Way Multiprocessing Architecture EXECUTIVE OVERVIEW CONTENTS

DATA PROTECTION IN A ROBO ENVIRONMENT

Transcription:

EMC DMX Disk Arrays with IBM DB2 Universal Database Applied Technology Abstract This paper examines the attributes of the IBM DB2 UDB V8.2 database as they relate to optimizing the configuration for the EMC Symmetrix DMX series disk array. April 2006

Copyright 2004, 2005, 2006 EMC Corporation and IBM Corporation. All rights reserved. EMC and IBM believe the information in this publication is accurate as of its publication date. The information is subject to change without notice. THE INFORMATION IN THIS PUBLICATION IS PROVIDED AS IS. - NEITHER EMC CORPORATION NOR IBM CORPORATION MAKE ANY REPRESENTATIONS OR WARRANTIES OF ANY KIND WITH RESPECT TO THE INFORMATION IN THIS PUBLICATION, AND BOTH SPECIFICALLY DISCLAIM IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PAERTICULAR PURPOSE. The furnishing of this document does not imply giving license to any IBM or EMC patents. References in this document to IBM products, Programs, or Services do not imply that IBM intends to make these available in all countries in which IBM operates. Use, copying, and distribution of any EMC or IBM software described in this publication requires an applicable software license. For the most up-to-date listing of EMC product names, see EMC Corporation Trademarks on EMC.com. IBM, AIX, DB2, and DB2 Universal Database are trademarks or registered trademarks of International Business Machines Corporation in the United States, other countries, or both. Windows is a trademark of Microsoft Corporation in the United States, other countries, or both. All other trademarks used herein are the property of their respective owners. Part Number H2141 Applied Technology 2

Table of Contents Introduction...6 DMX versus EMC 8000 series differences...7 DMX-3 introduction...9 DMX-3 versus DMX differences...9 Introduction to Symmetrix DMX RAID 5...9 Symmetrix DMX RAID 5 implementation overview... 10 Tablespace configuration for RAID 5... 11 Extent size... 11 Prefetch size... 11 DB2 UDB V8.2 enhancements...13 Multidimensional clustering... 13 Direct I/O... 13 Asynchronous I/O... 14 Block-based buffer pools... 14 Default changes to Registry variables... 16 Multi-page file allocation... 16 DB2_STRIPED_CONTAINERS... 16 Overhead and transfer rate... 16 DMX with DB2 UDB test environment description...18 Symmetrix DMX 1000P... 18 Storage layout... 18 Storage layout 1: Separate hypervolumes... 19 Storage layout 2: Packed metavolumes... 22 Storage layout 3: Spread metavolumes... 24 Limits of test environment... 25 Bandwidth of server... 25 Read/write throughput of the DMX RAID 1... 25 DMX and DB2 UDB test configurations...31 Examination of JBOD (just a bunch of disks)... 31 Shared nothing... 31 Shared nothing with shared DAs... 31 Shared everything... 31 Comparison... 31 Examination of striping... 33 Striping by using multiple DB2 containers... 34 Striping by using multiple DB2 containers with AIX logical volume striping... 34 Striping by using multiple DB2 containers and with DMX RAID 0+1 striping... 34 Comparison... 35 Oversizing and performance...36 A database with just right containers... 36 Using large hypervolumes... 36 Comparison... 37 Physical disks versus containers... 38 Few physical disks with few DB2 containers... 38 Few physical disks with many DB2 containers... 38 Applied Technology 3

All physical disks with few DB2 containers... 39 All physical disks with many DB2 containers... 39 Comparison... 40 Conclusion...42 Applied Technology 4

List of Figures Figure 1. DMX Architecture... 7 Figure 2. Symmetrix 8000 Series... 8 Figure 3. DMX 1-2 RAID 5 data layout... 10 Figure 4. Layout 1: Hypervolumes single disk... 19 Figure 5. Layout 1: Hypervolumes basic set... 20 Figure 6. Layout 1: Hypervolumes 3 basic sets... 21 Figure 7. Layout 2: Small metavolumes single RAID group... 22 Figure 8. Layout 2: Small metavolumes all RAID groups... 23 Figure 9. Layout 3: Large metavolumes all RAID groups... 24 Figure 10. Sequential read I/O performance... 25 Figure 11. Sequential write performance... 26 Figure 12. Random read performance... 27 Figure 13. Random write performance... 28 Figure 14. Cache read performance... 29 Figure 15. Cache write performance... 30 Figure 16. Tablescan summary for examination of JBOD test configurations... 32 Figure 17. Average query time for multiple user test case examination of JBOD test configurations... 33 Figure 18. Tablescan summary for examination of striping test configurations... 35 Figure 19. Average query time for multiple user test case examination of striping test configurations... 36 Figure 20. Tablescan summary for examination of oversizing test configurations... 37 Figure 21. Average query time for multiple user test case examination of oversizing test configurations... 38 Figure 22. Tablescan summary for examination of physical disk versus number of containers test configurations... 40 Figure 23. Average query time for multiple user test case examination of physical disk versus number of containers test configurations... 41 Applied Technology 5

Introduction The purpose of this paper is to provide an update on the enhancements made to both the EMC Symmetrix series of disk arrays and to the IBM DB2 Universal Database. The paper examines the differences between the older Symmetrix 8000 series and the new Symmetrix DMX series of arrays and highlights some DB2 enhancements available in UDB DB2 Version 8.2. This paper also provides information examining several approaches to implementing tablespaces on Symmetrix DMX series disks arrays. For a complete description of the Symmetrix DMX series of disk arrays, refer to the EMC Powerlink website at http://powerlink.emc.com. For more information on IBM UDB DB2, refer to http://www.ibm.com/db2. Applied Technology 6

DMX versus EMC 8000 series differences The Symmetrix DMX series is EMC s next-generation family of high-end storage solutions targeted to meet the uncompromising requirements of mission-critical applications. Incorporating Direct Matrix Architecture, the Symmetrix DMX series establishes a new performance trajectory, fully leverages EMC s industry leading storage management functionality, and introduces the economic benefits of modular packaging to the high-end storage marketplace for the first time. The patented Symmetrix Direct Matrix Architecture, shown in Figure 1 on page 7, is a fundamentally new storage-array technology that employs a matrix of dedicated, serial point-to-point connections instead of traditional busses or switches. Symmetrix DMX delivers direct access, from the front of the storage array to the back, guaranteeing the highest possible I/O throughput, up to 64 GB/s aggregate internal bandwidth. The DMX series is faster, less costly, and more reliable. It also avoids contention, latency, and bandwidth issues and potential points of failure associated with bus and switch architectures. Combined with expanded global memory director technology and the dynamically optimized caching algorithms of the Enginuity storage operating environment, systems based on the Symmetrix DMX architecture deliver scalable performance to meet the most demanding information access, protection, and distribution requirements. Today Direct Matrix 64 GB/s Figure 1. DMX Architecture Applied Technology 7

In contrast, the older-generation Symmetrix 8000 series, shown in Figure 2 on page 8, uses a set of four internal I/O busses to transmit all user I/O traffic, all director-to-director communication, and polling activity. While this design is relatively simple, it limits the overall internal traffic of the system to the aggregate bandwidth of just four, relatively slow, hardware busses. A fully configured DMX system has up to 128 dedicated serial data paths, each capable of internal transfer rates of 500 MB/s, and has separate message data paths for communication between directors. Symmetrix Bus 1.6 GB/s Figure 2. Symmetrix 8000 Series Applied Technology 8

DMX-3 introduction In July 2005, EMC announced the next product in the Symmetrix DMX series, the DMX-3. This product evolves from the DMX 1000P array used to perform all the I/O related tests in this paper. The DMX 1000P represents the first product of the Symmetrix DMX family of arrays and provides scaleable performance in a single bay, one floor tile, system housing up to 12 director and cache cards, and up to 144 3.5 inch highperformance Fibre Channel disk drives. The DMX-3, in contrast, starts as a two bay system, on two floor tiles, with one bay housing a mix of up to 24 director and cache cards, power supplies, batteries, UPS, and cooling fans. The new DMX-3 cache and director cards allow for greater scaling than the DMX 1000P by providing more director cards, more and faster CPUs per director, and increased DMX internal bandwidth up to 128 GB/s. The entry-level two bay system can house up to 240 73/146 GB 10K or 15K rpm disks and also offers a 10K rpm 300 GB drive. Unlike earlier-generation DMX arrays, the DMX-3 can be expanded in place by adding additional drive bays and cabling. This allows the DMX-3 to scale up to 2400 disk drives in an eleven bay array. With the performance enhancements in the DMX-3 architecture, we expect to see an extension of the linear scaling we see with the DMX 1000P from 144 drives all the way through 960 disks. For a complete description of the Symmetrix DMX-3 series disk arrays, refer to the EMC Powerlink website at http://powerlink.emc.com. DMX-3 versus DMX differences In addition to the general speed and scalability improvements described in the previous section, there is another difference that affects configuration choices. Storage in Symmetrix storage arrays have always been organized into units called cylinders, tracks, sectors, and blocks. A cylinder contains 15 tracks. A track contains 8 sectors, a sector has traditionally contained 8 512-byte blocks, making a sector contain 4 KB, a track contain 32 KB, and a cylinder contain 480 KB. However, starting with the DMX-3, a sector now contains 16 512-byte blocks, so that a sector is now 8 KB, a track is now 64 KB, and a cylinder is now 960 KB. The recommendations described in this document were derived from a DMX series machine. There will be comments describing how these recommendations should be modified for DMX-3 series arrays. Introduction to Symmetrix DMX RAID 5 Symmetrix DMX offers a wide range of configuration options and features, providing users with a tiered storage platform to meet different service levels. With the initial introduction of Symmetrix DMX, EMC offered high-performance parity RAID support as an alternative to RAID 1 storage protection. Parity RAID was architected around hypervolume-based multispindle parity protection and requires fewer disk drives to be configured to provide protected usable capacity than mirrored protection, reducing acquisition costs. Parity RAID offered high performance for many workloads and could be mixed with RAID 1 protection within a single system to provide flexible data protection options to meet different service-level requirements. To provide even more flexibility and choice, the Symmetrix DMX now offers RAID 5 as a third storage protection alternative. RAID 5 offers the same economic advantages as parity RAID, and is architected around block-based multispindle parity protection. It implements data striping and rotating parity across all hypervolumes of a RAID 5 device. This provides customers with equal or, depending on the specific workloads, potentially better performance than parity RAID. In addition, RAID 5 requires fewer global hot spares within a single system to overcome drive failures. Symmetrix Optimizer is also supported for RAID 5, as well as RAID 1-protected devices, enhancing the performance capabilities of RAID 5. RAID 5 is available on all Symmetrix DMX systems beginning with Enginuity code level 5670 and later releases. Applied Technology 9

Symmetrix DMX RAID 5 implementation overview RAID 5 for Symmetrix DMX is an implementation of the industry-standard RAID 5 data protection algorithms optimized for the Direct Matrix Architecture. Symmetrix DMX RAID 5 provides block-based protection with parity rotating across all hypervolumes of a RAID 5 device. A RAID 5 block on Symmetrix DMX is specifically chosen to optimize RAID 5 performance on the Symmetrix DMX architecture. In Enginuity 5670, the RAID 5 open systems element size, or block size, is 128 KB. This block size is a convenient multiple of the logical track size used by the microcode and cannot be changed. In Enginuity 5771 code for the DMX-3, the RAID 5 block size will be doubled to 256 KB. RAID 5 is available in one of two configuration choices per array: RAID 5 (3+1), three data and one parity block; and RAID 5 (7+1), seven data and one parity block. Using the 3+1 scheme, an open system RAID 5 disk stripe would have three 128 KB data blocks and one 128 KB parity block, making the logical stripe size 384 KB of user data. Likewise, a 7+1 implementation would have seven data blocks and one parity block per stripe for a total of 896 KB of user data per disk stripe. Figure 3 on page 10 shows the open system logical layout of data and parity for a 3+1 RAID 5 group of disks. LV A Disk 1 Parity 123 Data 1 128 KB Data 2 128 KB Data 3 128 KB Data 4 128 KB Parity 456 Data 5 128 KB Data 6 128 KB Data 7 128 KB Data 8 128 KB Parity 789 Data 9 128 KB Data A 128 KB Data B 128 KB Data C 128 KB Parity ABC Parity DEF Data D 128 KB Data E 128 KB Data F 128 KB LV B 1 LV B 2 LV B 3 LV B 4 LV C 1 LV C 2 LV C 3 LV C 4 LV D 1 LV D 2 LV D 3 LV D 4 Figure 3. DMX 1-2 RAID 5 data layout Open Systems RAID 5 3+1 Applied Technology 10

Tablespace configuration for RAID 5 Extent size For Symmetrix DMX RAID 5, a good starting point for the extent size is the disk block size of 128 KB, which is the same for both RAID 5 (3+1) and RAID 5 (7+1). An extent size of 128 KB ensures that extents can be allocated entirely on one physical disk of a RAID array. Going beyond one block, one needs to consider that an extent spanning more than one disk within a RAID array may hit more than one parity block, which can lead to performance differences between extents within an array. For example, in the RAID 5 (3+1) array depicted in Figure 3 on page 10, if the extent size is 2 blocks, then the first extent will be on Data1 and Data2, with Parity 123. However, the second extent will be on Data3 and Data4, with Parity123 and Parity456. This situation can be avoided if the extent is a full stripe width of 384 KB for RAID 5 (3+1) and 896 KB for RAID 5 (7+1). It is possible to increase extent size to be a multiple of the stripe width, but very large extent sizes may impede performance. The following table presents some typical extent sizes. (For DMX-3 arrays, the extent size is doubled, whether measured in either KB or pages.) extent size page size in KB RAID 5 # blocks (KB) type in extent 4 8 16 DMX/DMX-3 extent size in pages DMX/DMX-3 32 (3+1) 1 128/256 32/64 16/32 8/16 4/8 (3+1) 3 384/768 96/192 48/96 24/48 12/24 (3+1) 6 768/1536 192/384 96/192 48/96 24/48 (7+1) 1 128/256 32/64 16/32 8/16 4/8 (7+1) 3 384/768 96/192 48/96 24/48 12/24 (7+1) 7 896/1792 224/448 112/224 56/112 28/56 The general principles to consider for extent size are the following: Extent size should be the RAID 5 block size (128 KB for DMX and earlier, 256 KB for DMX-3 and later) or a multiple (the number of disks in the RAID group, 3 or 7, is the preferred multiple). An extent should contain a reasonable number of pages (8 or more). An extent should not be too large (1 MB or less). These principles can conflict. For example, a full RAID 5 (7+1) stripe on a DMX-3 is 1792 KB, which is larger than 1 MB. You have to balance the principles according to the speed and memory size of your server and usage patterns. Prefetch size Prefetch size specifies how much data should be read into the buffer pool on a prefetch data request. Prefetching data can help queries avoid unnecessary page faults. In contrast to page size and extent size, which cannot be altered once the tablespace is created, prefetch size is tunable after tablespace creation. The value of the most efficient prefetch size for a tablespace is closely linked to its workload, and must be tuned on a per-system basis. In a system configured for balance between CPU, memory, and the Symmetrix DMX RAID 5, a good starting point is to have a prefetch request engage all the underlying disks that the tablespace spans: prefetch size (KB) = # extents/raid stripe * extent size (KB) * # of containers Applied Technology 11

For example, consider a tablespace: Using four separate RAID 5 (3+1) arrays Defined with four containers, one container for each array Defined with 32 KB page size Defined with 384 KB extent size (12 pages) A good starting point for prefetch size is 1536 KB, or 48 pages. Applied Technology 12

DB2 UDB V8.2 enhancements The following is a selected list of DB2 enhancements available in DB2 UDB V8.2. Some of the enhancements were introduced in V8.1 and others were introduced in V8.2. For details, please refer to DB2 InfoCenter at: http://publib.boulder.ibm.com/infocenter/db2help/index.jsp. Multidimensional clustering Multidimensional clustering (MDC) provides an elegant method for flexible, continuous, and automatic clustering of data along multiple dimensions. MDC significantly improves the performance of queries, as well as significantly reduces the overhead of data maintenance operations, such as reorganization, and index maintenance operations during insert, update, and delete operations. MDC is primarily intended for data warehousing and large database environments, and it can also be used in online transaction processing (OLTP) environments. MDC enables a table to be physically clustered on more than one key (or dimension) simultaneously. Before version 8, DB2 only supported single-dimensional clustering of data, through clustering indexes. Using a clustering index, DB2 maintains the physical order of data on pages in the key order of the index, as records are inserted and updated in the table. Clustering indexes greatly improves the performance of range queries that have predicates containing one or more keys of the clustering index. With good clustering, only a portion of the table needs to be accessed and, when the pages are sequential, more efficient prefetching can be performed. MDC extends these benefits to more than one dimension, or clustering key. In terms of query performance, range queries involving any combination of specified dimensions of the table will benefit from clustering. Not only will these queries access only those pages that have records with the correct dimension values, but also these qualifying pages will be grouped by extents. Furthermore, although a table with a clustering index can become unclustered over time as space fills up in the table, an MDC table can maintain its clustering over all dimensions automatically and continuously. As a result, the need to reorganize the table to restore the physical order of the data is eliminated. For complete and up-to-date information on MDC, refer to DB2 UDB s Information Center at: http://publib.boulder.ibm.com/infocenter/db2help/topic/com.ibm.db2.udb. doc/admin/c0007201.htm. Direct I/O Without Direct I/O, a file read request requires the file system to first read from disk into the system cache and into the DB2 internal buffer pool, and then copy the data to the user s buffer. For a file write request, the data is copied from the user s buffer into both caches and eventually back to disks. This dual level of cache is not necessary. Direct I/O is an alternative caching policy that bypasses the default file-system buffer caching. The benefit of using Direct I/O includes reducing CPU utilization for file reads and writes by eliminating the copy from the cache to the user buffer. It also avoids diluting the effectiveness of caching of other files in the case of a poor cache hit ratio. Applied Technology 13

Before version 8, Direct I/O was supported on Windows via Registry variable DB2NTNOCACHE. Starting with DB2 V8.2, Direct I/O support is available on all platforms via the NO FILE SYSTEM CACHING clause of the CREATE and ALTER TABLESPACE SQL statements. Note that in V8.1, Direct I/O could be specified via DB2 registry variable DB2_DIRECT_IO. AIX provides an enhanced Direct I/O called Concurrent I/O (CIO). A white paper that looks at DB2 and AIX CIO can be found at: http://www-106.ibm.com/developerworks/db2/library/techarticle/dm- 0408lee/ When using CIO, specific AIX maintenance levels are recommended. Information can be found at: http://www-1.ibm.com/support/docview.wss?rs=71&uid=swg21165448 Asynchronous I/O Page cleaners write changed pages from the buffer pool to disk before the space in the buffer pool is required by a database agent. As a result, database agents should not have to wait for changed pages to be written out so that they might use the space in the buffer pool. If you set the page cleaner parameter (num_iocleaners) to zero (0), no page cleaners are started. As a result, the database agents will perform all of the page writes from the buffer pool to disk. This parameter can have a significant performance impact on a database stored across many physical storage devices because in this case, there is a greater chance that one of the devices will be idle. If no page cleaners are configured, your applications might encounter periodic log-full conditions. DB2 UDB Version 8 exploits asynchronous I/O facilities to improve I/O performance. This can significantly improve page cleaning performance. Fewer page cleaners are needed with version 8 than with previous versions because asynchronous I/O is used. On AIX, asynchronous I/O is not always enabled; it must be enabled before DB2 UDB Version 8 can be successfully installed. For complete and up-to-date information on page cleaners, refer to DB2 UDB s Information Center at: http://publib.boulder.ibm.com/infocenter/db2help/topic/com.ibm.db2.udb. doc/admin/r0000332.htm. Block-based buffer pools In DB2 UDB Version 8, prefetching can be improved by creating block-based buffer pools. When a block-based buffer pool is available, the prefetching code recognizes this and will use block I/Os to read multiple pages into the buffer pool in a single I/O. This significantly improves the performance of prefetching. The BLOCKSIZE parameter of the CREATE and ALTER BUFFERPOOL SQL statement defines the size of the blocks, and therefore the number of pages read from disk in a block I/O. By default, the buffer pools are page-based, which means that contiguous pages on disk are prefetched into noncontiguous pages in memory. Sequential prefetching can be enhanced if contiguous pages can be read from disk into contiguous pages within a buffer pool. You can create block-based buffer pools for this purpose. A block-based buffer pool consists of both a page area and a block area. The page area is required for nonsequential prefetching workloads. The block area consists of blocks where each block contains a specified number of contiguous pages, which is referred to as the block size. The use of block-based buffer pools must be evaluated for your workload. The only way that a data page enters the block area is via prefetching. Random reads are done into the page area. Also, when DB2 creates a temporary table (in a tablespace that uses the buffer pool in question), the data pages will be put into the page area. If your workload has a significant amount of random and/or temporary table activity, then dedicating memory to a block area may not be the most efficient use of the available buffer pool memory. Applied Technology 14

For complete and up-to-date information on buffer pools, refer to DB2 UDB s Information Center at: http://publib.boulder.ibm.com/infocenter/db2help/topic/com.ibm.db2.udb. doc/admin/c0005396.htm Applied Technology 15

Default changes to Registry variables There have been noteworthy changes to two Registry variables. Multi-page file allocation Before DB2 V8, when SMS tablespaces needed to allocate more space, the underlying file was extended one page a time. This was not optimal when there was heavy insert activity. Users could direct DB2 to perform multi-page file allocation and extend the SMS tablespace one extent at time by running the db2empfa utility against the database. Once multi-page file allocation is turned on for a database, it cannot be turned off. With DB2 V8.2, newly created databases will have db2empfa enabled by default. The GET DATABASE CONFIGURATION command will show the status as: Multi-page file allocation enabled = YES If you wish to have the old SMS behavior of page by page allocation, enable the Registry variable DB2_NO_MPFA_FOR_NEW_DB before creating your database. Subsequently, db2empfa can still be used to enable multi-page file allocation. DB2_STRIPED_CONTAINERS DB2 UDB stores a container tag in the first extent of each Database Managed Space (DMS) container (file or device). The container tag is DB2 UDB s metadata for the container. Before version 8, by default, the container tag was in the first page of the first extent, and the reminder of extent contained data pages. This created an alignment issue where to read one logical extent of data, DB2 would actually need to read from two physical extents. To work around this issue, users could direct DB2 to not put any data pages on the first extent (whose first page has the container tag) by enabling Registry variable DB2_STRIPED_CONTAINERS. With DB2 Version 8, by default, DMS containers are created such that the first extent contains only the container tag and no data pages. DB2_STRIPED_CONTAINERS no longer has any effect. If the old behavior is required (for compatibility or to reduce space usage in environments with a very large number of small tablespaces), the user needs to enable Registry variable DB2_USE_PAGE_CONTAINER_TAG before creating the tablespace. Overhead and transfer rate Two other parameters that relate to I/O performance can be configured for a tablespace: overhead and transfer rate. These parameters are used when making optimization decisions. They help determine the relative cost of random versus sequential accesses. Overhead provides an estimate (in milliseconds) of the time required by the container before any data is read into memory. This overhead activity includes the container s I/O controller overhead, as well as the disk latency time, which includes the disk seek time. Transfer rate provides an estimate (in milliseconds) of the time required to read one page of data into memory. Applied Technology 16

Table 1 presents the suggested overhead and transfer rates for disks available with the EMC DMX arrays. Table 1. Suggested overhead and transfer rate Transfer Rate Disk capacity Overhead 4 KB 8 KB 16 KB 32 KB 73 GB 10K rpm 8.6 0.1 0.1 0.2 0.5 73 GB 15K rpm 5.6 0.1 0.1 0.2 0.4 146 GB 10K rpm 8.6 0.1 0.1 0.2 0.5 Applied Technology 17

DMX with DB2 UDB test environment description The test environment used consisted of a Symmetrix DMX 1000P with four front-end Fibre Channel disk directors, each with eight 2Gb/s Fibre Channel ports, four cache cards with a total of 16 GB of cache memory, and four back-end disk director cards. The array storage was logically configured to provide DB2 with a number of storage layouts. Symmetrix DMX 1000P The storage system used was a Symmetrix DMX 1000P, containing 96 physical disk drives, each with 142 GB capacity and cache capacity of 16 GB. The host was directly linked to the Symmetrix with 10 2 Gb/s fibre connections. Storage layout There were three different physical layouts used on the Symmetrix to provide the raw storage space to the host, and then the space from each of these layouts was used in a variety of ways from the host and database. Applied Technology 18

Storage layout 1: Separate hypervolumes The disk storage was allocated using mirrored hypervolumes. The basic set used a hypervolume of 16.6 GB, one per disk. See Figure 4 on page 19. Physical Disk M1 M2 16.6 GB Hyper 16.6 GB 2 146 GB Disks 16.6 GB 16.6 GB 4 x 4.15 GB Hypers 16.6 GB 16.6 GB 16.6 GB Figure 4. Layout 1: Hypervolumes single disk Because of mirroring, this provided 48 hypervolumes of the 16.6 GB, or about 800 GB in total. See Figure 5 on page 20. Since each hypervolume was on a separate disk (actually two separate disks because of the mirror), activity within this 800 GB set could proceed, reading from all 96 physical drives at once. The 800 GB size of the basic layout was about one-eighth of the total capacity of the storage array. Applied Technology 19

Layout 1 48 x 16.6 GB hdiskpower devices on 96 Physical disks hdiskpower0 hdiskpower1 hdiskpower2 hdiskpower47 Figure 5. Layout 1: Hypervolumes basic set Three of these basic sets were allocated, one for temporary storage, one for a raw copy of the database that was used for testing (whenever the database was being re-created into a storage set for testing it was loaded from this raw copy), and one for the first group of database layouts. See Figure 6 on page 21. Applied Technology 20

144 x 16.6 GB hdiskpower devices on 96 Physical disks RAID 1 (3 sets of layout 1 volumes) hdiskpower96 hdiskpower97 hdiskpower98 hdiskpower143 hdiskpower48 hdiskpower49 hdiskpower50 hdiskpower95 hdiskpower0 hdiskpower1 hdiskpower2 hdiskpower47 Figure 6. Layout 1: Hypervolumes 3 basic sets Applied Technology 21

Storage layout 2: Packed metavolumes Another set was allocated somewhat differently. Instead of a single 16.6 GB hyper, four hypervolumes of 4.15 GB were allocated on each disk (mirrored pair). These hypervolumes were collected into metavolumes in groups of four. See Figure 7 on page 22. Four-way metavolumes across four RAID 1 pairs of disks 4 x 4.15 Hypers Grouped into 1 16.6 GB Figure 7. Layout 2: Small metavolumes single RAID group Applied Technology 22

So each metavolume contained the same 16.6 GB size as a hyper in a basic set described previously. There were again 48 host visible volumes of 16.6 GB. See Figure 8 on page 23. The difference with this layout was that if all of the volumes were used at the same time, each disk was used for four different hypervolumes at once. Within a single disk, the four hypervolumes used for this metavolume layout occupied the same amount of total space as the single hypervolume in the previous layout. Therefore, this layout tested whether there was any effect from having four separate streams of activity on each disk. 48 x 16.6 GB hdiskpower volumes 12 sets of four-way metavolumes spread across 96 RAID 1 drives repeated four times hdiskpower181 hdiskpower169 hdiskpower157 hdiskpower145 hdiskpower192 hdiskpower180 hdiskpower168 hdiskpower156 Figure 8. Layout 2: Small metavolumes all RAID groups Applied Technology 23

Storage layout 3: Spread metavolumes The final physical layout set was very similar to the second, using 48 metavolumes, each consisting of four hypervolumes, with the full set occupying four hypervolumes on each physical disk. The difference between layout 2 and layout 3 was that the hypervolumes for layout 3 were each 16.6 GB, so the full set of metavolumes occupied four times as much space on the disk drives. See Figure 9 on page 24. The database was still allocated at the same size, so each metavolume was only used for the first quarter, and unused for the remaining three quarters. The point of this layout was to test whether the additional seek time from having the metavolumes spread further apart on the drives had any effect. Layout 3 same as layout 2, but built from bigger hyper hdiskpower22 hdiskpower24 hdiskpower21 hdiskpower22 hdiskpower20 hdiskpower21 hdiskpower19 hdiskpower20 Figure 9. Layout 3: Large metavolumes all RAID groups Applied Technology 24

Limits of test environment The host environment for this test consisted of a single IBM H80, with six processors (666 MHz PowerPC- IV) and 32 GB of memory. It had 10 IBM 6228 HBAs directly connected to 10 2 Gb Fibre Channel ports. We estimate that we would need up to four such host systems to be able to fully utilize the DMX 1000P platform. The following sections document the known performance limits of the server and various aspects of the DMX. Bandwidth of server Using the I/O generator IORATE, we ran various tests to determine the best case I/O throughput of the node. In both the sequential read and cache read I/O profiles, the node consistently peaked at about 500 MB/s sustained read throughput. The known throughput of the DMX 1000P is much higher. Read/write throughput of the DMX RAID 1 The following graphs show the throughput of the DMX running an I/O load generator, IORATE, to produce various I/O loads on the array. Figure 10 on page 25 shows that the performance of the DMX in this environment peaks at just more than 500 MB/s that we believe to be the maximum throughput of the node, and not the limit of the Symmetrix DMX 1000P. Looking at the sequential read performance, we see that 64 KB sequential read I/O with eight active RAID 1 pairs, 16 physical disks, produces a bit more than 300 MB/s of I/O bandwidth, or approximately 20 MB/s I/O bandwidth per physical disk. Performance with UDB active will be somewhat less. Sequential Read 600.0 500.0 Read-MBs 400.0 300.0 200.0 100% Seq 1 KB Read 100% Seq 4 KB Read 100% Seq 8 KB Read 100% Seq 16 KB Read 100% seq 32 KB Read 100% seq 64 KB Read 100% seq 128 KB Read 100% seq 256 KB Read 100.0 0.0 4 8 12 16 20 24 Active RAID 1 Pairs Figure 10. Sequential read I/O performance Applied Technology 25

Figure 11 on page 26 shows the performance of the DMX 1000P in a sequential write I/O profile. Again, the known performance limits of the DMX 1000P are much greater than what is shown. Sequential Write 450.0 400.0 350.0 Write-MBs 300.0 250.0 200.0 150.0 100% seq 1 KB Write 100% seq 4 KB Write 100% seq 8 KB Write 100% seq 16 KB Write 100% seq 32 KB Write 100% seq 64 KB Write 100% seq 128 KB Write 100.0 50.0 0.0 4 8 12 16 20 24 Active RADI 1 Pairs Figure 11. Sequential write performance Applied Technology 26

Figure 12 on page 27 shows the performance of the DMX 1000P in a random read I/O profile. The graph shows linear growth in I/Os per second as we add more physical disks to the I/O profile. In this case, we only had 24 RAID 1 pairs available for the test, and expect that expanding the test with more physical disks would show the same linear growth in performance to the full capacity of the array. Random-RW 350.0 300.0 250.0 Read-MBs 200.0 150.0 100% ran 1 KB Read 100% ran 4 KB Read 100% ran 8 KB Read 100% ran 16 KB Read 100% ran 32 KB Read 100% ran 64 KB Read 100% ran 128 KB Read 100% ran 256 KB Read 100.0 50.0 0.0 4 8 12 16 20 24 Active RAID 1 Pairs Figure 12. Random read performance Applied Technology 27

Figure 13 on page 28 shows random write performance. Again, the graph shows linear growth in I/O performance as more physical disks are active in the array. Random Write 350.0 300.0 250.0 Write-MBs 200.0 150.0 100% ran 1 KB Write 100% ran 4 KB Write 100% ran 8 KB Write 100% ran 16 KB Write 100% ran 32 KB Write 100% ran 64 KB Write 100% ran 128 KB Write 100.0 50.0 0.0 4 8 12 16 20 24 Active RAID 1 Pairs Figure 13. Random write performance Applied Technology 28

Figure 14 on page 29 shows cache read performance. In this I/O profile, the I/O pattern is designed to cause all read requests to be satisfied from the DMX cache. The graph shows that as additional RAID 1 pairs of disk are accessed, I/O performance quickly peaks at just more than 500 MB/s and stays at the level as additional disks are added to the workload. This is additional evidence that the single server driving the I/O workload was the limiting factor in performance and not the array. If we compare the cache read results with the sequential read results, they are roughly the same. If the server could drive more I/O bandwidth than the sequential I/O profile could generate, we would expect to see the cache I/O profile produce significantly more I/O bandwidth than sequential read profile. Cache Read 600.0 500.0 Read-MBs 400.0 300.0 200.0 100% cache 1 KB Read 100% cache 4 KB Read 100% cache 8 KB Read 100% cache 16 KB Read 100% cache 32 KB Read 100% cache 64 KB Read 100% cache 128 KB Read 100% cache 256 KB Read 100.0 0.0 4 8 12 16 20 24 Active RAID 1 Pairs Figure 14. Cache read performance Applied Technology 29

Figure 15 on page 30 shows cache write performance. Cache Write 450.0 400.0 350.0 Write-MBs 300.0 250.0 200.0 150.0 100% cache 1 KB Write 100% cache 4 KB Write 100% cache 8 KB Write 100% cache 16 KB Write 100% cache 32 KB Write 100% cache 64 KB Write 100% cache 128 KB Write 100.0 50.0 0.0 4 8 12 16 20 24 Active RAID 1 Pairs Figure 15. Cache write performance Applied Technology 30

DMX and DB2 UDB test configurations All of the following results and measures were gathered on a DB2 UDB with DPF database consisting of four database partitions. The following discussed disk layouts were achieved by using a combination of DMX storage layouts and assigning them to various database containers within a database partition. Examination of JBOD (just a bunch of disks) The most basic of storage layout technique is referencing just a bunch of disks (JBOD). In the EMC DMX scenario, this means presenting hypervolumes as logical disks to the operating system thus omitting the metavolume layer of abstraction. Typically, less abstraction means less overhead, which in turn means higher performing. There are two ways to structure a JBOD configuration: sharing or isolating resources. However, you can modify where isolation occurs. We examined the relative performance of following three layouts: We isolated to the physical disk level. We isolated to the physical disk level but shared the DAs between the database partitions. All resources were shared between all database partitions. Shared nothing This database used the logical disks provided by DMX storage layout 1 for tablespace containers. Each container consisted of one hdiskpower logical disk that resided on one hypervolume. All hypervolumes belonged to the same disk array (DA). In total, each database partition had access to 12 containers, represented by 12 isolated hypervolumes via one DA. Therefore, the database had access to the entire storage subsystem with each database partition using one-quarter of the DMX array. Shared nothing with shared DAs Like the previous configuration, this database used the logical disks provided by DMX storage layout 1 for tablespace containers. Each container consisted of one hdiskpower logical disk consisting of a single hypervolume. However, this time the hypervolumes were allocating in a round-robin fashion so each data partition had equal access to all DAs. Therefore, as before, the database had access to the entire storage subsystem with each database partition using one-quarter of the DMX array. Shared everything This database was designed such that each data partition had access to the entire array. To achieve this, each hypervolume was divided into four logical volumes using AIX Logical Volume Manager (LVM), so that there was one logical volume for each data partition. In other words, each physical disk had data residing on it from each database partition. Comparison When DB2 UDB with DPF executes a query, work is divided amongst data partitions based on the partitioning key for a table. This means that when data from a specific table is required, it is accessed independently on each data partition. When required, data is shared between the partitions via DB2 UDB s fast communication manager (FCM). Therefore, a physical disk isolated for use by a single data partition traditionally outperforms a physical disk shared between various data partitions in a complex query environment since the disk head is not required to move between data partitions when executing a query. However, this only limits performance when the physical disk is the performance bottleneck. Applied Technology 31

1 A tablescan query was executed against each database to measure the limits of each configuration within an ideal sequential access scenario. For this test, each configuration was able to achieve similar performance because the test scenario was CPU bound, as shown in Figure 16 on page 32. 500 450 400 MB/sec 350 300 250 200 150 8 16 30 96 192 256 360 720 768 Prefetchsize (in 32KB pages) Shared Nothing Shared Nothing (with Shared DAs) Shared Everything Figure 16. Tablescan summary for examination of JBOD test configurations 1 A query that executes such that a full scan of all data on all data partitions is required without accessing indexes for a single table. Applied Technology 32

Next, a test was conducted where multiple users accessed the system each running several business intelligence-type queries in varying order the difference between the configurations becomes more apparent, as shown in Figure 17 on page33. However, since the system is fairly limited by CPU, the differences are still not drastic. 5000 4500 4000 3500 Avg Elapsed Time (seconds) 3000 2500 2000 1500 1000 500 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 Query Shared Nothing Shared Nothing (with shared DAs) Shared Everything Figure 17. Average query time for multiple user test case examination of JBOD test configurations Although not highlighted in the data above, shared nothing is typically easier to configure and manage. The number of devices will typically be lower, which can facilitate system monitoring and problem determination should a system problem develop. Another consideration is that as the number of data partitions increase, having each data partition access every physical disk in the I/O subsystem is less desirable. For example, in a two data partition system, having both data partitions sharing access to 12 physical disks seems workable. But, in a 16 data partition system with a total of 96 physical disks, having all 16 data partitions concurrently trying to access 96 physical disks may not be optimal. If the data partitions are designed such that the workload is balanced across the data partitions, isolating the physical disks in a shared nothing configuration should optimize usage of the I/O subsystem while providing ease of configuration and management. Examination of striping When setting up an environment that includes DB2 UDB, AIX, and EMC DMX, there are several levels in which the user has the ability to stripe data: At the DB2 level At the AIX level On the EMC DMX When and how much striping to use is often a question. Applied Technology 33

We studied the following three test case scenarios: Striping by using multiple DB2 containers Striping by using multiple DB2 containers and with AIX logical volume striping Striping by using multiple DB2 containers and with DMX RAID 0+1 striping Striping by using multiple DB2 containers This setup was based on DMX storage layout 1. An AIX concatenated logical volume was created out of four hypervolumes to maintain the same number of containers for each database. Each data partition used three containers per database partition, with each container accessing one logical volume that consisted of four concatenated hypervolumes. Thus, only DB2, which creates an extent per container within each data partition, is striping the data. Striping by using multiple DB2 containers with AIX logical volume striping This setup was also created from DMX storage layout 1. As above, AIX logical volume manager was used to create one logical volume out of four hypervolumes. But in this case, striping was used create the logical volume. Thus, each database partition also used three containers and each container had access to one striped logical volume. Striping by using multiple DB2 containers and with DMX RAID 0+1 striping The final configuration was created from DMX storage layout 2. In this setup, each database partition still had access to three containers. However, this time each container consisted of one RAID 0+1 metavolume, which consisted of four hypervolumes as previously described. Applied Technology 34

Comparison As before, to test the relative performance of the various configurations under ideal sequential scenarios, a tablescan query was executed against each database. This test revealed a discrepancy between the performance of just DB2 UDB striping and the addition of logical volume striping. See Figure 18 on page 35. The default AIX logical volume stripe of 32 KB was used. Reads against the created logical volumes could not exceed 128 KB. Thus, the DB2 and OS striping test case was limited to a read size one-quarter the size of the reads being executed by both the DB2 striping configuration and the DB2 with DMX striping configuration. 500 450 400 MB/sec 350 300 250 200 150 8 16 30 96 192 256 360 720 768 Prefetchsize (in 32KB pages) DB2 striping DB2 and OS striping DB2 and DMX striping Figure 18. Tablescan summary for examination of striping test configurations Applied Technology 35

Differences between the configurations disappear when examining a workload that includes more nonsequential reads and CPU-intensive queries as demonstrated by a multiuser test. See Figure 19 on page 36. 5000 4500 4000 3500 Avg Elapsed Time (seconds) 3000 2500 2000 1500 1000 500 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 Query DB2 Striping DB2 and OS striping DB2 and DMX RAID 0+1 Striping Figure 19. Average query time for multiple user test case examination of striping test configurations Oversizing and performance When planning a database, a discussion on planning for growth usually occurs. In the following sections, we examine if leaving room for growth affects overall database performance. A database with just right containers This configuration is based upon storage layout 2. A database container was created on each metavolume presented to the host such that each database partition was isolated on physical disks. In this scenario, these containers were just large enough to store the test database data. Using large hypervolumes For the second configuration, storage layout 3 was used. This is the same as storage layout 2, except the hypervolumes involved are four times larger. As before, a database container was created on each metavolume presented to the host and was used by the same database partitions as before. Therefore, the physical disks used by the respective database partitions were exactly the same. However, in this scenario, the database containers were four times larger than the test database data. Applied Technology 36

Comparison In both tablescan (see Figure 20 on page 37) and multiuser (see Figure 21 on page 38) tests, the performance observed was exactly the same. 500 450 400 MB/sec 350 300 250 200 150 8 16 30 96 192 256 360 720 768 Prefetchsize (in 32KB pages) Small Hypers Large Hypers Figure 20. Tablescan summary for examination of oversizing test configurations Applied Technology 37

5000 4500 4000 Avg Elapsed Time (seconds) 3500 3000 2500 2000 1500 1000 500 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 Query Small Hypers Large Hypers Figure 21. Average query time for multiple user test case examination of oversizing test configurations Physical disks versus containers Another issue to consider during the planning phase for a database is the number of DB2 containers to use for a tablespace. We looked at four test case scenarios to study this behavior using DMS device tablespaces. For each of the following configurations, storage layout 3 was used: Creating tablespaces that only used enough physical disks and tablespace containers as the database size required Few physical disks with few DB2 containers. Creating tablespaces that used enough physical disks as the database size required but with many tablespace containers Few physical disks with many DB2 containers. Creating tablespaces that used all the physical disks with the same number of containers as test case 1 All physical disks with few DB2 containers. Creating tablespaces that used all the physical disks with the same number of containers as test case 2 All physical disks with many DB2 containers. Few physical disks with few DB2 containers For this scenario, only three tablespace containers were used per database partition. Each container resided on one metavolume. These metavolumes were specifically chosen such that only one-third of the entire DMX array was used to create the storage available to this test database configuration. Few physical disks with many DB2 containers The same metavolumes were used for this test scenario to maintain the same physical disk count. However, four separate OS logical volumes were created for each metavolume presented to the host. Applied Technology 38

Therefore, the number of containers available to the database was increased by four times. In total, 12 containers were used per database partition. All physical disks with few DB2 containers For this configuration, the entire DMX array was used by the test database. For the database to have access to the entire DMX array, 12 specific metavolumes were selected. Each metavolume was then used as tablespace container. Therefore, as before, only three containers were used by each database partition, while the underlying physical disks spanned the entire DMX array. All physical disks with many DB2 containers The final database layout used the entire DMX array while using 12 tablespace containers per database partition. Each tablespace container resided on a metavolume. Therefore, all 48 metavolumes presented by storage layout 3 were used. Applied Technology 39

Comparison The number of database containers is not critical as long as the entire DMX array is involved. These test cases are able to reach the limit of the test server for sequential throughput and perform similarly during the multiuser test. See Figure 22 on page 40 and Figure 23 on page 41. However, when the number of physical disks is reduced, no matter the number of containers, the sequential throughput is reduced and relative performance on numerous queries is also reduced. Queries that have a significant CPU overhead show little to no performance difference between the various configurations. 500 450 400 MB/sec 350 300 250 200 150 8 16 30 96 192 256 360 720 768 Prefetchsize (in 32KB pages) Few Physical Disks, Few Containers All Physical Disks, Few Containers Few Physical Disks, Many Containers All Physical Disks, Many Containers Figure 22. Tablescan summary for examination of physical disk versus number of containers test configurations Applied Technology 40