34 DB2 Integrated Cluster Environment Deployment Guide
DB2 UDB is available for a variety of Linux platforms; however, at the time of
writing, most DB2 Integrated Cluster Environment configurations have been
mainly tested and deployed on two platforms: IA32 and AMD64. By IA32 we are
referring to 32-bit Intel processor architecture, also generically known as x86.
And AMD64 refers to AMD's technology that extends the x86 platform to 64-bits,
hence generically called x86-64.
We limit discussion to these two architectures (x86 and x86-64), as they are the
most commonly used for Linux clusters, primarily due to their compelling
“price/performance” characteristics. With the growing appeal of Linux on IBM
POWER™ technology, future DB2 Integrated Cluster Environment offerings
based on IBM servers with PowerPC® chips may also be introduced. It is
possible to extend and apply many of the clustering concepts outlined in this
document to other Linux platforms.
It should be noted that the overall solution could be a hybrid one involving both
32-bit and 64-bit servers and clients; however, a single DB2 database can only
be partitioned across servers belonging to the same platform. In fact, all of the
servers in a database cluster should be running the same levels of the Linux
distribution and DB2 UDB.
2.1.1 IA32 (and x86)
When most people think about Linux, the 32-bit Intel environment is the default
and the most popular choice for deployment today. Among the available Linux
platforms, this platform is deemed to be the most mature, offers the largest range
of industry-standard (“commodity”) servers, and has the widest availability of
applications and utilities. DB2 UDB has been ported to this platform since 1998.
In addition to DB2 UDB, a large number of other add-on DB2 components and
extenders are available for this platform.
However, the drawback of this platform is the address limitation inherent in 32-bit
architectures. Processes in this environment can only directly address four
gigabytes of memory, which limits database shared memory area to a default of
about 1.7 gigabytes (and up to 2.5 gigabytes on certain Linux distributions). The
shared memory area is where database buffer pools and sort heaps are kept and
are critical to database performance. While it is possible to address more than
four gigabytes on 32-bit operating systems using memory extensions such as
PAE and AWE or though in-memory file systems, DB2 UDB has chosen not to
utilize these on Linux due to the performance overhead of these methods and
availability of several 64-bit Linux platforms.