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.
ACID Compliance:
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.
ACID Compliance:
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.
ACID Compliance:
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.
ACID Compliance:
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.
ACID Compliance:
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.