A Database Management System (DMS) is a combination of computer software, hardware, and information designed to electronically manipulate data via computer processing. Two types of database management systems are DBMS’s and FMS’s. In simple terms, a File Management System (FMS) is a Database Management System that allows access to single files or tables at a time. FMS’s accommodate flat files that have no relation to other files. The FMS was the predecessor for the Database Management System (DBMS), which allows access to multiple files or tables at a time (see Figure 1 below)
File Management Systems
| Advantages | Disadvantages |
|
Simpler to use |
Typically does not support multi-user access |
|
Less expensive· |
Limited to smaller databases |
|
Fits the needs of many small businesses and home users |
Limited functionality (i.e. no support for complicated transactions, recovery, etc.) |
|
Popular FMS’s are packaged along with the operating systems of personal computers (i.e. Microsoft Cardfile and Microsoft Works) |
Decentralization of data |
|
Good for database solutions for hand held devices such as Palm Pilot |
Redundancy and Integrity issues |
Typically, File Management Systems provide the following advantages and disadvantages:
The goals of a File Management System can be summarized as follows (Calleri, 2001):
- Data Management. An FMS should provide data management services to the application.
- Generality with respect to storage devices. The FMS data abstractions and access methods should remain unchanged irrespective of the devices involved in data storage.
- Validity. An FMS should guarantee that at any given moment the stored data reflect the operations performed on them.
- Protection. Illegal or potentially dangerous operations on the data should be controlled by the FMS.
- Concurrency. In multiprogramming systems, concurrent access to the data should be allowed with minimal differences.
- Performance. Compromise data access speed and data transfer rate with functionality.
From the point of view of an end user (or application) an FMS typically provides the following functionalities (Calleri, 2001):
- File creation, modification and deletion.
- Ownership of files and access control on the basis of ownership permissions.
- Facilities to structure data within files (predefined record formats, etc).
- Facilities for maintaining data redundancies against technical failure (back-ups, disk mirroring, etc.).
- Logical identification and structuring of the data, via file names and hierarchical directory structures.
Database Management Systems
Database Management Systems provide the following advantages and disadvantages:
|
Advantages |
Disadvantages |
|
Greater flexibility |
Difficult to learn |
|
Good for larger databases |
Packaged separately from the operating system (i.e. Oracle, Microsoft Access, Lotus/IBM Approach, Borland Paradox, Claris FileMaker Pro) |
|
Greater processing power |
Slower processing speeds |
|
Fits the needs of many medium to large-sized organizations |
Requires skilled administrators |
|
Storage for all relevant data |
Expensive |
|
Provides user views relevant to tasks performed |
|
|
Ensures data integrity by managing transactions (ACID test = atomicity, consistency, isolation, durability) |
|
|
Supports simultaneous access |
|
|
Enforces design criteria in relation to data format and structure |
|
|
Provides backup and recovery controls |
|
|
Advanced security |
|
The goals of a Database Management System can be summarized as follows (Connelly, Begg, and Strachan, 1999, pps. 54 – 60):
- Data storage, retrieval, and update (while hiding the internal physical implementation details)
- A user-accessible catalog
- Transaction support
- Concurrency control services (multi-user update functionality)
- Recovery services (damaged database must be returned to a consistent state)
- Authorization services (security)
- Support for data communication Integrity services (i.e. constraints)
- Services to promote data independence
- Utility services (i.e. importing, monitoring, performance, record deletion, etc.)
The components to facilitate the goals of a DBMS may include the following:
- Query processor
- Data Manipulation Language preprocessor
- Database manager (software components to include authorization control, command processor, integrity checker, query optimizer, transaction manager, scheduler, recovery manager, and buffer manager)
- Data Definition Language compiler
- File manager
-
Catalog manager
thanks:)
