- 1.1 Brief History of DB2
- 1.2 The Role of DB2 in the Information On Demand World
- 1.3 DB2 EDITIONS
- 1.4 DB2 Clients
- 1.5 Try-and-Buy Versions
- 1.6 Host Connectivity
- 1.7 Federation Support
- 1.8 Replication Support
- 1.9 IBM WebSphere Federation Server and WebSphere Replication Server
- 1.10 Special Package Offerings for Developers
- 1.11 DB2 Syntax Diagram Conventions
- 1.12 Case Study
- 1.13 Summary
- 1.14 Review Questions
1.3 DB2 EDITIONS
DB2 for Linux, UNIX, and Windows (sometimes referred to as LUW) is developed using the C/C++ language. More than 90 percent of the code is common among these platforms. The remaining code is unique to take full advantage of the underlying platform architecture; however, the database functionality on all of these platforms is the same.
Like any other C/C++ application, DB2 is written in separate modules—.c/.C source files—that have been separately compiled to obtain object files (.o files). These object files are later linked to obtain an executable file. Figure 1.7 shows a simplified view of how each edition is built.
Figure 1.7 How DB2 editions build on top of each other
As you can see in Figure 1.7, each edition (other than DB2 Everyplace, which is not shown in the figure) builds on top of the other by linking modules or object files that contain additional functionality. The core of the DB2 code is common across all editions, which greatly benefits application development. For example, if you are developing an application for DB2 Personal, this application will also work on DB2 Express-C, DB2 Express, DB2 Workgroup, and DB2 Enterprise on any of the supported platforms.
From the above explanation, it should be clear that the DB2 LUW editions are mainly packaging and licensing distinctions that let you choose the appropriate features or functions you need for the right price. The underlying technology is always DB2, so choose the appropriate edition based on the features and functions you need.
Figure 1.8 illustrates the different editions and the types of servers they typically run on. By default, DB2 takes advantage of all the processing power it is given. The figure also shows that DB2 is a scalable product. With the exception of DB2 Everyplace, the functions, features, and benefits of an edition shown on the bottom of the figure are included in each subsequent edition as you move up the figure. The following sections provide more detail on the functionality of each edition.
Figure 1.8 DB2 editions
1.3.1 DB2 Everyplace Edition
As its name implies, the DB2 Everyplace edition (DB2 Everyplace) can run anywhere, anytime, and in all kinds of small devices, such as personal digital assistants (PDAs), handheld computers, embedded devices, and laptops. DB2 Everyplace, though only about 350K in size, is a true relational database that uses a subset of the DB2 server SQL functionality. If you know how to code an application for a DB2 server edition, you know how to code for DB2 Everyplace. Applications can be developed using ODBC, CLI, JDBC, and .NET.
Typically, users of DB2 Everyplace store information in the mobile database and later replicate it to a back-end database server using the DB2 Everyplace Sync Server installed on another machine.
This edition supports the following operating systems that run on mobile devices:
- Embedded Linux
- Linux distributions
- J2ME devices
- Palm OS
- QNX Neutrino
- Symbian OS
- Microsoft Windows 32-bit operating systems
- Windows Mobile for Pocket PC, Windows CE.NET
DB2 Everyplace can be licensed as a fully synchronized environment or as a standalone embedded database.
1.3.2 DB2 Personal Edition
The DB2 Personal Edition (DB2 Personal) is a complete product for a single user. It has all the functionality of a database server, including the administration graphical tools. It also comes with the Spatial Extender, and the Net Search Extender. While this edition can also be used as a client to connect to other DB2 servers, it does not support database incoming connections from other computers. Only Windows and Linux operating systems, which are the most commonly used platforms in personal computers, support DB2 Personal.
Figure 1.9 shows DB2 Personal installed on Machine 2. The local DB2 client (the client component of Machine 2) can connect to a database in the DB2 Personal server on Machine 2, but the remote DB2 client in Machine 1 cannot connect to a database in the server on Machine 2 because DB2 Personal does not accept remote (inbound) connections. The figure also shows DB2 Personal on Machine 2 as the remote client to other DB2 server editions installed on machines 3, 4, and 5.
Figure 1.9 DB2 Personal as a (local) server and a remote client
1.3.3 DB2 Express-C
DB2 Express-C is a version of the DB2 Express edition for the community. Businesses developing an application that needs to connect to a data server can use DB2 Express-C for free. Note that we refer to it as a version: It is not an edition of DB2 because it is free. Also note that the core code of DB2 Express-C is the same as the other DB2 editions as shown in Figure 1.7. DB2 Express-C can be used in production or in a commercial setting. In addition, businesses can embed and distribute DB2 Express-C as part of their application also for free. DB2 Express-C does not impose limits on the database size, the number of instances per server, or the number of users.
The supported operating systems for this version are Windows and Linux (on Intel and AMD), running on a system with any amount of processors and memory, however the total resource utilization by all instances of DB2 Express-C on a given system cannot exceed 2GB of RAM and 2 processor cores on 32- or 64-bit SMP hardware computers. An optional renewable 12-month subscription license can be purchased for DB2 Express-C to obtain IBM DB2 Technical support (24/7), and also support for the SQL replication and the High Availability and Disaster Recovery (HADR) feature. This subscription edition of DB2 Express-C is licensed to run on up to two dualcore processors and no more than 4GB of memory. Without this license, the product is free but without the mentioned features, and with support provided only through a free community-based online forum. For further details, refer to the DB2 Express Web site: www.ibm.com/db2/express.
1.3.4 DB2 Express Edition
The DB2 Express Edition (DB2 Express), a low-cost, full-function data server, is ideal for a business that requires a database, but has minimal in-house database skills. This edition provides the same support as DB2 Workgroup, but it also features simple installation, enhanced self-management, and other ease-of-use features. Businesses developing applications that require a database can embed DB2 Express as part of their solution.
The supported operating systems for this edition are Windows and Linux (on Intel and AMD), running at most on 4GB of RAM and two CPUs, which can be dual core on 32- or 64-bit SMP hardware computers.
DB2 Express can be licensed per user (ideal for applications with just a few users) or per processor value unit (ideal for applications with many users, like a Web application).
DB2 Express can be extended by purchasing several Feature Packs. A Feature Pack includes several features, and can be purchased in the same manner as a DB2 data server license. There are available Feature Packs for workload management, performance optimization, high availability, pureXML, and homogeneous federation.
1.3.5 DB2 Workgroup Server Edition
The DB2 Workgroup Server Edition (DB2 Workgroup) is a full-function data server designed for deployment in a department or small business environment. Linux, UNIX, and Windows platforms support DB2 Workgroup running on at most 16GB of RAM and four CPU servers with a 32- or 64-bit operating system. It can be licensed per user or per processor value unit. All the Feature Packs mentioned for DB2 Express apply also to DB2 Workgroup.
1.3.6 DB2 Enterprise Server Edition
The DB2 Enterprise Server Edition (DB2 Enterprise) is the most complete data server offering. It provides unparalleled scalability, accessibility, and extensibility features, and is the edition of choice for most enterprises. Some of the features included in the Feature Packs available with DB2 Express or DB2 Workgroup are free with DB2 Enterprise. DB2 Enterprise has its own Feature Packs as well. For example, to use the database partitioning feature (DPF) you need to purchase the Feature Pack "Database Partitioning Feature for DB2 Enterprise." DPF allows you to partition your data within a single server or across multiple servers running the same operating system. This means that your databases can grow to sizes that are limited only by the number of servers available.
DB2 Enterprise can be used in SMP systems, and DB2 Enterprise with DPF can be used in either SMP or clustered server systems. The supported operating systems are Linux, UNIX, and Windows.
Table 1.5 obtained at the time of publication from the DB2 for Linux, UNIX, and Windows main Web page at http://www-306.ibm.com/software/data/db2/9/, provides a comparison of the DB2 server editions.
Table 1.5. Comparing the DB2 Editions
Find the DB2 9 edition that meets your needs |
|||
DB2 Express |
DB2 Workgroup |
DB2 Enterprise |
|
Function |
DB2 Express is a full-function hybrid data server, which provides very attractive entry-level pricing. |
Includes all of the features of DB2 Express with scalability to larger servers. |
Includes all of the features of DB2 Workgroup plus features required to provide the scalability to handle high user loads and provide 24x7x365 availability, including: High Availability Disaster Recovery (HADR) |
Simple installation including silent installation capability |
Tivoli System Automation |
||
Self managing |
Table Partitioning |
||
Optimized interfaces and tools for application developers |
Multi-dimensional data clustering |
||
Supports wide array of development paradigms |
Materialized Query Tables |
||
Minimal disk space requirements |
Full intra-query parallelism |
||
Worldwide 24x7 Service and Support |
Connection concentrator |
||
Customizable |
Expandable with pureXML and optional enterprise class features to preserve and improve performance, workload management, and high availability |
Expandable with pureXML and optional enterprise class features to preserve and improve performance, workload management, and high availability |
Expandable with pureXML and advanced features like storage optimization, performance optimization, advanced access control, scale-out clustering, geodetic data, and more |
Scalable |
2 CPUs / 4GB RAM maximum (may run on machines with more than 4GB) |
4 CPUs / 16GB RAM maximum |
Unlimited |
Platforms |
Linux, Solaris x86 and Windows |
Linux, UNIX, and Windows |
Linux, UNIX, and Windows |
Pricing Metrics |
Authorized User (Min. 5 per server), or Per Processor |
Authorized User (Min. 5 per Server), or Per Processor |
(Authorized User (Min. 25 per CPU) or Per Processor |