Phase 3: Choice of a DBMS
The choice of a DBMS is governed by a number of factors—some technical,
others economic, and still others concerned with the politics of the
organization. The technical factors focus on the suitability of the DBMS for
the task at hand. Issues to consider are the type of DBMS (relational,
object-relational, object, other), the storage structures and access paths that
the DBMS supports, the user and programmer interfaces available, the types of
high-level query languages, the availability of development tools, the ability
to interface with other DBMSs via standard interfaces, the architectural
options related to client-server operation, and so on. Nontechnical factors
include the financial status and the support organization of the vendor. In
this section we concentrate on discussing the economic and organizational
factors that affect the choice of DBMS. The following costs must be considered:
Software acquisition cost. This is
the up-front cost of buying
the software, including programming
language options, different interface options (forms, menu, and Web-based
graphic user interface (GUI) tools), recovery/backup options, special access
methods, and documentation. The correct DBMS version for a specific operating
system must be selected. Typically, the development tools, design tools, and
additional language sup-port are not included in basic pricing.
Maintenance cost. This is the recurring cost of receiving
standard maintenance service from the vendor and for keeping the DBMS version
up-to-date.
Hardware acquisition cost. New
hardware may be needed, such as additional memory, terminals, disk drives and
controllers, or specialized DBMS storage and archival storage.
Database creation and conversion
cost. This is the cost of either
creating the database system from
scratch or converting an existing system to the new DBMS software. In the
latter case it is customary to operate the existing system in parallel with
the new system until all the new applications are fully implemented and tested.
This cost is hard to project and is often underestimated.
Personnel cost. Acquisition of DBMS software for
the first time by an organization is
often accompanied by a reorganization of the data processing department.
Positions of DBA and staff exist in most companies that have adopted DBMSs.
Training cost. Because DBMSs are often complex
systems, personnel must often be
trained to use and program the DBMS. Training is required at all levels,
including programming and application development, physical design, and
database administration.
Operating cost. The cost of continued operation
of the database system is typically
not worked into an evaluation of alternatives because it is incurred regardless
of the DBMS selected.
The benefits of acquiring a DBMS are not so easy to measure and
quantify. A DBMS has several intangible advantages over traditional file
systems, such as ease of use, consolidation of company-wide information, wider
availability of data, and faster access to information. With Web-based access,
certain parts of the data can be made globally accessible to employees as well
as external users. More tangible benefits include reduced application development
cost, reduced redundancy of data, and better control and security. Although
databases have been firmly entrenched in most organizations, the decision of
whether to move an application from a file-based to a database-centered
approach still comes up. This move is generally driven by the following
factors:
Data complexity. As data relationships become more
complex, the need for a DBMS is
greater.
Sharing among applications. The need
for a DBMS is greater when applications share common data stored redundantly
in multiple files.
Dynamically evolving or growing data. If the
data changes constantly, it is easier
to cope with these changes using a DBMS than using a file system.
Frequency of ad hoc requests for data. File systems are not at all suitable
for ad hoc retrieval of data.
Data volume and need for control. The sheer
volume of data and the need to
control it sometimes demands a DBMS.
It is difficult to develop a generic set of guidelines for adopting a
single approach to data management within an organization—whether relational,
object-oriented, or object-relational. If the data to be stored in the database
has a high level of complexity and deals with multiple data types, the typical
approach may be to consider an object or object-relational DBMS. Also, the benefits of
inheritance among classes and the corresponding advantage of reuse favor these
approaches. Finally, several economic and organizational factors affect the
choice of one DBMS over another:
Organization-wide adoption of a certain philosophy. This is often a dominant factor affecting the acceptability of a
certain data model (for example, relational versus object), a certain vendor,
or a certain development methodology and tools (for example, use of an
object-oriented analysis and design tool and methodology may be required of all
new applications).
Familiarity of personnel with the system. If the programming staff within the
organization is familiar with a particular DBMS, it may be favored to reduce
training cost and learning time.
Availability of vendor services. The
availability of vendor assistance in solving
problems with the system is important, since moving from a non-DBMS to a DBMS
environment is generally a major undertaking and requires much vendor
assistance at the start.
Another factor to consider is the DBMS portability among different types
of hard-ware. Many commercial DBMSs now have versions that run on many
hardware/software configurations (or platforms).
The need of applications for backup, recovery, performance, integrity, and
security must also be considered. Many DBMSs are currently being designed as total solutions to the
information-processing and information resource management needs within
organizations. Most DBMS vendors are combining their products with the following
options or built-in features:
Text editors and browsers
Report generators and listing
utilities
Communication software (often
called teleprocessing monitors)
Data entry and display features
such as forms, screens, and menus with automatic editing features
Inquiry and access tools that can
be used on the World Wide Web (Web-enabling tools)
Graphical database design tools
A large amount of third-party
software is available that provides added functionality to a DBMS in each of
the above areas. In rare cases it may be preferable to develop in-house
software rather than use a DBMS—for example, if the applications are very well
defined and are all known beforehand.
Under such circumstances, an in-house custom-designed system may be appropriate
to implement the known applications in the most efficient way. In most cases,
however, new applications that were not foreseen at design time come up after system implementation. This is
precisely why DBMSs have become very popular: They facilitate the incorporation
of new applications with only incremental modifications to the existing design
of a database. Such design evolution—or schema
evolution—is a feature present to various degrees in commercial DBMSs.
Related Topics
Privacy Policy, Terms and Conditions, DMCA Policy and Compliant
Copyright © 2018-2023 BrainKart.com; All Rights Reserved. Developed by Therithal info, Chennai.