Classification of Database Management Systems
Classification of Database Management Systems (DBMS)
Introduction to DBMS:
- DBMS facilitates front-end communication with multiple back-end databases.
- Encryption technology enhances the security of sensitive data transfer between clients and servers.
Data Models:
- Relational Model:
- Most prevalent model in commercial DBMSs, based on tables.
- SQL systems utilize this model for data management.
- Object Data Model:
- Less common in commercial use, defines data in terms of objects and their operations.
- Big Data Systems:
- Includes NOSQL and key-value systems using various models:
- Document-based
- Graph-based
- Column-based
- Key-value
- Legacy Models:
- Hierarchical and network models still in use for legacy applications.
- Object-Relational DBMSs:
- Evolution from relational to incorporate object-oriented concepts.
- Native XML DBMS:
- Implements XML as a tree-structured model, allowing for advanced storage options.
User Support:
- Single-User Systems:
- Designed for one user, typically on PCs.
- Multiuser Systems:
- Support concurrent access by multiple users, widely used in DBMSs.
Distribution:
- Centralized DBMS:
- All data stored at one site.
- Distributed DBMS (DDBMS):
- Data distributed across sites.
- Can be Homogeneous (same software across sites) or Heterogeneous (different software).
- Middleware can manage access to autonomous databases in heterogeneous systems.
Cost Considerations:
- Open Source Options:
- MySQL and PostgreSQL are free, supported by third-party vendors.
- Commercial DBMSs:
- Price varies from free trial versions to expensive complex systems costing millions annually.
- Licenses can limit concurrent users or provide site-wide access.
Access paths:
- Inverted File Structures:
- Commonly used structure for DBMSs to enable efficient file storage.
General vs. Special-Purpose DBMS:
- General-Purpose:
- Versatile, used in various applications.
- Special-Purpose:
- Designed for specific tasks, e.g., airline reservations; falls under Online Transaction Processing (OLTP).
Relational Data Model Details:
- Represents data in tables, allows relationships using foreign keys.
- Uses structured queries via SQL; chapters 5–8 cover relational operations.
Object Data Model:
- Defines data as objects within classes, which support methods and properties.
- Hierarchies determine class relationships; discussed further in Chapter 12.
Big Data Models:
- Key-Value Model:
- Associative structure for rapid data retrieval.
- Document Model:
- JSON storage format for flexible data representation.
- Graph Model:
- Represents data as nodes/edges to depict relationships.
- Column-Based Models:
- Organizes data in columns for efficient access.
XML Model:
- Key in data exchange over the internet, using a hierarchical tree structure.
- Integrates database and document representation concepts.
Legacy Data Models:
- Network Model:
- Uses pointers for record relationships; highlighted by the CODASYL DBTG model.
- Hierarchical Model:
- Data structured in trees; dominated DBMS from 1965 to 1985.
This classification provides a comprehensive overview of how DBMSs are structured and categorized, important for database technology understanding and implementation.