| Craig S. Mullins
The DBA Corner
by Craig S. Mullins
One of the many tasks that
DBAs must handle is choosing the correct DBMS to use for each new
application being developed. Now, that might sound simple to the
uninitiated but there are many aspects to selecting the proper type of
DBMS. It is not enough to simply say something like, “Our company
uses DB2 (or Oracle, or whatever) for all database implementation.”
This is so because there are different types of each DBMS for
different architectures and purposes.
architecture for the DBMS environment is very critical to the success
of the database applications being built. One wrong choice or poorly
implemented component of the overall architecture can cause poor
performance, downtime, or unstable applications.
When mainframes dominated
enterprise computing, the DBMS architecture was a simpler concern.
Everything ran on the mainframe and that was that. But today the IT
infrastructure is distributed and heterogeneous. Even for a mainframe
DBMS implementation, the overall architecture will likely consist of
multiple platforms and interoperating pieces of system software. The
final architecture must be based on the business needs of the
organization. It should not be made by a single person or group, but
by a team consisting of business experts and IT experts. Business
experts should include representatives from various lines of business
as well as accounting and legal for software contract issues. IT
experts should include database resource management representatives
including data administrators, database administrators, and system
administrators. But the selection process should also include other IT
professionals such as members
of the networking group, operating system experts, operations control
personnel, programming experts, and any other interested parties
(middleware experts, message queuing experts, etc.).
Furthermore, you need to
be sure that the DBMS you select is appropriate for the nature and
type of processing you plan to implement. There are basically four
levels of DBMS architecture that can be selected: enterprise,
departmental, personal, and mobile.
An enterprise DBMS
is designed for scalability and high performance. It must be capable
of supporting very large databases, a large number of concurrent
users, and multiple types of applications. The enterprise DBMS will
run on a large-scale machine, typically a mainframe or a high-end
Unix, Linux, or Windows NT machine. Furthermore, an enterprise DBMS
offers all of the “bells and whistles” available from the DBMS
vendor. Multi-processor support, support for parallel queries,
clustering, and other advanced DBMS features will be core components
of an enterprise DBMS.
A departmental DBMS,
sometimes referred to as a workgroup DBMS, supports small to medium
sized workgroups within an organization, and typically runs on a Unix,
Linux, or Windows 2000 (or NT) server. The dividing line between a
departmental database server and an enterprise database server is
gray. Hardware and software upgrades often can allow a departmental
DBMS to tackle tasks that previously could only be performed by an
enterprise DBMS. The steadily falling cost of departmental hardware
and software components further contributes to lowering TCO and
helping to enable a workgroup environment to scale up to serve the
A personal DBMS is
designed to be used by a single user, typically on a low- to
medium-powered PC platform. Lotus Approach, Microsoft Access and dBase
are examples of personal database software. Of course, the major DBMS
vendors also market personal versions of their more high-powered
solutions, Personal Oracle and DB2 Everyplace for example. Sometimes
the low cost of a personal DBMS causes misguided attempts to choose a
personal DBMS for a departmental or enterprise solution. But do not be
lured by the low cost. A personal DBMS product is suited only for
small scale projects and should not be used to deploy multi-user
Finally, the mobile
DBMS is a specialized version of a departmental or enterprise
DBMS. It is designed to be used by remote users who are not usually
connected to the network. The mobile DBMS enables local database
access and modification on a laptop or handheld device, such as a Palm
PDA or PocketPC. Furthermore, the mobile DBMS provides a mechanism for
synchronizing remote database changes to a centralized, enterprise or
departmental database server.
A DBMS designed for one
type of processing will likely be ill-suited for other uses. For
example, a personal DBMS is not designed for multiple users and an
enterprise DBMS generally will be too complex for single users. Be
sure to understand the difference between enterprise, departmental,
personal, and mobile DBMS software, and choose the appropriate DBMS
for your specific data processing needs. Sometimes, you may need to
choose multiple DBMS types – that is, a DBMS for each level, with
usage to be determined based on the needs of each development project.
If your organization requires DBMS solutions at different levels, whenever possible favor the selection of a group of DBMS solutions from the same vendor. Doing so will minimize differences in access, development, and administration. For example, favor Personal Oracle for your single user DBMS needs if your organization uses Oracle as the enterprise DBMS of choice.
Trends and Applications, June 2002.
© 2002 Craig S. Mullins, All rights reserved.