Database
Comparison and Selection Criteria
Home
> Software > Database Selection
Jump
to a Database Management System (DBMS):
IBM
DB2 Universal Database | Microsoft Access 2002
| Microsoft SQL Server 2000 | MySQL
AB MySQL 4.0 | Oracle 9iDB
Selection
for Database Management System
After
reviewing the available options, the following database management systems
(DBMS) have been selected for the project:
Prototype
Database Management System:
Microsoft SQL Server 2000 Developer Edition
Production Database Management System: MySQL AB MySQL
4.0 Max
MySQL
was selected primarily because it is free. If its reliability proves to
be problematic, another DBMS will need to be used. SQL Server was selected
for the prototype system because of Sean's familiarity with and prior
ownership of the software.
Selection
Criteria
To
implement an inventory management system (IMS), a database must be employed
to track inventory and user status. Many different database management
systems exist, with a variety of prices and features. Selecting a particular
DBMS determines the particular features and limitations present in the
final system.
In
no particular order, criteria for selecting a DBMS for the inventory management
system are:
Ease
of Use: The
DBMS must present a front-end to the user that is clear, consistent
and intuitive. If the DBMS itself does not provide such a front-end,
another component of the IMS must provide it.
Ease of Administration: The DBMS must be easy to administer.
An authenticated user should be able to make changes quickly and easily
to any aspect of the DBMS, even those changes not possible or allowed
through the users' front-end.
Reliability:
The DBMS must be able to safeguard its data in the face of hardware
or software
failure. The ACID test is often used to check
a DBMS against minimum reliability standards.
Cost:
The
cost of the DBMS must not exceed its allocation in the project budget.
Security:
The
DBMS must be able to authenticate and discriminate between various levels
of user privilege ranging from no access to full administratrive rights.
If the DBMS is not capable of this level of security, another component
of the IMS must provide it.
Compatibility:
The
DBMS must be able to function with the other hardware and software components
of the IMS.
Minimum
Requirements:
The DBMS must be able to function on the computer platform used to implement
the IMS. If this platform is shared with other tasks, the DBMS must
not burden the platform to the point of disrupting those tasks.
Familiarity
with Database: If the structure and operation of the DBMS is
already known, then the time otherwise spent learning the DBMS can instead
be focused toward design. In addition, prior experience with the DBMS
will enable the designer to better avoid coding errors and the associated
waste of debugging time. Unless otherwise noted, this is Sean DonCarlos's
experience with the DBMS.
Each
DBMS is described below. An quick-comparison table will be prepared and
available here shortly. |
IBM
DB2 Universal Database 7.2 (back
to top) |
DBMS
Type: |
Transactional
relational database server |
Cost: |
$25,000
(approximate) |
Hardware
Requirements: |
Dedicated
server. |
Software
Requirements: |
One
of the following: Windows 2000 Server, Windows .NET Server
2003, Linux (kernel 2.4 or later), OS/2 Warp 3 or later, AIX
5L, HP UX Version 11/11i or later, Solaris 5.7 or later. |
Advantages: |
Well-known
and well-documented DBMS capable of enterprise-level data
management, supports all major database access standards. |
Disadvantages: |
Ridiculously
expensive for this project. |
Database
Limitations: |
None
relevant. |
|
Yes. |
Reliability: |
Supports
failover clusters, point-in-time recovery and other enterprise-class
reliability features. |
Security: |
User
authentication, transaction logging |
Standards: |
SQL99,
SQL/J, XML, ODBC, JDBC, J2EE 1.3 |
Source: |
|
Comments: |
IBM
DB2 is a well-known DBMS that, along with Oracle 9iDB,
sets the standard for enterprise-class database access over
the Web. It was chosen for research for comparison purposes,
not with any serious thought of actual implementation. |
|
|
Microsoft
Access 2002 (back
to top) |
DBMS
Type: |
Relational
file-based database |
Cost: |
$159 |
Hardware
Requirements: |
Intel
Pentium III or AMD Athlon processor, 136 MB RAM, 285 MB hard
drive space |
Software
Requirements: |
Internet
Explorer 5.0 and one of the following: Windows NT, Windows
2000, Windows XP |
Advantages: |
Easy
to use and administer, requires minimal knowledge of SQL,
imposes relatively light load on CPU, inexpensive, relatively
well-suited for XML. |
Disadvantages: |
Access
databases use a proprietary format mostly incompatible with
SQL, cannot perform point-in-time recovery, cannot log database
activity, slower than other databases, completely inaccessible
to Java-based applications. |
Database
Limitations: |
Database
only runs on Windows, limited to 255 users, limited to 32,768
objects in database, file size limited to 2 GB. |
|
No. |
Reliability: |
The
database file itself is much more stable than the program.
Fortunately, the program doesn't have to run if the file is
accessed through the Web. |
Security: |
Requires
use of workgroup information file to perform user authentication,
this file must be manually updated and redistributed each
time the users change, no transaction logging |
Standards: |
Microsoft
Jet, XML, ODBC, SQL (only if converted to Access Project) |
Source: |
|
Comments: |
Microsoft
Access 2002 is the database most familiar to most users. However,
it is better suited for an individual user or a small office
workgroup than for a Web-based solution. |
|
|
Microsoft
SQL Server 2000 (back
to top) |
DBMS
Type: |
Transactional
relational database server |
Cost: |
$1,489
- $4,999 (Professional Edition) |
Hardware
Requirements: |
Intel
Pentium II or AMD K6-II processor, 64 MB RAM, 380 MB hard
drive space |
Software
Requirements: |
Windows
2000 Server or Windows .NET Server 2003, Internet Explorer
5.0 |
Advantages: |
More
reliable than one might expect from Microsoft, supports enterprise-class
reliability and security features, compatible with many third-party
application servers, can run multiple databases on one server. |
Disadvantages: |
Expensive,
requires a Windows 2000 Server, can be difficult to administer. |
Database
Limitations: |
Limit
of approximately 2 billion objects in database. |
|
Yes. |
Reliability: |
Supports
failover clusters, point-in-time recovery and other enterprise-class
reliability features, can automatically restart itself if
stopped. |
Security: |
User
authentication with option to integrate database security
with Windows 2000 security, transaction logging. |
Standards: |
SQL99,
XML, ODBC, JDBC, T-SQL |
Source: |
|
Comments: |
Sean
is familiar with this software to the point of owning the
Developer Edition of it. The ability to integrate its security
with the host operating system greatly reduces the maintenance
required when logins change. The "pre-alpha" prototype
system will run on the SQL Server on Sean's home computer,
regardless of the DBMS eventually selected. |
|
|
MySQL
AB MySQL 4.0 (back
to top) |
DBMS
Type: |
Relational
database server (Transactional with InnoDB drivers) |
Cost: |
$0
(general public license) or $395 (commercial license) |
Hardware
Requirements: |
Minimum
required for operating system. |
Software
Requirements: |
Win32
or Linux/UNIX-based operating system, MyODBC (for ODBC driver
support), Connector/J (for JDBC driver support) |
Advantages: |
Free,
extensive online documentation, compatible with many different
operating systems |
Disadvantages: |
Not
fully SQL92 complaint (which may cause problems with application
servers that form their own SQL queries), free version offers
no tech support, version 4.0 and the MyODBC, Connector/J and
InnoDB drivers are all in beta testing, cannot lock objects
below the table level, InnoDB offers transactional support
but without ACID compliance, some extensions are not compatible
with the SQL99 standard. |
Database
Limitations: |
Limited
to 32 indexes per table, database size limited to maximum
file size of operating system. |
|
No. |
Reliability: |
Open-source
software, appears to be almost constantly in beta, Connector/J
has a history of reliability issues. |
Security: |
Unknown. |
Standards: |
SQL92
Intermediate, ODBC (requires MyODBC), JDBC (requires Connector/J) |
Source: |
|
Comments: |
It's
free and moderately workable if the database is non-critical. |
|
|
Oracle
9iDB (back
to top) |
DBMS
Type: |
Transactional
relational database server |
Cost: |
$1,500
- $15,000 |
Hardware
Requirements: |
Dedicated
server. |
Software
Requirements: |
One
of the following: Windows 2000 Server, Windows .NET Server
2003, TRU64 UNIX, HP-UX Version 11, Solaris 8, AIX. |
Advantages: |
Industry-standard
DBMS capable of enterprise-level data management, supports
all major database access standards, known for extremely high
reliability and security. |
Disadvantages: |
Licensing
based on named individual persons instead of devices, documentation
difficult to understand. |
Database
Limitations: |
None
known. |
|
Yes. |
Reliability: |
Supports
failover clusters, point-in-time recovery and other enterprise-class
reliability features. |
Security: |
Integrated
user authentication, extensive transaction logging. |
Standards: |
SQL99,
SQL/J, PL/SQL, ODBC, JDBC, XML, J2EE 1.3 |
Source: |
|
Comments: |
Oracle
9iDB is a well-known DBMS that, along with IBM DB2,
sets the standard for enterprise-class database access over
the Web. It was chosen for research for comparison purposes,
although the lower end of its price range is comparable to
Microsoft SQL Server 2000. |
|
|
|