Database management systems vs. file systems?
Database management systems vs. file systems
- DBMS - A computerized record-keeping system
- File System - A collection of individual files accessed by applications programs.
Common limitations of some file system based DBs
- Separated and Isolated Data - Makes coordinating, assimilating and representing data difficult
- Data Duplication - Wastes space and can lead to data integrity (inconsistency) problems
- Application Program Dependencies - Changes to a single file can require changes to numerous application programs
- Incompatible Files
Advantages of a DBMS
- Data Consistency and Integrity - by controlling access and minimizing data duplication
- Application program independence - by storing data in a uniform fashion
- Data Sharing - by controlling access to data items, many users can access data concurrently
- Checkpointing and Recovery
- Security and Privacy
- Multiple views of data
- Expandability, Flexibility, Scalability
- Reduced application development times once the system is in place
- Standards enforcement
- However .....
- Commercial DBMS often have high initial cost
- Many DBMSs have high overhead - require powerful computers
- DBMS are not special purpose software programs
- Performance depends on the application
When is a DBMS not necessarily appropriate?
- Database is small with a simple structure
- Applications are simple, special purpose and relatively static.
- Concurrent, multi-user access to data is not required.
- Need a quick prototype to demonstrate feasibility
- Need an easy way to see the data without having to write a program
- Customers don't want to install a DBMS and want to get online quickly