Skip to main content

Which distributed edition of DB2 9.7 is right for you? (With a dash of DB2 9.8 pureScale)

Paul Zikopoulos (paulz_ibm@msn.com), Program Director - DB2 Evangelism, IBM
Paul Zikopoulos photo
Paul C. Zikopoulos, BA, MBA is the Program Director for the DB2 Evangelist team at IBM. He is an award-winning writer and speaker with more than 15 years of experience with DB2. Paul has written more than 300 magazine articles and 13 books on DB2 including, DB2 9.7: A Tour of Cost-Slashing New Features, Information on Demand: Introduction to DB2 9.5 New Features, DB2 9 Database Administration Certification Guide and Reference (6th Edition), DB2 9: New Features, Information on Demand: Introduction to DB2 9 New Features, Off to the Races with Apache Derby, DB2 Version 8: The Official Guide, DB2: The Complete Reference, DB2 Fundamentals Certification for Dummies, DB2 for Dummies, and A DBA's Guide to Databases on Linux. Paul is a DB2 Certified Advanced Technical Expert (DRDA and Clusters) and a DB2 Certified Solutions Expert (BI and DBA). In his spare time, he enjoys all sorts of sporting activities, including running with his dog Chachi, avoiding punches in his MMA training, and trying to figure out the world according to Chloë – his daughter. You can reach him at: paulz_ibm@msn.com.

Summary:  Learn the details on what makes each edition of DB2 9.7 for Linux, UNIX, and Windows unique. The author lays out the specifications for each edition, licensing considerations, historical changes throughout the DB2 9.7 release cycle, and references to some interesting things customers are doing with DB2. This popular article is updated during the release for any intra-version licensing changes announced in a Fix Pack as well. This article also discusses some details of the DB2 9.8 release that's the shipment vehicle for the new DB2 pureScale feature.

Date:  29 Oct 2009
Level:  Introductory
Activity:  3077 views

Introduction

Information management software is at the core of enterprise computing. Companies need access to a wide range of information such as XML, message queues, documents, streaming video, and other rich media types. The On Demand evolution makes continuous availability a necessity and is driving the convergence of transaction, business intelligence, business performance management, and content management applications as companies integrate their business operations and processes thereby transforming their operations to the On Demand paradigm.

The IBM Information Management software portfolio provides the foundation you need for providing information on demand via a rich set of services. These services can be used to support and query data (structured, semi-structured, and unstructured), integrate data, provide data entity resolution, master data management, federation, and content management, as well as a host of rich run-time analytic capabilities. When you take into account the complete set of these services, collectively they are referred to as Information as a Service. IBM offers a rich framework of industry centric and purpose-built best practices built on these core services allowing companies to systematically transform their data assets into core strategic strengths for the business; collectively these practices are knows as the Information Agenda.

At the heart of the Information Management portfolio are the distributed (Linux, UNIX, and Windows) DB2 database servers which are the focus of this article. Note that this article only describes the version of DB2 running on distributed and pervasive platforms. For information about the entire DB2 portfolio, see the Information Management Software Web site or each product's respective Web site: DB2 for z/OS or DB2 for i (formerly known as DB2 for i5/OS and before that DB2 for AS/400).

DB2 is also at the heart of both the InfoSphere Warehouse and InfoSphere Balanced Warehouse editions, as well as the IBM Smart Anlaytics System; in fact, all of these products (even the small and mid market-targetted ones) are built on DB2 Enterprise which is covered in this article. These products are not covered in this article because they have services which extend well beyond the core DB2 database which is the focus of this article.

It's easy to arrive at the decision to use DB2; however, there are different editions of DB2 (and respective licensing options) that are well suited for different parts of the marketplace. From Palmtop to Teraflop, there's a DB2 that's right for you.

For each version of DB2, I write an article like this which is designed to help you decide which distributed DB2 edition you want to use to power up your business. As interim-changes impact the version release over time, this article morphs into a reference that details licensing and product changes on a marginal basis. For this reason, it's important that you take note of the publication date and version point release when reading this article. In this article, the description of an edition is the most up to date with respect to features, licensing rules, and so on. Below each edition description is often a change log which allows you to see the changes within a release cycle. For example, this article covers DB2 9.7. After the release of Fix Pack 1, any packaging or licensing changes will be reflected in this article, but a section will be added to clearly dilenate the changes between the generally available version of DB2 9.7 and subsequent Fix Packs.

Note: In the article, the term server represents either the physical server where the DB2 software is running, or an IBM price-supported virtualization session (such as VMWare, LPAR, and so on) unless otherwise noted.

When talking with customers, I often get asked a lot of high availability licensing questions, or feature comparisons between the different editions of DB2. For details on these topics, and more, other articles I've written may be helpful:


DB2 is DB2 is DB2

The first thing that you should understand when choosing an edition of DB2 to service your workload is that, with the exception of DB2 Everyplace® and Apache Derby (whose SQL API is fully compatible with DB2), each DB2 edition has the same code base across all the distributed platforms. DB2's support for Linux extends across all of IBM's servers: POWER (formerly known as System i and System p), System z®, and System x®: the DB2 on all of these platforms is the distributed version too. For example, DB2 for Linux on System z is the same code base and licensed the same way as DB2 on an Intel or AMD-based workstation. This means that DB2 Connect is not required to access DB2 for Linux on System z data even though the copy of DB2 resides on a System z server. (Read that sentence twice - if you were connecting to a DB2 for z/OS database on this System z server, you would require DB2 Connect; the difference here is that DB2 for Linux running on a System z Integrated Facility for Linux (IFL) is the distributed version of DB2.)

A common code base offers portability and assurances that if you ever need to scale your DB2 solution, you can do so seamlessly without migration concerns or efforts; and since the SQL API within the DB2 family is about 95% common, movement between the DB2 family members is just as easy too. To further enhance the DB2 family value proposition, all DB2 editions include federation across the entire IBM relational database portfolio. This allows you to write a single SQL statement that transparently joins data from DB2 on Windows, or DB2 for z/OS, or Informix - any supported combination you can think of. What's more, you can add IBM InfoSphere Information Server software to solve cross-vendor information integration problems by extending the DB2 SQL API with transparent access to non-IBM relational databases (such as Oracle, SQL Server, and others) and materialize non-relational data sources (like XML streams, spreadsheets, message queues, VSAM, IMS, and so on) as relational tables: thereby truly creating a corporate-wide common data model.

There is compatibility beyond the SQL API too. For example, there's a common Web Services framework that allows you to point-and-click your business logic into a Service Oriented Architecture (SOA) framework. In fact, this framework, called IBM Data Web Services, includes support for Informix servers and can even be used for back-level versions of Informix or DB2 (on any platform, inlcuding i and z/OS). Amazing!

Not to sound like an infomercial, but there's more cross-IBM Data Server stuff that's packed into every edition of DB2. For example, all IBM relational databases share a common API to instrument the SQL. For example, the JDBC driver that ships with DB2 for z/OS is the same code as DB2 for Windows. When you consider that billions of dollars per minute every day depend on this driver, you know you've got a rich and robust driver for your applications. There's also a common client; if you are connecting to DB2 for z/OS, DB2 for AIX, or Informix, you install just one client. You can learn more about the new common client by reading "Which DB2 9.7 client connectivity option is right for you?" For example, did you know you can migrate from a DB2 client to DB2 Connect Personal Edition by simply installing a license key? If you didn't, read that article for other great tips.

The DB2 9.7 release builds on the initial Data Studio tool set (the defacto DB2 management tool that you can freely download) which serves as a seague into IBM's requirements to retirement Integrated Data Management (IDM) discipline and toolset under the Optim brand. The absence of the DB2 moniker is not accidental; the IBM Optim tools portfolio provides a rich tooling platform that spans the entire spectrum of the application lifecycle (Design, Develop, Deploy, Operate, Optimze, and Govern) for more than just IBM relational databases. This saves businesses money as personnel skills investment can be dynamically moved from problem area to problem area, breaking free of costly database skill stove pipes. Truly, DB2 enables in-place access to data wherever it may reside.

In addition, tooling for application development and management (like Microsoft Visual Studio integration) are cross-IBM database family as well. Optim pureQuery, Optim Database Administrator, and more are all enabled for more than just IBM databases (such as Oracle). Quite simply, more than ever, across the IBM DB2 family (and in many cases Informix too) you've got skill reuse when it comes to application development, deployment, management, and more.

Now consider that DB2 9.7 provides native support for the most commonly used Oracle Database PL/SQL syntax, data types, and more. In fact, some organizations report that as much as 95%+ of their PL/SQL code runs on DB2 9.7 without application changes; what's more, they've claimed that moving their aplications to DB2 from the Oracle Database happened in days or weeks as opposed to months or years. When you take all this into account, you can see how DB2 truly lets you break free of skyrocketing costs in an environment where cost containment is a top priority.

If you ever decide to change your strategic direction with respect to a hardware architecture (for example, from an Intel-based architecture to a POWER one), operating system (like moving from Linux to Windows or vice-versa), or programming architecture (like .NET to Java or vice-versa), you can count on the fact that DB2 will be there. Quite simply, it's all about choice, and DB2 is literally the only database in the world that really gives you the breadth and depth of an information platform tailored to your environment. Figure 1 shows an architectural view of DB2 9.7 across its supported distributed platforms:


Figure 1. DB2 is DB2 is DB2 across supported distributed platforms due to its common code base.
DB2 is DB2 is DB2 across supported distributed platforms due to its common code base.

The different editions of DB2 are shown in Figure 2. With the exception of DB2 Everyplace and Apache Derby, you can assume that each function, feature, and benefit of an edition shown at the bottom of Figure 2 is included in each subsequent edition as you move up the 'edition chain' -- kind of like a Russian Doll. (Note that DB2 Express-C is actually considered a package as opposed to an edition.)


Figure 2. The distributed DB2 9 product line
The distributed DB2 9 product line

DB2 Everyplace...A lot of power from such a little thing

The true power of mobile computing lies not in the device itself, but rather in its ability to tap into data from other sources. DB2 Everyplace (DB2e) brings the power of DB2 to mobile devices, leveraging their ability to synchronize data with other systems -- literally putting your enterprise data in the pockets of your mobile workforce and giving them the ability to update data from mobile locations (even in an occasionally connected environment).

DB2e is more than just a mobile computing infrastructure. It's a complete environment that includes the tools you need to deploy and support powerful Information on Demand applications. DB2e features a tiny "fingerprint" engine (about 350 KB) which is packed full of security features such as table-level and wire-level encryption (including SSL) and advanced indexing techniques that lead to high performance. It can comfortably run on a wide variety of hand-held devices, with support for Palm OS, Windows Mobile (and Windows Mobile CE), traditional Windows desktop platforms, Symbian OS, QNX Neutrino, various Linux distributions (including embedded ones like BlueCat), and more.

The SQL API used to develop DB2e applications is a subset of that used for building DB2 applications. This means that enterprise applications, for the most part, can be easily extended to include mobile devices. DB2e is also a very simple to use database - users don't need any database management skills as it is 100% self managing. DB2e is extremely flexible for developers, with support for a myriad of programmable API interfaces such as ODBC, JDBC, .NET, DB2 CLI, and more.

Another nice thing about developing DB2e applications is that the database engine is platform independent. This gives you the flexibility to seamlessly move a populated DB2e database on a Pocket PC device to a Symbian smartphone, or whatever other supported device you have. This feature, coupled with the rich support for application development, enables developers to quickly create, deploy, and support applications on a wude array of platforms.

DB2e can be licensed as a fully synchronized environment or as a stand-alone embedded database. DB2e comes in two editions: DB2 Everyplace Database Edition (DB2e Database) and DB2 Everyplace Enterprise Edition (DB2e Enterprise).

DB2e Database has no synchronization middleware to extend or synchronize data to back-end enterprise database servers (although it does come with command line-based import and export utilities). DB2e Database is primarily used for applications that require an embedded database or a local relational storage facility that is exposed to end-users through some sort of application (they never really see the database) yet have stringent footprint requirements because of the device. Applications built with this edition generally don't have any synchronization requirements to a back-end database; for example, think of a mobile parts catalog that's updated each year with a mailed on CD.

A DB2e Enterprise license provides clients with an unlimited number of DB2e Database engines to deploy on their company's mobile devices and enables those devices for remote data synchronization via the accompanying DB2 Everyplace Synchronization Server (DB2e Sync Server); unlimited DB2e database deployements and synchronization services are the key differentiators between DB2e Database and DB2e Enterprise. The DB2e Sync Server handles data synchronization and profile management between devices running DB2e Database and back-end JDBC-enabled servers (for example, DB2, Oracle, Informix, SQL Server, and so on). In addition to this, there is a special DB2 family synchronization adapter that uses SQL replication technology which is free in the distributed version of DB2.

The number of concurrent synchronizations a DB2e Sync Server can support is dependent on the hardware configuration of the underlying server, the associated workload, and data change rates. If you need to scale to handle very large concurrent synchronizations, you can install any Java application server (such as IBM WebSphere Application Server); for smaller workloads, the DB2e Sync Server's built-in server applet should be able to handle most workloads. In addition to this, further scalability and high availability is supported through DB2e Sync Server farm configurations that allow you to cluster a number of DB2e Sync Servers to provide load balancing and high availability services.

Apache Derby

At Linux World 2004, IBM donated the IBM Cloudscape code to the Apache Software Foundation as the Apache Derby database. This open source database packs a lot of power into a 2 MB .JAR file that you can slip into your Java applications at no cost; in addition, it can be freely repurposed for profit use. The Apache Derby SQL API, at donation time, was fully compatible with the DB2 for Linux, UNIX, and Windows database servers, making it a seamless transition if or when you needed to rely on a functionally richer database management system.

Licensing and pricing

DB2e Database is licensed on a per Authorized User (AU) basis. If you have 10 devices which are equally shared across three 8 hour shifts by 30 workers, you would need 30 DB2e Database licenses.

The licensing rules associated with DB2e Enterprise use the Processor Value Metric (PVU) methodology which essentially prices a product based on the PVU rating of the underlying server or virtualization session where the DB2e Sync Server software is installed. This license gives you the right to deploy and synchronize as many DB2e clients as you want; however, all of those devices must connect to the licensed DB2e Sync Server to perform this operation.

Consider it...

If you need a relational engine (and perhaps synchronization services) on a mobile device with limited resources (for example, a mobile phone), you likely need to use DB2e. However, this product could also be considered for occasionally connected mobile users on laptops if their applications don't need advanced features found in a richer DB2 edition (like a trigger) which are not part of DB2e. In fact, you can even put DB2e on a CD-ROM and use it for catalog CD lookups on a mobile employee's laptop or kiosk. DB2e deployments are typically well suited for "black box" solutions; for example, you don't want merchandisers having to collect statistics or build indexes, and so on.

Tell me about something cool running on DB2 Everyplace

The Japanese firm, XING, is a developer of Karaoke services. The company wanted to transform a bar-goer's Karaoke experience into the modern era and help Karaoke bars attract more business by creating a solution to replace cumbersome paper song catalogs that patrons have traditionally used to locate and request songs. Xing introduced a customized purpose-built Karoke PDA - built on DB2e - to improve the Karoke experience and replace their archaic and unwieldy paper song catalog. Now Karaoke participants leverage these PDAs to search song catalogs, in excess of 10,000 songs, using any search criteria they want (album, artist, genre, etc.). What's more, these wanna be American Idols are also shown promotional advertisements and can even wirelessly order food and drinks to their tables through an intuitive touch screen panel! DB2e making it easier for me to make a fool of myself by singing Led Zeppelin's "Fool in the Rain" when perhaps I shouldn't have had that last beer which makes me think I can sing? Not only is that selected song fitting to my would-be performance, but the whole process is just cool!


DB2 Personal Edition... All the power of DB2 with a personal touch

DB2 Personal Edition (DB2 Personal) is a single user database that runs on desktop-based commodity hardware. DB2 Personal is available on Windows- and Linux-based Intel and AMD workstations. DB2 Personal has most of the features that you'll find in DB2 Express, but it can't be used as a central database server because remote clients can't connect to this edition of DB2. However, the DB2 administration tools can connect to it in order to perform remote administration. This edition of DB2 also includes support for 64-bit instances and has no memory limits.

DB2 Personal comes with installation rights to the DB2 Net Search Extender and the Spatial Extender (both are free with all DB2 9 and later editions and packages), as well as SQL-based replication. The replication features can be used in conjunction with a DB2 server for an occasionally connected workforce or to create your own publication/subscription (pub/sub) architecture. DB2 Personal also includes the pureXML feature which was made free for all DB2 editions in the DB2 9.5 release on February 10th, 2009. Finally, although not part of its general availability date; the Oracle Database compatability support should be included in DB2 Personal 9.7 after the release of Fix Pack 1.

Licensing and pricing

DB2 Personal is licensed on a per installation basis, very much like most PC workstation software. If multiple users took turns using the same endpoint where DB2 Personal was installed (obviously they can't be working at the same time since there is only one machine and DB2 Personal isn't a database server), you would still only require one license because it is licensed by installation and not by authorized user. Each installation of DB2 Personal does not have to take into account considerations for RAM, Processor Value Units, and so on. For example, if you have 10 workstations that are equally shared across three eight-hour shifts by 30 workers, you would need 10 DB2 Personal licenses.

Consider it...

DB2 Personal is an excellent choice for applications that require a personal single-user-at-a-time data store for a large number of PC workstations which would each have a copy of DB2 Personal installed on it. Consider DB2 Personal when 100% compatibility with distributed DB2 servers is required. You can also consider DB2 Personal for occasionally connected users that may want to leverage DB2 Personal's built-in SQL replication feature to set up a synchronized data and management environment where mobile workers or remote servers can keep in touch with their enterprise. Of course, this would only be suitable for laptop users and certain workstations, such as those running point-of-sale (POS) applications or sales force automation (SFA) applications among others. Finally, DB2 Personal is often used by developers too - though I personally think the DB2 Express-C package is better suited (and more capable) for developers.

Tell me about something cool running on DB2 Personal

The National Geographic Society (publishers of the famous National Geographic magazine) are using DB2 Personal to power up The Genographic Project - a five-year research effort that uses a sophisticated DB2 database to find patterns in DNA samples collected from hundreds of thousands of volunteers. The goal of this project is to pretty much find answers to age old questions like "Where did we come from?" and "How did we get here?" Teams of field-level researchers, led by 11 principal investigators, are outfitted with ruggedized IBM ThinkPad laptops that use biometric fingerprint scanners to validate each researcher's identity. These ThinkPads are equipped with a customized data collection application which runs on DB2 Personal. This information is collected and stored on these devices and is subsequently fed back from DB2 Personal to a DB2 Enterprise database for DNA analysis. Tracking the history for mankind with DB2? Now that's cool!


DB2 Express-C... It's free to build, develop, and distribute

On January 30th, 2006, IBM took the database market by storm and announced a special free DB2 server package called DB2 Express-C. You'll note that I refer to this as a package, as it's not an 'official' edition of DB2. DB2 Express-C was designed for the partner and development communities, but as you get to know this package, you'll start to realize it has applicability almost anywhere. This in contrast to some competitor free Express offerings that impose strict limits not just on database size (for which DB2 Express-C has no limit), but also for things like autonomics, automated maintenance, the memory bit model, and more. As you investigate this DB2 package, you will become pleasantly surprised. DB2 Express-C is perfect for developers and small and medium deployments, academic communities, and more.

DB2 in the classroom

DB2 is also available under the IBM Academic Initiative program. This program is designed to provide faculty and researchers at institutions of higher learning, worldwide, with a wealth of academic and research offerings, resources, and benefits from IBM. Under this program, DB2 can be used to teach database skills at no charge. Many educational institutions are teaching valuable DB2 skills today; for example, Pennsylvania (Penn) State University and Queen's University (Kingston, Ontario) have curricula that involve DB2 technologies.

The major features that are not included in DB2 Express-C when compared to DB2 editions are:

  • The ability to purchase add-on feature packs which can be used to provide a varying array of extended services. For example, you can't buy the Storage Optimization Feature Pack which provides compression services for tables, temporary tables, indexes, the XML XDA area, and more.

  • You can't cluster two DB2 Express-C data servers together for high availability using clustering software such as HACMP, SteelEye, or the built-in clustering services that are part of some DB2 editions. If you need to set up a database in an highly available environment, you must minimally license DB2 Express. This also implies that none of the features that are part of the High Availability Feature Pack can be used with this DB2 package; namely, HADR, the built-in DB2 clustering technology (provide by IBM Tivoli System Automation for Multi-platforms - TSA MP), advanced copy services, and online table reorganization.

  • There are no replication services.

  • You can't purchase the award winning 24x7 IBM Passport Advantage support model available with purchasable DB2 editions. This is perhaps one of the biggest restrictions with DB2 Express-C (in addition to the inability to cluster these servers for high availability). The DB2 Express-C support model lies within the strength of its community. This community is made up of some of the world's most experienced DBAs from the world's largest companies (and smaller ones too) and a legion of DB2 developers and engineers monitoring a forum of questions that you can tap into for DB2 Express-C help, advice, and support (it kind of resembles the open-source community methodology). To help nurture and grow this community, strong practitioner resources are available on Web sites like developerWorks.

  • DB2 Express-C is only available at the current version. In other words, when a new version of DB2 Express-C is released, older versions are no longer available for download. This caveat requires special attention if you are using ISV software that is certified for a specific release level. For example, when DB2 Express-C 9.7 became generally available, DB2 Express-C 9.5 was removed for download.

If you want to leverage any of the features listed above, you need to minimally purchase a for-fee edition of DB2; for example, DB2 Express.

As of the DB2 9.7 general availability date, and the last time this article was updated, features that are part of the DB2 9.7 Oracle Database compatibility support feature set introduced in the DB2 9.7 release are not available in DB2 Express-C. Note that some features that make the migration of Oracle Database applications to DB2 easier, such as the new Currently Committed isolation level, are available. Specifically, features such as PL/SQL support some and others aren't available in the DB2 Express-C package at this time (refer to the DB2 documentation for more information).

The nice thing about DB2 Express-C is that you'll find a lot of things missing - from a limits perspective: no database size limits, no automated management or tooling limits, no memory model limits (you can use a 64-bit memory model which not all our competitor's Express editions support), and more - you're just using DB2. This just isn't the case when you look beneath the marketing veneer of some competitor Express offerings; however, that's outside the scope of this article.

As of 3Q09, DB2 Express-C is available for servers running Linux, Windows, Mac OS X, or Solaris (x64) operating systems. A complete list of supported platforms is available at the IBM DB2 Express-C download site.

Developers love DB2 Express-C because it allows them to develop and deploy applications free of charge. ISVs love DB2 Express-C because it allows them to develop, deploy, and distribute DB2 free as part of their packaged application. And remember, since DB2 Express-C is DB2, it means that you can deploy these applications on any edition of DB2 and even move them to DB2 for z/OS without application changes (assuming you write your applications to the 95+% common SQL API set for the DB2 family).

In the academia world, educators have an opportunity to extend the value of the IBM Academic Initiative program (see the call-out box in this article) which offers them access to DB2 technology for free by having their students use DB2 Express-C without being tied to specific course curricula. These DB2 practitioners are then able to apply their trade with a no limits, free to build, deploy, and distribute data server. DB2 Express-C is so compelling it received the prestigious VARBusiness's Best of the Midmarket award. Want to test drive DB2 Express-C for yourself? Download a copy today.

Licensing and pricing

DB2 Express-C is free to build, deploy, and distribute. Subsequently there are no license fees associated with this DB2 package. The code is however optimized such that it throttles the DB2 engine to a maximum of 2 GB of memory and 2 cores of processing power for the database on any sized server or virtualization session. For example, if you installed DB2 Express-C on a server that had 8 VMWare sessions that were configured with 4 cores and 4 GB of RAM, each copy of DB2 Express-C would only schedule work on 2 cores and only use up to 2 GB of RAM in each virtualization session.

Changes from DB2 9.5 to DB2 9.7

The DB2 Express-C Fixed Term License (FTL) offering available in DB2 9.5 was removed. The FTL license provided a fixed term support contract as well as a number of other features that weren't available in the base DB2 Express-C package; for example, you could use HADR and create a high availability cluster with DB2 Express-C. Because DB2 Express-FTL so closely resembled DB2 Express, the DB2 Express-C FTL package was removed; however, the FTL offering is now a licensing option for the fuller featured DB2 Express edition.

Consider it...

DB2 Express-C is useful for a wide array of different applications and projects that don't require more than 2 cores of CPU and 2 GB of RAM. Use it to learn DB2, develop DB2 applications, and even deploy production applications (depending on your requirements).

Tell me about something cool running on DB2 Express-C

1C is an icon of the booming Russian economy and is the second largest provider of enterprise applicaton software (EAS) by revenue in Russia. Although they make a really cool flight simulator game, they are mostly known for their accounting and financial management software. 1C leverages all the of no limit power of DB2 Express-C, and there's even a setting in DB2 (automatically set by the 1C installation program) that runs the DB2 engine in "1C-mode". Arktos is an HVAC equipment manufacturer. Arktos wanted to improve overall responsiveness of their systems, automate database backups, and reduce recovery times it would encounter in case of failures. They hired a 1C business partner, BIT, and migrated to 1C:Enterprise running on DB2 Express-C. Arktos’ Oleg Illyin notes that “The installation of the new system allowed us to accelerate most of our business processes which led to significant reduction in time required to complete most business transactions – 5 to 10 times on the average. For example, the time required to process financial month close transactions was reduced from 6 hours to 10-11 minutes. With the help of the database (DB2 Express-C) we now have an automated, fast, and reliable process for recovering data and restoring systems in case of failure of the information system." When the second largest EAS vendor in Russia trusts their critical applications to a free package of DB2, and a 1C customer’s experience was reduced by about 300 minutes to 11 minutes, and the same vendor offers you flight simulator software too: now that’s cool!


DB2 Express Edition... It's simple, secure, and inexpensive

DB2 Express Edition (DB2 Express) is the entry level, fully supported DB2 server that is a specially tailored low cost, full feature, industrial strength, and open industry standards-based relational database. The target users of this edition of DB2 are typically SMBs (small and medium businesses) and ISVs. DB2 Express provides a very attractive entry and competitive price point for businesses that choose to leverage the benefits of servers running on Linux, Solaris x64 (64-bit), and Windows based servers (the previous links take you to the most up to date platform support information).

Because DB2 Express is a full-fledged DB2 server at its core (you won't find all sorts of technical restrictions here as you will with other competitor offerings), DBAs can leverage its built-in autonomic manageability features such as the Self Tuning Memory Manager (STMM), the Configuration Advisor, IBM Data Studio, the Design Advisor, autonomic maintenance plans, automated backup tuning, backup compression, text searches, throttling, and more. Collectively, these services help to increase the performance and reliability of your DB2 solution, while at the same time minimizing administration complexity, required skills, and overall total cost of ownership. As of the time DB2 Express 9.7 became generally available, Oracle compatibility support was not included in this edition; stay tuned for more details (as this article is not an official IBM announcement about the timeframe of this feature's availability), but you should expect to see it around the end of 2009 (Fix Pack 1 time-frame).

DB2 Express supports high availability (HA) architectures like HA clustering technologies and log shipping. The built-in Tivoli System Automation for Multi-platforms (SA-MP) clustering technology, online table reorganizations, support for DB2 Advanced Copy Services (DB2 ACS), and HADR are included with DB2 Express if you license it using the new FTL and SERVER licenses introduced in DB2 Express 9.7 (more on that in a bit).

This edition of DB2 is fully compatible with the rest of the scalable DB2 family of relational databases for Linux, Windows, and UNIX platforms, and you can easily pre-configure DB2 Express to transparently install within your applications for easy deployment. Clients love DB2 Express because all they see is a solution; Business Partners love it because they can trust it to run virtually unattended.

DB2 Express comes with the rights to use the DB2 Net Search Extender and the Spatial Extender (both free with all DB2 editions), as well as SQL-based replication. To further add to the value this edition delivers, pureXML and homogeneous federation are free (they were chargeable components before February 19th, 2009: technically, you need to bind to the DB2 9.5 Fix Pack 3b licensing terms or later to use freely these features). pureXML provides the ability to create pureXML columns in a DB2 Express database and leverage an associated set of XML services like XML Schema validation and registration services, path-based indexing services, XQuery services, and more. pureXML provides services such that no compromises between flexibility (what XML was designed for) and performance (one of the reasons why you want the database server to store your XML) need to be made when storing your XML data. (I've looked very closely at our competitor's XML offerings and I can assure you there is something very pure in pureXML; although it's outside the scope of this article to delve into those details - think "What's under the hood?" Homogeneous federation provides the ability to create nicknames across members of the IBM relational database server family. This allows you to develop applications across DB2 and Informix tables that reside on different platforms without concern to their location. For example, you could use this feature to easily create an application that performs a distributed join of data that resides on a DB2 for i database with one that's running DB2 for Linux on System z, or Informix, and so on. If you wanted to federate a query across non-IBM database servers (for example, Oracle, SQL Server, and so on), or leverage the benefits of queue-based replication, you would need to purchase one of the products from the separately available IBM Information Server suite

One especially nice feature about DB2 Express is that it is 'Enterprise Extensible' through a Feature Pack that you can add on to a DB2 Express installation to enrich it with enterprise services. As of February 10th, 2009, the only Feature Pack available for DB2 Express is the High Availability Feature Pack; what's more, it's only needed if you licensed you DB2 Express server using the PVU or AU model Why? In DB2 9.7, the Express offering get a boost of enterprise vitality with the newly introduced FTL and SERVER licenes and gives you all the features in this feature pack for free (ya, read that twice because it just feels good to say it out loud). I mean, the capabilities provided by HADR are only offered, or offered with major restrictions, on Enterprise-level offerings from our largest competitors.

Taking into account that other popular SMB-targeted databases only have advanced online and management features in their Enterprise-only editions, and combining that with the DB2 Express price point and autonomic capabilities, you may never even know DB2 Express is there - and that includes your pocketbook!

Feature packs were first introduced in the DB2 9 and were introduced to allow an a la carte style approach to data services for applications that don't require large scale servers, yet want to leverage services that are typically found in full blown enterprise solutions. Feature packs must be licensed in the same way as the DB2 server was licensed, namely through an AU license or through the PVU rating of the server or virtualization session upon which it is installed.

To me, the number of feature packs really started to confuse things betwen the DB2 editions, so I'm glad to see them kind of going away for the mid-market servers with DB2. From a historical perspective, in DB2 9 there were a bunch of feature packs for DB2 Express 9. When DB2 9.5 was released, some feature packs were removed (I'm happy to say that the pureXML and Homogeneous Federation Feature Packs were removed and are these technologies are free in every DB2 Express edition). This leaves the High Availability Feature Pack as the sole remaining add-on for DB2 Express 9.7 servers. I get that this sounds like an infomercial, but if you start to consider all the changes to the high availability licensing rules since DB2 9, and the features that are getting put into DB2 Express, and it's really hard not to crack a smile!

The High Availability Feature Pack provides a number of services that enhance the availability of applications running on DB2 Express servers by including support for online table reorganizations, a two node cluster license for the IBM Tivoli SA MP high availability services that's built into DB2, support for DB2 advanced copy services, and High Availability Disaster Recovery (HADR). All of the features in this feature pack are free in DB2 Workgroup and DB2 Enterprise.

HADR is a set of availability services that provide a turnkey database availability and a protection plan that not only provides redundancy across the entire solution stack, but can meet even the most stringent availability service level agreements (SLAs) with a mean-time-to-repair (MTTR) measured in seconds. The best part about HADR is that you set it up with mere clicks of a button. What's more, we are currently working on read-on-standby technology that will allow you to open up a standby HADR database for read-only queries - expect to see that in the very near future (perhaps in the DB2 9.7 Fix Pack 1 time frame).

The online table reorganization (REORG), somteimes referred to as an in-place REORG, is unlike anything else you'll find in other vendor's offerings. It provides a continuous reorganization of a table without the excess disk space associated with the traditional shadow copy approach. It can be started, paused, and throttled; whenever you alter the state of the operation, the benefits are immediate. For example, you could run the reorganization through the evening and then throttle it back during the day or even pause it. Applications accessing the table would immediately see the benefits up to the point to where it was stopped: that's real availability.

Advanced Copy Services (ACS) enables you to leverage the fast copying technology of supported storage devices to perform the data copying part of backup and restore operations. Being able to use the storage device to perform the data copy phase makes backup and restore operations much faster. A backup operation that uses DB2 ACS is called often referred to as a snapshot backup.

DB2 includes a set of built-in clustering services that give you the ability to cluster together two servers for high availability and even automate the failover of an HADR solution. In addition to this, the DB2 installation program can automatically configure this high availability cluster. To make your DB2 high availability solution even more bullet proof, there's a high availability management framework, fronted by the new DB2 High Availability Instance Configuration Utility (db2haicu) that provides a text-based interface that you can use to configure, administer, and synchronize the infrastructure definition of your highly available database topologies in a clustered environment. Now DB2 can collect information about your database instance, your cluster environment, and your cluster manager by querying your system and can keep the whole cluster synchronized when changes occur. For example, adding a new storage container: what you do to one side of the cluster has to be done to the other and DB2 will automate that for you; this is a big deal because this is a tedious and error prone process, and human error is the number one reason for downtime - DB2 helps you here tremendously.

Licensing and pricing

DB2 Express has the following architectural limits with respect to the server or virtualization session upon which it is installed:

  • DB2 Express is limited to 4 GB of memory for the entire database server (the database engine will throttle the amount of memory consumption such that it does not exceed the 4 GB limit). Despite this memory limit, you can install DB2 Express on a server with more than 4 GB of memory - it's the DB2 server software that has the 4 GB limit. For example, if you had two databases on a single server with 8 GB of memory, you could split the 4 GB allocation across those databases (even if they were in different instances) but you could not exceed the 4 GB limit that applies cumulatively to all the instances and databases on your physical server. If you configured 2 VMWare sessions and installed DB2 Express in each of them and the total server memory was 32 GB of RAM, each session's DB2 Express server could address up to 4 GB of RAM (of course, you would have to license each of the DB2 Express servers on this same physical server independently and that is why each copy of DB2 Express could address up to 4 GB of memory as opposed to the first scenario).

  • If you are using the traditional PVU or AU license with DB2 Express, you can only install DB2 Express on a server that has a server rating of 200 or less PVUs. This means that since a dual-core x86 Intel processor is rated at 50 PVUs per core, you could only install DB2 Express on a server running a maximum of two x86 Intel dual core processors; often referred to as a two socket dual core x86 server.

  • If you license your DB2 Express server using the newly introduced FTL or SERVER licenses, you don't have to pay any attention to the PVU or RAM limits of the server since DB2 Express will throttle itself and use no more than 4 cores on the server or 4 GB of RAM.

  • DB2 Express servers are eligible for sub-capacity licensing. In a virtuazlied environment, you pay only for what's used in a specific virtualization session; however, the limits outlined in the previous point apply to each virtualization session. Different platforms and virtualization technologies have different pre-requisites which allow you to use this edition in a sub-capacity enviroment. Click here for details.

A DB2 Express server can be licensed in one of the following ways:

  • Processor Value Unit License (PVU): You must purchase the total number of PVUs associated with the server or virtualization session where the DB2 Express software is installed. This license allows for an unlimited number of users to access the DB2 Express server using any method possible. If you are licensing a warm DB2 Express standby server with PVUs, you license it for 100 PVUs no matter what processor architecture it is using.

  • Authorized User License (AU): You must purchase the total number of authorized users (AUs) that will access the DB2 Express server. An AU is a single individual (in some cases, it can be an application or appliance so long as it doesn't act on behalf of other users) with a specific identity that resides inside or outside your company. These licenses can be used over the Internet (like an online banking application) only if the end user is well known since they must be specifically identifiable for this license. Note the term specific identity. If you are using multiplexing or connection concentration software, these users need to be fully identified before such software is applied to a connection. An AU license is not transferable across work shifts (though it can be transferred for employment turnover) and is only valid for a specific data server.

    You need an AU license for anyone accessing the database; however, no matter how many users are accessing your DB2 Express server, you need to minimally buy 5 AU licenses. For example, if you had 25 users that needed to access two separate DB2 Express servers, you would need to purchase a total of 50 AU licenses for these 25 users: 2 servers x 25 AUs per server. Even if only 12 of these users were ever connected to the data server at one time, all 25 users would still have to be licensed for each server (so you still need 50 AU licenses). If you had a single DB2 Express server and only 3 users, you would still need to purchase 5 AU licenses because of the minimum number of users required for this edition. Finally, when licensing a warm DB2 Express standby server, you license it for 5 AUs if the hot production server is also using the AU licensing model.


  • Fixed Term License (FTL): This new DB2 Express 9.7 licensing option replaces the DB2 Express-C FTL license from the DB2 9.5 release (DB2 Express-C FTL is no longer available as of the DB2 9.7 release). When you license DB2 Express with an FTL license you are effectively buying a yearly support and feature contract for your DB2 Express server. It's easy to calculate the costs of an FTL license. You don't have to concern yourself with the number of users, PVU conversion of the server, cores, or anything: you just buy an FTL license for every server or virtualization session where it's installed. If you have 5 servers, you need 5 licenses - it's that easy. A DB2 Express FTL license is throttled such that its resource consumption won't exceed 4 cores of available processing power or more than 4 GB of the available memory on the server. For example, if you installed DB2 Express on a server that had 8 VMWare sessions that were each configured with 6 cores and 6 GB of RAM, each copy of DB2 Express would only schedule work on 4 cores and only use up to 4 GB of RAM in each virtualization session. You can install DB2 Express FTL on any sized server. The FTL license allows for an unlimited number of users to access the DB2 Express server. One very beneficial thing to note is that a DB2 Express server licensed via the FTL license also comes with the High Availability Feature Pack and all its benefits (such as HADR and more).

  • Server License (SERVER): The DB2 Express SERVER license (also new in DB2 9.7) is procured in the same manner as the FTL license - on a per server basis. The difference between the FTL license and the SERVER license is that the FTL license is a subscription (you are leasing the DB2 Express software) and the SERVER license is a perpetual license (you own the DB2 Express software). A DB2 Express SERVER license has the same optimizations as the FTL license and can be installed on any sized server. The SERVER license allows for an unlimited number of users to access the DB2 Express server. An example of licensing DB2 Express using a SERVER license is the same as the FTL licensed in the previous bullet: you license for each installation, be it on a physical server or in a virtualized session. One very beneficial thing to note is that a DB2 Express server licensed via the SERVER license comes with the High Availability Feature Pack and all its benefits (such as HADR and more).

Figure 3 summarizes the major differences between DB2 Express-C and DB2 Express:


Figure 3. The major difference between DB2 Express-C and DB2 Express
The major difference between DB2 Express-C and DB2 Express-C FTL

Changes from DB2 9.5 to DB2 9.7

The biggest change with DB2 Express between the DB2 9.5 and DB2 9.7 releases are the new FTL and SERVER licensing options available for this edition. I strongly recommend investigating the new DB2 Express FTL or SERVER licenses as they provide the most value. For example, you can leverage HADR on a DB2 Express server without purchasing the High Availability Feature Pack using either of these two licenses. In addition, depending on the processor architecture you are using, you can likely churn out more PVUs worth of compute power as the cores on your processors become more powerful but are no longer subject to increase costs due to their associated PVU processor architecture ratings.

Consider it...

DB2 Express is an entry level DB2 server that should be considered for workloads that won't greatly benefit from more than 4 GB of database memory or more than 200 PVUs of processing power (potentially more with the FTL and SERVER licenses - but nevertheless, a smaller PVU-rated server). This edition isn't well suited for applications that require high scalability features like parallelism or MDC tables since these features aren't part of the base DB2 Express server and aren't additionally available through Feature Packs.

Tell me about something cool running on DB2 Express

Sage, one of the world's most well known providers of end-to-end software that run SMB businesses and beyond, ships their ACCPAC application running on DB2 Express by default. Craig Downing (Vice President of Product Management) notes that "DB2 clearly shows IBM's commitment to the SMB market. In particular, the focus on automating administrative tasks gives small and mid-size business high data reliability without high administrative attention."

When a company that services over 2.8 million small to medium users in North America alone (and over 4.5 million world wide) chooses DB2 Express to handle one of their most popular applications because of its high reliability and low administration requirements...that's cool!


DB2 Workgroup Server Edition... A little more than DB2 Express, but not too much

DB2 Workgroup Server Edition (DB2 Workgroup) is a DB2 server that provides the same features as DB2 Express, but is better suited for high availability workloads (since the components of the High Availability Feature Pack are included in DB2 Workgroup free of charge no matter what licensing option you use) and more demanding workloads that that need more memory and processing power. DB2 Workgroup also has a broader range range of platform deployment options than its DB2 Express counterpart.

DB2 Workgroup is supported on most of the supported distributed platforms where DB2 runs, namely: Linux (except for Linux on System z), Windows, AIX, Solaris (both SPARC and x86), and HP-UX; the previous links take you to the most up-to-date platform support information.

As previously mentioned, DB2 Workgroup is similar to DB2 Express from a functional perspective; however, it includes all of the components in the High Availability Feature Pack for free no matter what licensing method you use. Aside from this, DB2 Express and DB2 Workgroup are only differentiated by RAM and processor capacity restrictions.

Remember, that the DB2 server editions are very much a set of Russian dolls, so features that are part of DB2 Express are part of DB2 Workgroup; for example, STMM, backup compression, pureXML, homogeneous federation, and more are all freely available in DB2 Workgroup too since these technologies are all a part of DB2 Express. There are no Feature Packs available for DB2 Workgroup servers (which is also true if you licensed your DB2 Express server using the FTL or the SERVER license).

One feature that differentiates DB2 Workgroup and DB2 Express is support for many of the Oracle Database compatibility work done as part of the DB2 9.7 release. As of the general availability date of DB2 9.7, DB2 Workgroup has all of the Oracle Database compatibility work done in DB2 9.7 while DB2 Express has a limited set (for example, DB2 Express doesn't have the PL/SQL dialect support). However, as previously mentioned, Oracle Database compatibility support in the distributed version of DB2 is planned for all DB2 editions. Expect to see full Oracle Database compatibility support for DB2 Express in the near future (around DB2 9.7 Fix Pack 1 timeframe).

Licensing and pricing

From a functional core-capability perspective, DB2 Workgroup and DB2 Express are pretty much the same product with considerations for the differences I've mentioned in this section; namely, temporary Oracle Database compatibility differences and the High Availability Feature Pack that you have to purchase if you didn't purchase DB2 Express with an FTL or SERVER license. From a licensing perspective, these DB2 editions differ with respect to the architectural limits upon which it can run, namely:

  • DB2 Workgroup is limited to 16 GB of memory for the entire database server (the database engine will throttle the amount of memory consumption such that it does not exceed its 16 GB limit). Despite this memory limit, you can install DB2 Workgroup on a server with more than 16 GB of memory - it's the DB2 server software that has the 16 GB limit. For example, if you had two databases on a single server with 32 GB of memory, you could split the 16 GB allocation across those databases (even if they were in different instances) but you could not exceed the 16 GB limit that applies cumulatively to all the instances and databases on your physical server. If you configured 2 VMWare sessions and installed DB2 Workgroup in each of them, and the total server had 128 GB of RAM, each session's DB2 Workgroup server could address up to 16 GB of RAM. Of course, you would have to license each of these DB2 Workgroup servers on this same physical server independently since each installation resides in its own virtualization session and this is why you have to license each session thereby giving you two installations with access to 16 GB of server memory.

  • If you are licensing your DB2 Workgroup server using the PVU or AU methodology (see below) the server or virtualization session where you install DB2 Workgroup is limited to 480 PVUs. If you use the new SOCKET license, there is no PVU limit; rather, you are limited to 16 cores across 4 sockets.

  • DB2 Workgroup servers are eligible for sub-capacity licensing. In a virtuazlied environment, you pay only for what's used in a specific virtualization session; however, the limits outlined in the previous bullet apply to each virtualization session. If you license DB2 Workgroup in a virtualized environment using the SOCKET license, the server can't be more than 4 sockets in total; for example, you couldn't virtualize an 8-way server using DB2 Workgroup edition with a SOCKET license, but you could virtualize a 4-way server. Note that this is only for a DB2 Workgroup SOCKET license. If you license DB2 Workgroup using the PVU or AU license, this limit does not exist. Different platforms and virtualization technologies have different pre-requisites which allow you to use this edition in a sub-capacity enviroment. Click here for details.

A DB2 Workgroup server can be licensed in one of the following ways:

  • Processor Value Unit License (PVU): You must purchase the total number of PVUs associated with the server or virtualization session where the DB2 Workgroup software is installed. This license allows for an unlimited number of users to access the DB2 Workgroup server using any method possible. If you are licensing a warm DB2 Workgroup standby server with PVUs, you license it for 100 PVUs no matter what processor architecture it is using.

  • Authorized User License (AU): You must purchase the total number of authorized users (AUs) that will access the DB2 Workgroup server. An AU is a single individual (in some cases, it can be an application or appliance so long as it doesn't act on behalf of other users) with a specific identity that resides inside or outside your company. These licenses can be used over the Internet (like an online banking application) only if the end user is well known since they must be specifically identifiable for this license. Note the term specific identity. If you are using multiplexing or connection concentration software, these users need to be fully identified before such software is applied to a connection. An AU license is not transferable across work shifts (though it can be transferred for employment turnover) and is only valid for a specific data server.

    You need an AU license for anyone accessing the database; however, no matter how many users are accessing your DB2 Workgroup server, you need to minimally buy 5 AU licenses. For example, if you had 25 users that needed to access two separate DB2 Workgroup servers, you would need to purchase a total of 50 AU licenses for these 25 users: 2 servers x 25 AUs per server. Even if only 12 of these users were ever connected to the data server at one time, all 25 users would still have to be licensed for each server (so you still need 50 AU licenses). If you had a single DB2 Workgroup server and only 3 users, you would still need to purchase 5 AU licenses because of the minimum number of users required for this edition. Finally, when licensing a warm DB2 Workgroup standby server, you license it for 5 AUs if the hot production server is also using the AU licensing model.

  • Socket License (SOCKET): The DB2 Workgroup SOCKET license (new in DB2 9.7) is procured by paying a specified price for each socket on the underlying server. For example, if you had a 4 socket 4 core server rated at 800 PVUs, you would only have to buy 4 SOCKET licenses. A SOCKET license allows for an unlimited number of users to connect to a DB2 Workgroup server. When you run DB2 Workgroup with a SOCKET license, you cannot install it on a server with more than 4 sockets. Finally, no matter how many cores resides on a socket, DB2 will throttle usage to a maximum 16 cores based on the server's core enumeration algorithm as defind in the server's BIOS. For example, if you had a 4 socket hexa core server, then DB2 would only schedule work on 16 of the available 24 cores. Your BIOS would determine if it would schedule work on 4 cores of each socket, or fully saturate the 1st and 2nd sockets with work and schedule work on just the remaining 4 cores of the 3rd socket - leaving 1/3 of the 3rd socket and all of the 4th socket completely unutilized. If you take into account the PVU ratings of available cores as of the time this article was last updated, you'll find you can get up to 960 PVUs of processing power using a DB2 Workgroup SOCKET licenses. That's double the amount of PVUs compared to DB2 Workgroup via a PVU or AU license: powerful!

Changes from DB2 9.5 to DB2 9.7

The big licensing and packaging change between DB2 9.5 and DB2 9.7 is the introduction of the new SOCKET license. As you can see, this SOCKET license can deliver a lot more processing power to your DB2 Workgroup environment. For example, with a DB2 Workgroup PVU license, you are limited to 480 PVUs. However, a 4 socket POWER6 server is rated at 960 PVUS, so a SOCKET license let's you effectively double the processing power of a DB2 Workgroup server when compared to its DB2 9.5 counterpart! That said, and as I've previously mentioned, if you use a SOCKET license, you are limited to 4 socket servers even for virtualized environment. For example, if you had an 8 socket POWER6 server that was rated at 1,920 PVUs, you could configure four 480 PVU LPARs and run DB2 Workgroup in each of them (nice consolidation opportunity). With a SOCKET license, you couldn't do this since the server in this example has more than 4 sockets.

Consider it...

DB2 Workgroup can play many roles in a business. It is very appropriate for small to medium businesses that need a full-fledged relational database store that is scalable and available, yet wouldn't benefit greatly from more than 16 GB of memory for the data server or significantly more processing power than the PVU or SOCKET limit allows. Perhaps more than DB2 Express, DB2 Workgroup is especially well suited for enterprise environments that need small servers for line of business applications or for departments that need enterprise services for lower transactional throughput applications. (Think about it, you get enterprise-class availability at mid-market prices, that's unique!)

Tell me about something cool running on DB2 Workgroup

TMW Systems (who recently acquired Maddocks Systems) are makers of a leading logistics software application for trucking companies called TruckMate. TMW/Maddocks made the switch to DB2 a couple of years ago after evaluating both Oracle and SQL Server. Aside from their software supporting most of the shipments for McCain Foods (with a legacy that dates back to the early 1900s), and product shipments for Hudson's Bay (Canada's largest retailer), their software can be found behind some of North America's most successful transportation companies. Bob Maddocks (former CEO of Maddocks Systems - this guy writes his own recursive SQL), really hit home the value they receive with DB2 Workgroup when noting that "The ability for us to service a small trucking company with 10 freight bills a day, to a company with 10,000 freight bills a day, makes scalability very important to us..." and "...the autonomic features within DB2 are going to save me 30-35% of my support costs..." Scalability, low cost, ease of use, incredible cost savings as a result of free autonomics...and ensuring those McCains french fries with the smiley faces are always available at the local grocery store for my daughter Chloe? Hey...now even Chloe thinks DB2 is cool!


DB2 Enterprise Server Edition... unmatched scalability, resiliency, and flexibility

DB2 Enterprise Server Edition (DB2 Enterprise) is IBM's full function premier Web-enabled client/server database server which is available on all the supported distributed platforms where DB2 editions can run, namely: Linux, Windows, AIX, Solaris, and HP-UX (the previous links take you to the most up to date platform support information).

DB2 Enterprise is meant for large and mid-sized departmental servers and provides the most base features and services of any of the DB2 editions. For example, services like intra-query parallelism, MDCs, MQTs, table partitioning, and more are all provided free of charge in this edition of DB2 and aren't even available for DB2 Express and DB2 Workgroup installations.

There are no limits with respect to the amount of RAM you can leverage with this edition of DB2 (in fact, one benchmark result we ran in our labs used almost 4 TB of memory for its buffer pools - that's more RAM than many companies have data). There is also no maximum PVU rating for the underlying server or virtualization session where the DB2 Enterprise software is running.

DB2 Enterprise also has a set of exclusive Feature Packs (they aren't available for any other DB2 edition or package) that are designed to extend enterprise solutions with an even richer set of data services.

Feature Packs for DB2 Enterprise servers

As previously mentioned, DB2 Enterprise has its own set of unique feature packs that provide an extended set of advanced data services for this edition of DB2. Feature packs for DB2 Enterprise must be licensed in the same manner as the DB2 Enterprise server where they will be installed is licensed, namely through an AU or PVU license. However, some feature packs (such as the DB2 Storage Optimization Feature Pack) aren't available via an AU license and must be licensed via a PVU metric. This means that in order to purchase such a feature pack, you'd have to license DB2 Enterprise with a PVU license.

The Feature packs available for DB2 9.7 include:

  • Performance Optimization Feature Pack: Delivers workload management services and a suite of reports and tooling for the performance tuning of DB2 databases.

    DB2 9.5 introduced a set of brand new workload management services that are designed to replace the previous architecture that consisted of DB2 Query Patroller and DB2 Governor; collectively, these services are know as Workload Management, or the DB2 Workload Manager (DB2 WLM). DB2 9.7 extended this architecture with even more ways to explicitly control compute resources among executing work (such as I/O, CPU, buffer pool priority), detect and prevent so called run away or rogue queries, and closely monitor database activity in a number of different ways, just to name a few.

    DB2 WLM provides a viable alternative to previous DB2 workload management solutions that were centered around DB2 Query Patroller and the DB2 Governor. Both of these products are still fully supported in DB2 9.7, and can operate in a DB2 9.7 WLM environment, but they are being phased out over time (and now officially deprecated) and replaced with DB2 WLM.

    The Performance Optimization Feature Pack also includes a limited use version of the Optim Performance Expert called the DB2 Performance Expert. The DB2 Performance Expert simplifies performance management and tuning. It offers DBAs a consistent view into their instances, subsystems, databases, and applications for the DB2 server upon which it is installed. For example, it has a set of pre-canned reports to identify resource shortages and exception conditions in DB2, locking conflicts and deadlocks, as well as applications and SQL statements causing high workloads. DB2 Performance Expert also includes a set of detailed reports about SQL, database and buffer pool activity with trend analysis and what-if hypothesis testing for optimal performance evaluation, and more. What's more, it includes rules of thumb, customizable alert and alarm thresholds, and so on. The DB2 Performance Expert that is part of this feature pack can only be used for DB2 servers running on Linux, UNIX, and Windows, whereas the Optim Performance Expert tool when purchased outside of this Feature Pack can be used across the DB2 family.

  • Advanced Access Control Feature Pack: Provides label-based access control (LBAC) protection services for data stored in a DB2 Enterprise server environment. Using this feature, data stewards can control read and write access for users and groups at the table column and row level. LBAC controls access to table objects by attaching security labels to them. Users attempting to access an object must have its security label granted to them. When there's a match, access is permitted; without a match, access is denied and data is hidden.

    The Advanced Access Control Feature Pack provides a security framework that can be structured around a hierarchical representation of a business entity, an array, tree, or some combination thereof. In addition to this, LBAC can be used to control access to XML documents stored in pureXML columns at the document level.

    I strongly recommend that you read the IBM Security Blueprint to get a strong foundation for understanding data security, the threat landscape, and how to architect effective countermeasures that leverage the power of DB2; LBAC is just one tool in your security toolkit. Additionally, ensure you read the DB2 best practices security document.

  • Geodetic Data Management Feature Pack: Provides spatial analysis with consideration for the curvature of the earth (which is the main differentiator from the free Spatial Extender that's part of every DB2 edition or package). The Geodetic Data Management Feature Pack is used for advanced analytics that need to minimize the distortion caused by projections of the earth's surface. The Geodetic Data Management Feature Pack is especially useful for military defense applications, weather applications, and so on.

    For example, with the DB2 Spatial Extender, you "flatten" the earth using different projections (for example, the Mercator projection) and account for the margin of error in your application (or perhaps the distortion doesn't effect the business problem at all). For example, when trying to locate a caller's house for a 911 response call, being off by 10 feet isn't likely to hurt. In contrast, national security applications such as a missile defense systems need more precise measurements and can't tolerate the distortion caused by "flattening" the earth's surface into LATITUDE and LONGITDE (LAT/LONG) co-ordinates. This is where the Geodetic Data Management Feature Pack is likely needed. In laymen's terms, if distortions like the fact that Greenland is 1/14 the size of Africa (which did not seem to be the case when I think back to my elementary school atlas) would present a problem to your application, then this feature pack is required for spatial analysis.

  • Mobility on Demand Feature Pack: Provides the components of DB2 Everyplace Enterprise at a reduced cost for use on your licensed DB2 Enterprise server. This feature pack allows you to extend the reach of your enterprise data to an unlimited number of mobile devices so long as they synchronize their data over the DB2 Enterprise server for which this feature pack was purchased.

  • DB2 pureScale: On October 11th 2009, IBM announced a revolutionary development for the availability and scalability of OLTP workloads, DB2 pureScale. DB2 pureScale reduces the risk and cost of business growth by providing unlimited capacity, continuous availability, and true application transparency. DB2 pureScale on IBM Power Systems incorporates PowerHA pureScale technology to deliver levels of database scalability and reliability on distributed platforms most closely approaching those of System z. It is designed to meet the most demanding transaction processing needs, both now and in the future. Breakthrough levels of availability are ensured thanks to uninterrupted processing during node failures and a redundant architecture. Adding capacity is painless because DB2 pureScale does not require application changes or database tuning.

    If there is one thing I want you to remember about DB2 pureScale, it's that it provides transparent application scaling. While this term is a favorite of some competitor's marketing campaign, it's just that: marketing. DB2 pureScale has direct lineage to the DB2 for z/OS coupling facility and inherits many of the fundamental characteristics such as a global shared buffer pool, page registration, and locking services. This means that you don't have to build locality of data information into your applications. In addition, there are all sorts of amazing engineering techniques that provide the fastest failure detection recovery times I've ever seen in distributed computing environments as well as near-linear scalability. It's outside the scope of this article to delve into what DB2 pureScale looks like and how it works, but I strongly encourage you learn more about this technology.

    One important thing to note is the DB2 pureScale is only available with DB2 9.8. However, the only reason you would move to DB2 9.8 is to run DB2 pureScale itself. In fact, DB2 9.8 doesn't temporarily support some of the features in DB2 9.7. So if you are running DB2 9.7 today, and don't plan to purchase the DB2 pureScale Feature Pack, then you don't move to DB2 9.8.

    Figure 4 shows an architectural view of a DB2 9.8 pureScale environment:



    Figure 4. A DB2 9.8 pureScale environment
    A DB2 9.8 pureScale environment..

    As you can see in Figure 4, a DB2 pureScale environment is made up of multiple machines. The PowerHA pureScale (CF) member provides central control services for a global buffer pool, lock management, and interested page lists. A DB2 pureScale environment can have one or more PowerHA pureScale servers. Clients connect to members in a DB2 pureScale cluster and these memebers interact with the CF to help process client applications. In a DB2 pureScale environment, you have to license each member with DB2 Enterprise Edition. In addition, you have to purchase the DB2 pureScale Feature Pack for each member in the cluster. You do not have to buy any DB2 licenses or feature packs for the CF servers.

    For example, let's assume you have a DB2 pureScale environment composed of 5 POWER servers rated at 800 PVUs each. Two of these servers are configured to perform the roll of a CF (assume they are duplexed in an active/warm configuration), leaving three other servers to act as a data mambers. In this environment, you would have to puchase 2400 PVUs of DB2 Enterprise (800 PVUs x 3 servers) + 2400 PVUs of DB2 pureScale (800 PVUs x 3 servers). You do not have to license the two CFs with any DB2 Enterprise or DB2 pureScale licenses whatsoever.


  • DB2 Storage Optimization Feature Pack: Provides storage compression services to optimize the performance and footprint of your data. This feature pack provides access to the compression technology first introduced in DB2 9 and subsequently extended in DB2 9.5 and DB2 9.7.

    Deep compression services were first introduced in DB2 9 and caught the database industry by storm. In DB2 9.5, they were expanded to include autonomic dictionary creation. In DB2 9.7, compression gets rounded out with support for temporary table compression, pureXML XDA compression, index compression, and more. These services provide compression from disk to the buffer pool and yields impressive potential for memory and disk savings (internal tests average about around 65%+ disk savings with these services for some schemas) and performance speed-up for I/O-bound systems (and what data warehouse systems aren't I/O bound; it's easy to remove a memory or CPU bottleneck after all). But there's more.

    Consider for a moment the other implicit benefits that arise from compression. Trust me, it extends beyond disk savings. Think about all those backups that you're mandated to keep - not only will they be smaller, they'll run faster because you're backing up less data pages. Think about your Q/A and test environments. Consider for a moment that if the data is compressed on disk and in the memory buffers, the extra data you could get into those buffers. This means not only will performance likely improve, but maintenance operations like RUNSTATS and REORG could run faster too because they are page-based operations as well. Take all of this into account and consider the fact that DB2 can support over 2,300 rows on a single data page (versus the 255 limit in DB2 8) and you've got a pretty compelling I/O bottleneck remover on your hands. Finally, consider the environment chargeback for your storage; not only will it save you money, it'll reduce the ecological footprint of your IT solution. The point here is that compressing your data is more than just saving disk space - and it's environmentally friendly too! The Storage Optimization feature is included free of charge with the SAP OEM DB2 contract as well as InfoSphere Warehouse Enterprise Edition, InfoSphere Balanced Warehouse, or an IBM Smart Anlaytics System. With DB2 Enterprise, this feature pack can only be licensed via the PVU l icensing methodology.

Licensing and pricing

You can license DB2 Enterprise in one of two ways:

  • Processor Value Unit License (PVU): By purchasing the total number of PVUs associated with the server or the virtualization session where you plan to run the software -- this will allow for an unlimited number of users and devices to access the DB2 Enterprise server. Different platforms and virtualization technologies have different pre-requisites which allow you to use this DB2 edition in a sub-capacity enviroment. If you are licensing DB2 Enterprise as a warm standby (for example, in an HADR configuration), you only need to license it for 100 PVUs.

  • Authorized User License (AU): By purchasing the total number of AUs that will access a specific DB2 Enterprise server (refer to the DB2 Express section for more information on the definition of an AU). DB2 Enterprise has a minimum set of AU users that must be licensed, just like DB2 Express and DB2 Workgroup. However, instead of the minimum 5 AUs per server that's associated with DB2 Express and DB2 Workgroup, you need to minimally license DB2 Enterprise with 25 AUs for every 100 PVUs for which your server or virtualization session is rated. It should be noted that for every installation there is a break even point at which time it makes more sense to license the server via the PVU metric. If you are licensing DB2 Enterprise as a warm standby, for example, in an HADR configuration, you only need to license it for 25 AUs (the required minimum for 100 PVUs).

    Let's assume you're you're running DB2 Enterprise on an IBM Power 5 QCM-based System p server with a single quad core processor. In this case, you would at least have to purchase 50 AU licenses because the total PVU rating for this server is 200 PVUs (200 PVUs/100 PVUs = 2 x 25 AUs). If you are running DB2 Enterprise on a single Sun Niagara server that had a single hexacore processor, you would at least have to purchase 50 AU licenses if the PVU rating for this server is 180 PVUs and when you cross a 100 PVU threshold you round up to the next tier to establish the minimum number of users.

    As another example, if you had 75 users that needed to access two separate DB2 Enterprise servers, you would need to purchase a total of 150 AU licenses for these 75 users: 2 servers x 75 AUs per server = 150 (75 for each server). However, if both of those servers had 4 dual core Intel XEON-based processors, you would need a minimum of 200 AU licenses (100 for each server) because of the minimum number of AUs that accompany DB2 Enterprise (25 users for every 100 PVUs on the server): ((( 4 sockets x 2 cores = 8 cores) x 50 PVUs per core = 400 PVUs)/100 PVUs = 4) x 25 AUs = 100 x 2 servers = 200 AUs.

Changes from DB2 9.5 to DB2 9.7

There are no real licensing or packaging changes between DB2 Enterprise 9.5 and DB2 Enterprise 9.7.

Consider it...

DB2 Enterprise should be strongly considered for any applications that require limitless flexibility (for example, the use of table partitioning) and scalability (for example, there are no PVU or RAM limits). It should also be leveraged when rich extensions such as advanced security control services (like label-based access control), storage optimization services (like compression), transparent scale-out active/active OLTP clusters (DB2 pureScale), and so on are needed. With DB2 Enterprise, there are few capacity planning considerations outside of the optimal balance of resources and a full gambit of features available for use.

Tell me about something cool running on DB2 Enterprise

Bang & Olufsen (B&O) is perhaps one of the most well known high end audio equipment manufacturers in the world today. The company, founded in Denmark by Peter Bang and Sven Olufsen in 1925, is not only well known for their engineering and sound quality, but the sheer beauty of their products. B&O moved their SAP implementation onto DB2. Peter Munk (head of B&O IT) notes: "With IBM, we no longer have performance issues, and we are free to focus on developing the next stage of our business." Without a doubt, the company with the coolest stereo equipment designs in the world using DB2... now that's cool!


For developers only...

For application development and testers, a special offering called Database Enterprise Developer's Edition (DEDE) is available. This is a reduced price offering that gives individuals access to most of the DB2 features and editions, as well as a set of Informix products and DB2 Connect for the purposes of development, evaluation, demonstration, and testing of application programs. It is licensed on a per user basis. Depending on the number of users you have, it may or may not be a more cost effective solution for the processes that make up the application development lifecycle.

You can use DEDE for development, quality assurance (Q/A), user acceptance, and other non-production environments. What's more, a developer or tester with a DEDE license can connect to any non-production DB2 server which makes it incredible effective and a big time budget saver for your environments.


Wrapping it up...

As you can see, DB2 not only runs on many platforms, but also has a flexible edition structure that allows you to find the right price point and services for the right solution. For DB2 9.7, you'll find all the editions offer a lot more; considering the state of the economy, you can never go wrong with more value.

Scaling DB2 is seamless from edition to edition, and this gives you the ability to leverage your DB2 investment as your business grows. Whether you are an SMB tracking sales over the Internet, a mobile solutions provider, or a Fortune 500 company trying to analyze sales data to put the right products into the right hands at the right time, there is an edition of DB2 that's right for you!


Resources

Learn

Get products and technologies

  • Download a free trial version of DB2 Enterprise 9.7.

  • Now you can use DB2 for free. Download DB2 Express-C, a no-charge version of DB2 Express Edition for the community that offers the same core data features as DB2 Express Edition and provides a solid base to build and deploy applications.

  • Build your next development project with IBM trial software, available for download directly from developerWorks.

Discuss

About the author

Paul Zikopoulos photo

Paul C. Zikopoulos, BA, MBA is the Program Director for the DB2 Evangelist team at IBM. He is an award-winning writer and speaker with more than 15 years of experience with DB2. Paul has written more than 300 magazine articles and 13 books on DB2 including, DB2 9.7: A Tour of Cost-Slashing New Features, Information on Demand: Introduction to DB2 9.5 New Features, DB2 9 Database Administration Certification Guide and Reference (6th Edition), DB2 9: New Features, Information on Demand: Introduction to DB2 9 New Features, Off to the Races with Apache Derby, DB2 Version 8: The Official Guide, DB2: The Complete Reference, DB2 Fundamentals Certification for Dummies, DB2 for Dummies, and A DBA's Guide to Databases on Linux. Paul is a DB2 Certified Advanced Technical Expert (DRDA and Clusters) and a DB2 Certified Solutions Expert (BI and DBA). In his spare time, he enjoys all sorts of sporting activities, including running with his dog Chachi, avoiding punches in his MMA training, and trying to figure out the world according to Chloë – his daughter. You can reach him at: paulz_ibm@msn.com.

Comments (Undergoing maintenance)



Trademarks  |  My developerWorks terms and conditions

Help: Update or add to My dW interests

What's this?

This little timesaver lets you update your My developerWorks profile with just one click! The general subject of this content (AIX and UNIX, Information Management, Lotus, Rational, Tivoli, WebSphere, Java, Linux, Open source, SOA and Web services, Web development, or XML) will be added to the interests section of your profile, if it's not there already. You only need to be logged in to My developerWorks.

And what's the point of adding your interests to your profile? That's how you find other users with the same interests as yours, and see what they're reading and contributing to the community. Your interests also help us recommend relevant developerWorks content to you.

View your My developerWorks profile

Return from help

Help: Remove from My dW interests

What's this?

Removing this interest does not alter your profile, but rather removes this piece of content from a list of all content for which you've indicated interest. In a future enhancement to My developerWorks, you'll be able to see a record of that content.

View your My developerWorks profile

Return from help

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=Information Management
ArticleID=426980
ArticleTitle=Which distributed edition of DB2 9.7 is right for you? (With a dash of DB2 9.8 pureScale)
publish-date=10292009
author1-email=paulz_ibm@msn.com
author1-email-cc=

My developerWorks community

Tags

Help
Use the search field to find all types of content in My developerWorks with that tag.

Use the slider bar to see more or fewer tags.

Popular tags shows the top tags for this particular content zone (for example, Java technology, Linux, WebSphere).

My tags shows your tags for this particular content zone (for example, Java technology, Linux, WebSphere).

Use the search field to find all types of content in My developerWorks with that tag. Popular tags shows the top tags for this particular content zone (for example, Java technology, Linux, WebSphere). My tags shows your tags for this particular content zone (for example, Java technology, Linux, WebSphere).

Special offers